太阳城集团

  • / 8
  • 下载费用:30 金币  

基于OPENSTACK的大规模虚拟计算动态负载均衡方法.pdf

摘要
申请专利号:

CN201611184430.9

申请日:

2016.12.20

公开号:

CN106775947A

公开日:

2017.05.31

当前法律状态:

实审

有效性:

审中

法律详情: 实质审查的生效IPC(主分类):G06F 9/455申请日:20161220|||公开
IPC分类号: G06F9/455 主分类号: G06F9/455
申请人: 中国电子科技集团公司第三十二研究所
发明人: 陈云松
地址: 200233 上海市嘉定区嘉罗路1485号
优先权: 2016.12.06 CN 2016111118769
专利代理机构: 上海汉声知识产权代理有限公司 31236 代理人: 郭国中
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201611184430.9

授权太阳城集团号:

|||

法律状态太阳城集团日:

2017.06.23|||2017.05.31

法律状态类型:

实质审查的生效|||公开

摘要

太阳城集团本发明提供了一种基于openstack的大规模虚拟计算动态负载均衡方法,其包括以下步骤:步骤一,在每台运行虚拟机的物理服务器openstack计算节点上设置一个监控代理程序,用于获取关键热度指标HKI;步骤二,在openstack计算节点上设置一个主监控程序,用于获取关键热度指标并计算平均值;步骤三,当第一物理服务器的关键热度指标值超过用户设定的值,就将其记录下来并选取关键热度指标最低的那台计算节点作为迁移目的主机;步骤四,迁移程序按照用户设定的策略在第一物理服务器中选取对物理CPU和内存消耗最大的虚拟机,将其迁移至迁移目的主机。本发明的均衡过程透明度高,不需要重启虚拟机也不会影响在虚拟机中的业务程序。

权利要求书

1.一种基于openstack的大规模虚拟计算动态负载均衡方法,其特征在于,其包括以下
步骤:
步骤一,在每台运行虚拟机的物理服务器openstack计算节点上设置一个监控代理程
序,用于获取该物理机的关键热度指标;
步骤二,在openstack计算节点上设置一个主监控程序,定时轮询各计算openstack计
算节点中的监控代理程序,获取关键热度指标并计算出关键热度指标平均值;
步骤三,当主监控程序探测到第一物理服务器的关键热度指标值超过用户设定的值,
就将其记录下来,并选取关键热度指标最低的那台计算节点作为迁移目的主机,然后启动
迁移程序;
步骤四,迁移程序按照用户设定的策略在第一物理服务器中选取对物理CPU和物理内
存消耗最大的虚拟机,使用openstack的动态迁移命令将其迁移至迁移目的主机。
2.根据权利要求1所述的基于openstack的大规模虚拟计算动态负载均衡方法,其特征
在于,所述关键热度指标由CPU和内存的实际使用率计算得出。
3.根据权利要求1所述的基于openstack的大规模虚拟计算动态负载均衡方法,其特征
在于,所述步骤一包括以下步骤:
步骤十一:读取计算节点Linux操作系统的proc、stat文件,采集该文件中九个太阳城集团cpu
太阳城集团片的相关指标,它们分别是user、nice、system、idle、iowait、irq、softirq、
stealstolen、guest;
步骤十二:定时在某个足够短的太阳城集团间隔内,通过步骤十一对cpu太阳城集团片相关指标进行
两次采样,生成间隔内的太阳城集团片统计值;假设把第一次的所有cpu使用情况,即九个cpu相关
指标求和,得到s1;第二次为s2;那么s2减去s1就得到这个太阳城集团间隔内的所有太阳城集团片统计
值,即totalCpuTime;
步骤十三:计算空闲太阳城集团片;idle值为九个cpu相关的太阳城集团片指标中第四个指标,用第
二次的idle值减去第一次的idle值即可得到步骤十二指定的太阳城集团间隔内空闲太阳城集团片的统
计值,计为totalIdle;
步骤十四:通过公式100*(totalCpuTime-totalIdle)/totalCpuTime,导入步骤十二和
步骤十三所得到的totalCpuTime和totalIdle的值即可算出某时刻cpu的使用率,记为
pcpu;
步骤十五:读取计算节点Linux操作系统的proc、meminfo文件,获得内存指标MemTotal
和MemFree;
步骤十六:通过公式100*(MemTotal-MemFree)/MemTotal,导入步骤十五中获得的内存
指标MemTotal和MemFree,得到某个时刻内存的使用率,即为pmem;
步骤十七:将CPU使用率和内存使用率进行叠加,获得该计算节点中关键热度指标HKI:
HKI=pcpu+pmem。

说明书

基于openstack的大规模虚拟计算动态负载均衡方法

技术领域

本发明涉及云计算技术领域,具体地,涉及一种基于openstack的大规模虚拟计算
动态负载均衡方法。

背景技术

OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,
一个开源的云计算管理平台项目,覆盖了网络、虚拟化、操作系统、服务器等各个方面。

虚拟计算在广义上讲是一种以虚拟化、网络、监控等技术的融合为核心的一种计
算体系。在本方案中,单指服务器虚拟化,即将服务器物理资源抽象成逻辑资源,让一台服
务器变成几台甚至上百台相互隔离的虚拟服务器,使我们不再受限于物理上的界限,而是
让CPU、内存、磁盘、I/O等硬件变成可以动态管理的“资源池”,从而提高资源的利用率,简化
系统管理,实现服务器整合,让IT对业务的变化更具适应力。

动态负载均衡泛指在不影响实际业务的情况下,通过提供一种有效的方法扩展服
务器的处理、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。而在本方
案中,主要是通过特定策略或算法,调整虚机的分布情况,实现虚拟服务器动态的处理能力
的平衡。

在计算设备(包括个人计算机、通用服务器、大型主机等)、互联网技术非常普及的
今天,从技术热点上看,云计算无疑是其中最热门的概念之一。云计算服务的主要优势是,
给用户提供弹性计算能力,让一个公司或组织的计算资源得到充分整合,从而实现按需分
配计算资源而提升现有硬件资源的利用率,而且更加方便管理、减低资源管理成本。

随着越来越多的业务从传统平台转移至云计算平台,大量的,新的虚拟机被创建
出来。企业或组织不得不花大力气采购新的设备,用于承载这些新的虚拟机,以支撑更多的
业务。即使是公有云平台,大量的虚拟计算资源也出现了过载的情况,如果客户的增多导致
业务处理量超出了服务器能承受的范围,那么其结果必然是――宕机。

为了解决这一问题,国内外许多公司和学术机构都对此进行了研究和改进,但效
果并不理想。其中,与本发明最接近的技术方法如下:

一、基于负载均衡器的云计算数据中心的管理系统和管理方法(专利号:
CN105159775A):设计一个包括弹性节点池集群、负载均衡器集群和管理装置的管理系统。
其中,弹性节点池集群包括若干个弹性节点池,每个弹性节点池包括若干个虚拟机,虚拟机
用于通过虚拟IP对外提供服务;负载均衡器集群包括若干个负载均衡器,每个负载均衡器
与设定数量的弹性节点池连接,用于为所连接的每个弹性节点池提供负载均衡服务;管理
装置用于管理负载均衡器和弹性节点池,根据每个弹性节点池的负载状况,采用预设的负
载均衡策略动态调整所述弹性节点池中虚拟机的数量。该方法只能解决虚拟机的访问负载
问题,并不能解决虚拟机对物理资源的消耗负载问题。

二、一种用于云计算环境下的负载均衡方法(专利号:CN104917839A):该方法从超
载的虚拟机上移走一些任务,并为其寻找另外的合适的虚拟机。在根据任务优先级QoS标准
在多个虚拟机中选择最好的虚拟机,即在虚拟机的任务中只有很少一部分任务的优先级与
该任务的优先级相同。这个过程称为多个任务为了虚拟机而进行的竞争,当该竞争结束后,
获胜的任务被分配给其找到的合适的虚拟机的详细太阳城集团进行更新。该方法将虚拟机中的业
务人为地划分成了多个任务,并且人为地界定其优先级,这样的设计方法对整个系统来说
是不透明的,这既增加了管理的难度,又给系统带来了安全风险。

虚拟化是云计算体系的核心,本质上是解决物理资源过剩的问题。但是,随着云计
算数据中心规模的不断扩大,用户的业务量也不断增加,而租户虚拟机,作为最基本的计算
单元,其业务的均衡性却愈来愈受到挑战。

为了应对这种挑战,出现了很多解决方案,其中最典型的是openstack在Grizzly
版本就集成到Neutron中的负载均衡(Load Balance)模块。它作为OpenStack Neutron项目
的高级服务之一,能够均衡的将所收到的网络流量分配给指定的虚拟机集合,从而达到更
高效的使用系统资源的目的。目前大多数负载均衡器的原理都与之类似,在云计算体系中
称之为LBaaS。这种典型的负载均衡器最大的特点是从网络访问中入手,通过分流的方式将
业务分散到各个虚拟机中。这样的方式最大的不足就在于没有解决全局的负载均衡问题,
也就是说在整个云平台环境中,这样的方式只能将业务分流至相同业务处理的虚拟机中,
并没有做到全局的负载均衡。另外,很多虚拟机的业务是聚焦CPU或内存的,在没有任何网
络访问时,也会消耗资源,因此对于这样的虚机,传统的负载均衡方法起不到任何作用。

随着越来越多的业务从传统平台转移至云计算平台,大量的,新的虚拟机被创建
出来。企业或组织不得不花大力气采购新的设备,用于承载这些新的虚拟机,以支撑更多的
业务。然而,由于租户业务存在“断-续”这一特点,即业务不会长太阳城集团地使用CPU等物理资
源,因此盲目扩展物理资源虽可以满足一时的业务需求,但长期而言会导致大量的资源浪
费。

为了解决这一问题,本方法提出一种基于openstack的大规模虚拟计算动态负载
均衡方法。在云平台的控制节点设计一个负载均衡监控器,对该控制节点所管辖的若干计
算节点进行监控。如果某台计算节点CPU持续处于繁忙状态,并且其内存持续吃紧,就启动
迁移动作,将该节点上最耗资源的一台虚拟机通过openstack的nova命令迁移到另一台相
对空闲的计算节点上。整个过程对用户透明,不需要重启虚拟机,更不会影响租户在虚拟机
中的任何业务程序。

发明内容

针对现有技术中的缺陷,本发明的目的是提供一种基于openstack的大规模虚拟
计算动态负载均衡方法,其整个均衡过程透明度高,不需要重启虚拟机也不会影响在虚拟
机中的业务程序,可以达到高效地使用系统资源的目的。

根据本发明的一个方面,提供一种基于openstack的大规模虚拟计算动态负载均
衡方法,其特征在于,其包括以下步骤:

步骤一,在每台运行虚拟机的物理服务器openstack计算节点上设置一个监控代
理程序,用于获取该物理机的关键热度指标HKI;

步骤二,在openstack计算节点上设置一个主监控程序,定时轮询各计算
openstack计算节点中的监控代理程序,获取关键热度指标并计算出关键热度指标平均值;

步骤三,当主监控程序探测到第一物理服务器的关键热度指标值超过用户设定的
值,就将其记录下来,并选取关键热度指标最低的那台计算节点作为迁移目的主机,然后启
动迁移程序;

步骤四,迁移程序按照用户设定的策略在第一物理服务器中选取对物理CPU和物
理内存消耗最大的虚拟机,使用openstack的动态迁移命令将其迁移至迁移目的主机。

优选地,所述关键热度指标关键热度指标由CPU和内存的实际使用率计算得出,其
值越高,说明该计算节点的负载越大。

优选地,所述步骤一包括以下步骤:

步骤十一:读取计算节点Linux操作系统的proc、stat文件,采集该文件中九个关
于cpu太阳城集团片的相关指标,它们分别是user、nice、system、idle、iowait、irq、softirq、
stealstolen、guest;

步骤十二:定时在某个足够短的太阳城集团间隔内,通过步骤十一对cpu太阳城集团片相关指标
进行两次采样,生成间隔内的太阳城集团片统计值;假设把第一次的所有cpu使用情况,即九个cpu
相关指标求和,得到s1;第二次为s2;那么s2减去s1就得到这个太阳城集团间隔内的所有太阳城集团片统
计值,即totalCpuTime;

步骤十三:计算空闲太阳城集团片;idle值为九个cpu相关的太阳城集团片指标中第四个指标,
用第二次的idle值减去第一次的idle值即可得到步骤十二指定的太阳城集团间隔内空闲太阳城集团片
的统计值,计为totalIdle;

步骤十四:通过公式100*(totalCpuTime-totalIdle)/totalCpuTime,导入步骤十
二和步骤十三所得到的totalCpuTime和totalIdle的值即可算出某时刻cpu的使用率,记为
pcpu;

步骤十五:读取计算节点Linux操作系统的proc、meminfo文件,获得内存指标
MemTotal和MemFree;

步骤十六:通过公式100*(MemTotal-MemFree)/MemTotal,导入步骤十五中获得的
内存指标MemTotal和MemFree,得到某个时刻内存的使用率,即为pmem;

步骤十七:将CPU使用率和内存使用率进行叠加,即可获得该计算节点中关键热度
指标HKI:HKI=pcpu+pmem。

与现有技术相比,本发明具有如下的有益效果:本发明整个均衡过程透明度高,不
需要重启虚拟机也不会影响在虚拟机中的业务程序,可以达到高效地使用系统资源的目
的。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、
目的和优点将会变得更明显:

图1为本发明的动态负载均衡原理图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术
人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术
人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明
的保护范围。

如图1所示,本发明基于openstack的大规模虚拟计算动态负载均衡方法包括以下
步骤:

步骤一,在每台运行虚拟机的物理服务器openstack计算节点上设置一个监控代
理程序,用于获取该物理机的关键热度指标(Key Heat Indicator,KHI);

步骤二,在openstack计算节点上设置一个主监控程序,定时轮询各计算
openstack计算节点中的监控代理程序,获取关键热度指标并计算出关键热度指标平均值;

步骤三,当主监控程序探测到第一物理服务器1的关键热度指标值超过用户设定
的值,就将其记录下来,并选取关键热度指标最低的那台计算节点作为迁移目的主机2,然
后启动迁移程序;

步骤四,迁移程序按照用户设定的策略在第一物理服务器1中选取对物理CPU和物
理内存消耗最大的虚拟机11,使用openstack的nova live-migration(动态迁移)命令将其
迁移至迁移目的主机2。

所述关键热度指标由CPU(中央处理器)和内存的实际使用率计算得出,其值越高,
说明该计算节点的负载越大,这样有利于提高准确度。

所述步骤一包括以下步骤:

步骤十一:读取计算节点Linux操作系统的proc、stat文件,采集该文件中九个关
于cpu太阳城集团片的相关指标,它们分别是user、nice、system、idle、iowait、irq、softirq、
stealstolen、guest;

步骤十二:定时在某个足够短的太阳城集团间隔内,通过步骤十一对cpu太阳城集团片相关指标
进行两次采样,生成间隔内的太阳城集团片统计值;假设把第一次的所有cpu使用情况,即九个cpu
相关指标求和,得到s1;第二次为s2;那么s2减去s1就得到这个太阳城集团间隔内的所有太阳城集团片统
计值,即totalCpuTime;

步骤十三:计算空闲太阳城集团片;idle值为九个cpu相关的太阳城集团片指标中第四个指标,
用第二次的idle值减去第一次的idle值即可得到步骤十二指定的太阳城集团间隔内空闲太阳城集团片
的统计值,计为totalIdle;

步骤十四:通过公式100*(totalCpuTime-totalIdle)/totalCpuTime,导入步骤十
二和步骤十三所得到的totalCpuTime和totalIdle的值即可算出某时刻cpu的使用率,记为
pcpu;

步骤十五:读取计算节点Linux操作系统的proc、meminfo文件,获得内存指标
MemTotal和MemFree;

步骤十六:通过公式100*(MemTotal-MemFree)/MemTotal,导入步骤十五中获得的
内存指标MemTotal和MemFree,得到某个时刻内存的使用率,即为pmem;

步骤十七:将CPU使用率和内存使用率进行叠加,即可获得该计算节点中关键热度
指标HKI:HKI=pcpu+pmem。

用户的openstack云计算平台拥有1台控制节点,6台计算节点,每台计算节点上运
行了数十台虚拟机。用户设置关键热度指标如下:CPU(中央处理器)利用率*100%+MEM(内
存)利用率*100%。用户设置策略为:每一个小时轮询一次计算节点,当某台关键热度指标
的值大于等于平均值的150%就执行负载均衡操作。

当某一时刻,监控程序探测到关键热度指标列表如下表1:

表1





很明显,计算节点PM1的关键热度指标的值大于等于平均值的150%,需要执行迁
移程序。于是根据用户设置的迁移策略,即在PM1中选取CPU和内存使用率最大的虚拟机,执
行nova live-migration操作,将其迁移至负载排名最低的计算节点PM5中。至此,整个负载
均衡过程完成。本发明的核心是通过监控系统,探测出CPU和内存过载的物理机,将其中最
繁忙的虚拟机通过openstack的nova命令迁移到另一台相对空闲的计算节点上。本发明是
基于目前最成熟,最稳定,使用最为广泛的openstack云平台,通过监控、探测、动态迁移等
一系列措施,使一个云平台系统的物理资源达到相对均衡、稳定的状态。

本发明在云平台的控制节点设计一个负载均衡监控器,对该控制节点所管辖的若
干计算节点进行监控。如果某台计算节点CPU持续处于繁忙状态,并且其内存持续吃紧,就
启动迁移动作,将该节点上最耗资源的一台虚拟机通过openstack的nova命令迁移到另一
台相对空闲的计算节点上。整个过程对用户透明,不需要重启虚拟机,更不会影响租户在虚
拟机中的任何业务程序。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述
特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影
响本发明的实质内容。

关 键 词:
基于 OPENSTACK 大规模 虚拟 计算 动态 负载 均衡 方法
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
太阳城集团本文
本文标题:基于OPENSTACK的大规模虚拟计算动态负载均衡方法.pdf
链接地址:http://zh228.com/p-6019532.html
太阳城集团我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
葡京赌场|welcome document.write ('');