关键字 |
VMM(虚拟机监视器)、APM(常用物理机)、LNM(本地节点管理器)、IDV(智能桌面虚拟化)、SLA(服务水平协议)、EC(弹性计算) |
介绍 |
灵活性和缺乏资本投资吸引了商界的很大一部分人。该系统是一种利用虚拟化概念进行动态资源分配的新方法。该系统采用虚拟化技术,将虚拟资源多路复用到物理硬件上。我们的系统由五个模块组成,完成了检查每台物理机器的使用情况和维护绿色计算的主要任务。在该系统中,我们引入了偏度和热点缓解的概念。处于热点中的机器将自动被移除,以使系统尽可能绿色。[1] [2] [3] |
我们在这里实现的方法是一种新颖的方法,它根据用户的高级会员资格来决定资源分配。这意味着我们正在使用基于成本的优先级方法进行动态资源分配。绿色计算是独一无二的,因为使用的pm数量应该减少,只要它们仍然能够说服系统上运行的所有虚拟机的需求。不工作的pm可以关闭以节省能源。通过优化正在使用的pm数量,简单地在云环境中获得更好的性能。绿色计算领域也变得越来越重要,在一个世界的部分能源资源和不断增长的要求更多的计算能力。本文介绍了绿色云环境下自动化动态资源分配系统的设计与实现。我们提出的系统提供了偏度和绿色计算之间的权衡。 |
我们实现了以下内容。 |
•我们开发了一个动态资源分配系统,有效地限制了过载系统,从而最大限度地减少了物理机器的使用数量 |
•我们引入了偏度的概念,用来衡量物理机器使用的不均匀性。通过最小化偏度,我们提高了系统的性能 |
本文的其余部分分为以下几个部分。第二部分是系统的描述,第三部分是偏度算法的概念,第四部分是热点缓解,第五部分是绿色计算的描述。 |
相关工作 |
Christopher Clark[4]提出了漂移操作系统运行动态约束服务的预期选项,重点关注数据中心和集群环境。他们还提出并分析了可写工作集的概念,并提出了构建在Xen VMM之上的OS迁移的猛增性能的蓝图、实现和评估。他们还研究了虚拟化带来的另一个好处:实时操作系统迁移。将整个操作系统及其所有应用程序作为一个单元进行迁移,使我们避免了进程级迁移方法所面临的许多困难。特别是,虚拟操作系统和虚拟机监视器(VMM)之间的窄接口可以很容易地避免剩余依赖关系问题[5],在这种依赖关系中,原始主机必须保持可用性和网络可访问性,以便为迁移的进程传输某些系统调用甚至内存访问。Michael Nelson[6]提出了一个系统的设计和实现,该系统利用虚拟机技术提供快速、透明的应用程序迁移。 |
Carl a . Waldspurgeret[7]提出了许多新的ESX服务器机制和策略来管理内存。他们提出的方法之一是膨胀方法,这种方法可以恢复虚拟机中操作系统所认为的最小有价值的页面。其次,空闲内存税方法在保持性能分离保证的同时获得了良好的内存利用率。最后,基于内容的页面共享和热I/O页面重映射方法利用了透明页面重映射来消除冗余并减少复制开销。这四种方法结合起来可以有效地维护占用内存的虚拟机工作负载。Norman Bobroffet引入了一个强有力的服务器迁移、整合算法,并提出了管理SLA违规的虚拟机动态分配[8]。与固定服务器整合相比,上述指定算法在减少强制容量数量和服务水平协议违反率方面得到了显著增强。贪婪资源分配算法已由Jeffrey S. Chaseet.al在[9]中修改。他们提出的系统是基于一种管理共享服务器资源的货币方法,在这种方法中,服务作为分布式性能的函数“投标”资源。系统通常通过评估负载对业务性能的影响来监控负载和规划资源分配。 |
如来佛Daset。al提出了一个系统[10],通过将用户的桌面计算情况虚拟化为虚拟机(VM),然后根据桌面计算情况是被积极使用还是空闲,在用户的物理桌面机和VM服务器之间迁移,从而节省桌面能源。因此,用户的桌面环境“始终处于开启状态”,即使用户的物理桌面设备被关闭,也能完全保持网络状态,从而节省了能源。yuvrajagarwallet .al解释了睡眠服务器[11]的结构设计和实现,该系统使主机能够切换到这种低功耗的睡眠状态,同时仍然使用指定的代理服务器保持其应用程序的假定网络状态。NiltonBilaet。al提出了一种部分虚拟机迁移技术[12],它只透明地迁移空闲虚拟机的工作集。部分VM迁移原型可以提供完全VM重新安置的85%到104%的节能,同时使用不到10%的网络资源,并且提供的迁移延迟要小两到三个数量级。超级计算机足够强大,可以使用虚拟化来呈现许多小型虚拟机(vm)的错觉,每个虚拟机都运行一个单独的操作系统示例。在[3]中,作者提出了一个名为Xen hypervisor (116 VMM)的VMM,它允许多种商用操作系统以安全和资源管理的方式共享传统硬件,但不会影响性能或功能。这是通过提供一个理想的虚拟机来实现的,Linux、BSD (Berkeley Socket Distribution)和Windows XP等操作系统可以轻松地移植到这个虚拟机上。系统结构设计如图1所示。 Each PM runs the Xen hypervisor (VMM) which wires a privileged domain 0 and one or more domain U. Virtualization of computing resources has been an increasingly regular practice in recent years, specifically in data centre environments. This has helped in the rise of cloud computing, where data centre machinists can over-subscribe their physical servers through the use of virtual machines in order to enlarge the return on investment for their infrastructure. Overload evasion and Green computing parameters are playing chief of better resource allocation over green cloud background. There is an intrinsic trade-off between the two goals in the face of shifting resource needs of VMs. For overload evasion, we should keep the utilization of PMs low to reduce the possibility of overload in case the resource needs of VMs increase later. For green computing, we should keep the utilization of PMs reasonably high to make efficient use of their energy [13]. |
提出了系统 |
A.设计考虑: |
系统的体系结构如图1所示。每个物理机运行一个Xen Hypervisor(VMM),它由Dom 0(Usher LNM,MM alloter),Dom U(Web PM)[3]组成。VM到PM的复用采用Usher框架进行管理。每个节点都运行一个运行在domain 0上的Usher本地节点管理器。该节点的主要任务是收集该虚拟机的所有资源使用统计信息。虚拟机内存使用情况对用户不可见。每个虚拟机的大小或容量由WS探针[9]决定。在每个节点上收集的资源使用统计信息被转发到VM调度器运行的Usher中央控制器(Usher CTRL)。调度程序运行几个组件,如预测器、热点求解器、冷点求解器和迁移列表。VM调度器中的热点求解器检测任何PM的资源利用率是否高于热阈值(即热点)。如果是,则系统上的部分虚拟机将从列表中迁移。 The cold spot solver checks the overall temperature of the Physical Machines is below thethreshold valueto ensure green. If some of the PMs above the threshold value then they could potentially be turned off to save energy. It help in identifying set of PMs whose utilization is below the cold threshold (i.e., cold spots) and then attempts to migrate away all their VMs. It then compiles and collect a migration list of VMs and passes it to the Usher CTRL for further execution. |
早期基于优先级的资源分配未能兼顾相位过载避免和绿色计算。我们在云媒体的资源分配阶段做了一些小的改变,我们的补充人员一直只关注基于成本的资源分配。资源分配用于根据高级会员资格分配可用资源。尽管要关注“基于优先级的动态资源分配和热点缓解”。这是绿色云计算环境的一种新方法。基于成本的资源分配不需要使用基于价值的资源分配策略所必需的详细分析和价值度量。我们基于成本的资源分配算法在云计算上的新颖方法不会影响绿色环境。 |
B.偏度算法 |
我们引入了偏度的概念来衡量物理机器上多个资源利用的不均匀性。设n为我们考虑的资源数量,r我是I的利用率th资源。我们定义一个PM p的偏度为: |
|
其中r是PM p的所有资源的平均利用率。在实践中,并不是所有类型的资源都是性能关键的,因此我们在上面的计算中只需要考虑关键资源。通过减少偏度,可以很好地组合不同类型的作业,提高项目管理资源的整体利用率。 |
C.检测热点和冷点 |
我们的算法周期性地执行,基于对虚拟机未来资源需求的预测来评估资源分配状态。如果PM的任何资源利用率高于热阈值,我们将其定义为热点。这表明PM负载过重,因此应该迁移一些运行在PM上的虚拟机。热点温度p定义为热点资源利用率超过热阈值的平方和。 |
|
其中R是PM p和R中重载资源的集合??是资源r的热阈值(我们只考虑重载资源进行计算)。热点的温度反映了PM的过载程度。如果一个PM不是一个热点,它的温度是零。 |
如果PM的所有资源利用率低于冷阈值,我们将其定义为冷点。这表明,PM大多是空闲的,容易被关闭,以节省能源。但是,只有当系统中所有积极使用的PM(即apm)的平均资源利用率低于绿色计算阈值时,才能实现这一点。如果一个PM至少有一个VM在运行,那么它就被积极地使用了。 |
否则,PM将被视为不活跃的。不同类型的资源具有不同的阈值。例如,让我们将CPU和内存资源的热阈值分别定义为90%和80%。因此,如果一个PM的CPU使用率高于90%或内存使用率高于80%,那么它就是一个热点。 |
D.缓解热点和冷点 |
我们按温度升序排列系统中的热点列表。我们的目标是尽可能消除所有热点。对于每个PM p,我们首先决定应该迁移它的哪些vm。我们根据PM的结果温度对虚拟机进行排序,这样温度高的虚拟机就会被移走。我们的目标是去除能够最大程度提高PM温度的VM。如果两个VM具有相同的温度,则选择移除能够最大程度降低PM偏度的VM。 |
对于列表中的每个VM,我们搜索是否可以找到一个目标PM来容纳它。PM在接受该VM后不能成为热点。在所有这样的PM中,我们选择一个通过接受这个VM可以最大程度地降低偏度的PM。 |
E.绿色计算 |
当活动物理机的资源利用率过低时,必须关闭某些机器以节省能源。这个概念在我们的绿色云计算算法中实现。这里的主要任务是在低负载期间减少活动pm的数量,同时不影响现在或将来的性能。 |
当活动pm上所有资源的平均利用率低于绿色计算阈值时,将调用我们的绿色计算算法。我们根据冷点内存大小的升序排列系统中的冷点列表。 |
由于在关闭未充分利用的PM之前,我们需要迁移其所有vm,因此我们将冷点的内存大小定义为在其上运行的所有vm的内存大小的总和。请记住,我们提出的系统假设连接到共享后端数据存储的所有虚拟机。 |
对于冷点p,我们检查是否可以将它所有的vm移到其他地方。对于p上的每个VM,我们尝试搜索一个目标PM来容纳它。PM接受虚拟机后的资源利用率必须低于warm阈值。虽然我们可以通过合并未充分利用的PM来节省能源,但PM过载会产生问题,因此实现了暖阈值来解决这个问题。 |
如果多个pm低于温暖阈值并满足上述标准,我们更喜欢当前不是冷点的pm。这是因为当我们增加冷点上的负荷时,就减少了它被消除的机会。此外,如果需要,我们将接受一个冷点作为最终目标服务器。现在一切都是一样的,我们选择一个目标服务器,它的偏度可以通过接受这个VM来最大程度地降低。如果我们可以在目标服务器上搜索冷点上的所有虚拟机,我们就可以收集迁移的顺序。绿色计算仅在系统负载较低时启动。 |
调度算法的伪代码概念 |
A.调度算法 |
在这个系统中,我们首先创建物理机器,然后分配用户想要运行的作业数量。当作业决定后,我们根据它们的优先级(基于成本)将资源分配给主机。在工作分配成功后,我们寻找热点,并从进一步的资源分配周期中减轻它们,这意味着处于热点的PM将不会参与进一步的即将到来的周期。系统的算法如下。 |
算法: |
开始: |
根据成本值计算和分配每个请求的优先级,并为每个服务分配资源 |
步骤1:[生成用户数据,即user Id, user Name, Host Name, E-mail, Phone No, Membership Duration]将所有值插入数据库表中。 |
步骤2:[生成物理机器]物理机器生成的机器ID,机器名称和容量。 |
步骤3:[生成随机客户端请求]根据PM编号的容量。为包含工作ID,类别,大小,持续时间的任务创建工作表。 |
步骤4:[动态资源分配]根据基于成本的优先级资源分配。资源分配包含三个表资源分配表、偏度表和总温度表。 |
•if (skewness (machine_id)>基本值) |
[据说机器的使用取决于斜度超过基准值的多少] |
其他的 |
[机器未被使用] |
•if (temperature(machine_id)>阈值) |
[机器处于热点] |
其他的 |
【机器处于冷区】 |
第五步:【绿色计算】处于HOT SPOT的机器将在下一阶段的资源分配中被淘汰。 |
如果(机器处于热点) |
【违反绿色计算规范,大量碳排放导致机器冷却被淘汰】 |
其他的 |
[机器在下一个资源分配周期仍然可用] |
结束 |
仿真与结果分析 |
我们使用c#来构建我们的模拟器,它由7个不同的模块来实现任务。这7个不同的模块如下 |
•物理机器的创建 |
•资源分配 |
•用户创建 |
•删除用户 |
•热点冷点检测绿色计算 |
A.创建物理机器 |
物理机器包含虚拟机调度器,USHER资源分配框架。这取决于程序员或服务提供者想要创建多少台机器。包含物理机描述的表格包含三列:Machine ID、Machine Name和Capacity。容量决定了并行执行中每个物理机可以处理多少请求。 |
B.生成随机客户端请求 |
最大数目。可以在给定时间生成的客户端请求的数量,这取决于创建的物理机器的数量。在这个执行过程中,我们可以在不同的pm为不同的资源分配140个任务。创建的表由4列和140行组成。下一页显示的140行中的一些。 |
C.资源分配 |
在资源分配阶段,通过LNM (Local Node Manager)和VM Scheduler将资源分配到不同的物理机器上。由于LNM负责访问资源,VM调度器负责缓解热点并恢复绿色计算的概念。在资源分配阶段,我们得到三个表: |
•资源分配表 |
•全偏度 |
•整体温度 |
1)资源分配表 |
资源分配表如表三所示 |
该表由六个不同的列组成: |
•PM名称:这一列给出物理机器的详细信息 |
Process Server:分配资源给不同PM的服务器 |
•Host ID/Host:生成请求的主机ID |
用户:处理请求时用户的网站地址 |
•温度(用于绿色计算):机器的温度,给出初始温度。假设初始值为0.05 |
•偏度:测量PM使用的不均匀性。 |
2)所有温度 |
该表由PM和Temperature两列组成。正在显示的温度显示执行后的最终温度。 |
在下一个周期中,所有处于热点的PM将被移除,这意味着他们将不再参与进一步的资源分配。 |
3)全部偏度: |
该表显示了PM的利用率。与正常负载的机器相比,一些过载的机器具有非常高的偏态因子 |
4)检测热点和冷点 |
在第一个周期资源分配成功后,一些机器由于过热而进入Hot Spot,它们被从下一个周期资源分配的列表中删除。表VI显示了处于冷阈值和处于热阈值的机器名称。 |
在这个表中,前四台机器处于冷阈值,接下来的机器处于热阈值。因此,这些机器将从下一阶段的执行中进一步移除。 |
E.绿色计算 |
在本节中,我们试图找出在热点的机器所花费的时间。这一步将有助于保护绿色计算,因为我们将了解这些机器有多少过载。 |
F.删除用户 |
最后一个模块是用户删除,在这个模块中,我们删除那些不再参与后续执行的用户。只删除那些不需要更多资源进行进一步执行的用户。用户删除表单包含用户ID,用户名,主机,电子邮件ID,电话号码,会员资格和金额。电话号码和电子邮件ID是非常重要的删除。用户Id一旦分配给一个用户,即使用户Id被删除,也不会分配给其他任何人。 |
第二阶段执行 |
A.可用机器: |
此部分显示了第一个执行周期之后可用的计算机列表。由于第一个用户比第二个用户拥有更好的高级会员资格,这就是为什么在下一个周期中有第一个用户的机器。然后使用可用的机器为用户分配资源,在分配成功后,我们再次看到有多少机器在热点,有多少机器在冷点。然后再次单击“查看可用机器”链接,以检查有多少机器可用。系统检查是否有足够的机器进行资源分配,然后开始下一个周期的资源分配,否则系统告诉我们重新开始这个过程。 |
B.可用机器资源分配: |
本节展示了第二个动态资源分配周期后的资源分配表、偏度表和温度表。表No Viii显示了资源是如何使用进程服务器动态分配给不同的Pm的,它还显示了执行时的温度。初始偏度为1,表示在开始执行时,所有4台机器都被均匀利用。 |
C.第二期偏度表: |
倾斜表显示了下午4点成功分配所有作业后4台机器的利用率。下表显示机器4被大量利用,这导致它处于热点。 |
D.第二期温度表: |
该表显示了哪些机器处于热点,哪些处于冷点。温度大于0.5的机器处于热点,不允许进一步执行。 |
当所有作业都成功分配,并且没有足够的机器用于下一个资源分配周期时,我们必须再次启动系统。 |
结论及未来改进 |
我们提出的系统是一种基于成本优先级的动态资源分配的新方法。在这个系统中,我们实现了测量物理机器的偏度、热点和冷点的模块。我们还试图实现绿色计算的概念,省略那些热点系统,进一步循环资源分配。 |
绿色计算是一个新的概念,我们正在云环境中实施。为了实现这一目标,已经使用了前面讨论过的一些算法。在未来,我们可以实现负载预测模块,它将对机器上即将到来的负载进行分析和预测,并据此做出决策。这将有助于避免PM过热,他们也不会进入热点。 |
|
表格一览 |
|
|
|
|
|
表1 |
表2 |
表3 |
表4 |
表5 |
|
|
|
|
|
表6 |
表7 |
表8 |
表9 |
表10 |
|
|
数字一览 |
|
图1 |
|
|
参考文献 |
- 巴勒P。, Dragovic B。弗雷泽,K。,Hand,S.,Harris,T., Ho, A., Neugebauer,R., Pratt,I., and Warfield,A., “Xen and the art of virtualization,” in Proc. of the ACM Symposium on Operating Systems Principles (SOSP’03), Oct. 2003
- “亚马逊弹性计算云(亚马逊EC2), http://aws.amazon.com/ec2/。”
- 迪克西特,R。,Buyan,P.,Dubey,V., “Priority Based Dynamic Resource Allocation for Green Cloud Environment: A Survey” International Journal of Engineering and Management Research (IJEMR) – volume 4 Issue 4, August- 2014.
- 克拉克,C。,Fraser,K., Hand, S., Hansen, J.,G., Jul, E., Limpach,C.,Pratt, I.and Warfield, A.“Live migration of virtual machines,” in Proc.of the Symposium on Networked Systems Design and Implementation(NSDI’05), May 2005.
- Milojicic D。Douglis F。,Paindaveine,Y., Wheeler,R. and Zhou,S. Process migration. ACM Computing Surveys, 32(3):241-299, 2000.
- Nelson.M Lim, B。,H。和哈钦斯,G。“虚拟机的快速透明迁移”,摘自2005年USENIX年度技术会议论文集。
- Waldspurger, c.a“VMware ESXserver中的内存资源管理”,2002年8月,操作系统设计与实现(OSDI’02)研讨会论文集
- Bobroff表示,N。,Kochut,A., and Beaty, K.“Dynamic placement of virtual machines for managing sla violations,” in Proc. of the IFIP/IEEEInternational Symposium on Integrated Network Management (IM’07), 2007.
- 追逐,j.s,Anderson, D.C.,Thakar, P.N., Vahdat,A.M. and Doyle, R.P. “Managing energy and server resources in hosting centers,” in Proc. Of the ACM Symposium on Operating System Principles (SOSP’01), Oct.2001.
- Das, T。,Padala,P., Padmanabhan,V.N.,Ramjee,R. and Shin,K.G. “Litegreen: saving energy in networked desktops using virtualization,”in Proc. of the USENIX Annual Technical Conference, 2010.
- 阿加瓦尔,Y。,Savage, S.andGupta,R. “Sleepserver: a software-only approach for reducing the energy consumption of pcs within enterprise environments,” in Proc. of the USENIX Annual Technical Conference,2010.
- Bila, N。,Lara, E.D., Joshi,K., Lagar-Cavilla, H.A., Hiltunen, M. and Satyanarayanan,M. “Jettison: Efficient idle desktop consolidation with partial vm migration,” in Proc. of the ACM European conference on Computer systems (EuroSys’12), 2012.
- 肖,Z,宋,W。和陈,问。“云计算环境下虚拟机的动态资源分配”,《计算机工程学报》,2013年第24卷。
|