CN104917839A - 一种用于云计算环境下的负载均衡方法 - Google Patents
一种用于云计算环境下的负载均衡方法 Download PDFInfo
- Publication number
- CN104917839A CN104917839A CN201510321803.1A CN201510321803A CN104917839A CN 104917839 A CN104917839 A CN 104917839A CN 201510321803 A CN201510321803 A CN 201510321803A CN 104917839 A CN104917839 A CN 104917839A
- Authority
- CN
- China
- Prior art keywords
- task
- virtual machine
- load
- tasks
- priority
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1017—Server selection for load balancing based on a round robin mechanism
Abstract
本发明提供一种用于云计算环境下的负载均衡方法,涉及云计算环境下的任务调度领域,从超载的虚拟机上移走的任务需要寻找合适的虚拟机,在根据任务优先级QoS标准在多个虚拟机中选择最好的虚拟机,即在虚拟机的任务中只有很少一部分任务的优先级与该任务的优先级相同。这个过程称为多个任务为了虚拟机而进行的竞争,当该竞争结束后,获胜的任务被分配给其找到的合适的虚拟机的详细信息进行更新。不仅可以平衡负载,还能为迁移任务分配优先级。基于蜜蜂行为的负载均衡技术通过将平衡重点放在减少VM等待序列中人物的等待时间来提高处理过程的整理吞吐量和优先级,因此减少了VM的响应时间。
Description
技术领域
本发明涉及云计算环境下的任务调度领域,尤其涉及一种用于云计算环境下的负载均衡方法。
背景技术
云计算作为一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池,这些资源能够被快速提供,只需投入很少的管理工具,或与供应商进行很少的交互。在此前提下,如何对用户所占资源生成的任务进行调度,是任务调度程序完成快速响应,合理利用资源的关键。
云计算下的处理单元是虚拟机,以并行方式运行,为充分应用现有资源,调度程序应对其进行有效调度,并且确保负载在所有的虚拟机上都能被很好的均衡。负载均衡的主要目标是缩短应用对资源的处理时间,这些资源在负载均衡过程中会以不可预期的方式进行变化。
云计算根据来自用户和系统的不同需求,根据一个线上虚拟机的动态资源库对指定的计算任务进行处理。用户在使用各种应用时发出的服务请求会被数据中心路由到云中的任何终端服务器。到达各个服务器的服务请求的路由是基于云信息准则选取的,而云信息准则根据各个服务器的负载及相近的服务器指定。在非抢占系统中,两个常用的调度准则是先入先出和加权轮询准则。在每个虚拟机的不同负载级别上,这两个准则都可能终止,因此,并行计算时每个虚拟机的负载不同,导致响应时间和资源消耗增加。
现有的几种调度算法,负载均衡树算法将所有的负载当成一个固定的量来处理,对于动态的负载均衡无法很好调节;分布式负载均衡的最优数据迁移算法通过传送权重欧式形式的拉格朗日乘子实现该功能,对于异构环境没有很好的性能;线性规划算法通过优化计算和数据分布,增加MPL_Scatterv基元支撑主从均衡,但是仅适用于静态负载均衡情况;基于预测的弹性负载均衡算法,需要根据以前的状态和完成时间来选取资源;基于网格计算的任务调度均衡算法首先为局部平衡分配权限,接着对较高层次进行平衡,但是没有很好的处理请求之间的关系,不利于负载平衡的资源局部密集;综上可知,许多传统的负载均衡算法通常能够较好的保证资源利用率,然而,提交任务是却需要较多的响应时间,任务传输过程中需要较多的通信成本。
发明内容
为了解决该问题,本发明根据蜜蜂觅食行文模型提出的一种面向云计算环境的负载均衡技术,不仅可以平衡负载,还能为迁移任务分配优先级。基于蜜蜂行为的负载均衡技术通过将平衡重点放在减少VM等待序列中人物的等待时间来提高处理过程的整理吞吐量和优先级,因此减少了VM的响应时间。
研究内容
a)研究目的
本专利主要是为了减少任务提交的平均响应时间和任务传输过程中的通信成本,提出的一种基于蜜蜂觅食行为的负载均衡算法。该算法主要可用于处理云计算环境下非抢占式独立任务的调度和负载均衡问题,对负载进行平衡的同时考虑虚拟机等待序列内任务的优先级。
b)蜜蜂觅食行为
人工蜂群算法是一种基于蜂群智能觅食的优化算法,该方法是对蜂群智能觅食行为的细致观察,具有很强的全局搜索能力,主要用于进行行竖直函数的最优化。
连接空心圆圈的箭头表示负信号,连接实心黑色开始圆圈的箭头表示正信号,无论是正信号还是负信号都要在蜂巢中进行传递。
本发明的技术方案是:
从超载的虚拟机上移走的任务需要寻找合适的虚拟机,只有合适的虚拟机能够分配新任务。在寻找的过程中有两种可能性:要么找到了虚拟机的集合(正信号),要么没有找到合适的虚拟机(负信号)。在实际情况下,可能存在多个虚拟机可以接受该任务,因此该任务需要在根据任务优先级QoS标准在多个虚拟机中选择最好的虚拟机,即在虚拟机的任务中只有很少一部分任务的优先级与该任务的优先级相同。这个过程称为多个任务为了虚拟机而进行的竞争,当该竞争结束后,获胜的任务被分配给其找到的合适的虚拟机的详细信息进行更新。
在分配的过程中,若某一个任务没能找到合适的虚拟机,则该任务获取一个延时,在延时的过程中该任务得到经历并开始侦听有其他任务发出的更新信息。任务确认信息后,首先寻找虚拟机集合,对合适的虚拟机识别。在延迟过程中,为了分配到合适的虚拟机,要与其他任务进行激烈的竞争。竞争结束后,无论输赢都要马上更新信息。由于新任务的到来,循环会在所有前期任务被分配后马上开始,调度系统根据负载和优先级获取良好的平衡效果。
根据虚拟机的负载进行分组,减少任务分配的响应时间;
任务增加优先级标记,从而在虚拟机组里面找到最优虚拟机来减少响应和通信时间。
本发明的有益效果是。
根据蜜蜂觅食行文模型提出的一种面向云计算环境的负载均衡技术,不仅可以平衡负载,还能为迁移任务分配优先级。基于蜜蜂行为的负载均衡技术通过将平衡重点放在减少VM等待序列中人物的等待时间来提高处理过程的整理吞吐量和优先级,因此减少了VM的响应时间。
附图说明
图1是蜜蜂觅食的行为控制结构流程示意图。
图2是均衡算法中觅食蜂的行为控制结构示意图。
具体实施方式
下面对本发明的内容进行更加详细的阐述:
从超载的虚拟机上移走的任务需要寻找合适的虚拟机,只有合适的虚拟机能够分配新任务。在寻找的过程中有两种可能性:要么找到了虚拟机的集合(正信号),要么没有找到合适的虚拟机(负信号)。在实际情况下,可能存在多个虚拟机可以接受该任务,因此该任务需要在根据任务优先级QoS标准在多个虚拟机中选择最好的虚拟机,即在虚拟机的任务中只有很少一部分任务的优先级与该任务的优先级相同。这个过程称为多个任务为了虚拟机而进行的竞争,当该竞争结束后,获胜的任务被分配给其找到的合适的虚拟机的详细信息进行更新。
在分配的过程中,若某一个任务没能找到合适的虚拟机,则该任务获取一个延时,在延时的过程中该任务得到经历并开始侦听有其他任务发出的更新信息。任务确认信息后,首先寻找虚拟机集合,对合适的虚拟机识别。在延迟过程中,为了分配到合适的虚拟机,要与其他任务进行激烈的竞争。竞争结束后,无论输赢都要马上更新信息。由于新任务的到来,循环会在所有前期任务被分配后马上开始,调度系统根据负载和优先级获取良好的平衡效果。
负载均衡算法工作原理
1、 数学模型
使用VM(虚拟机)m = {VM1,VM2,…,VMm}表示m个虚拟机的集合,使用T n= {T1,T2,…,Tn} 表示要处理的n个任务。本模型中所有的机器都是并行的,任意两者之间不关联,使用R表示。将非抢占式独立的任务分配给这些VM,非抢占式任务使用npm表示,非抢占式任务定义为虚拟机处理这类任务时不能被打断。
使用 表示一个任务的完成时间,表示最大完成时间,目标是尽可能的降低最大完成时间,模型为:R|npm|CTmax 。
使用表示在虚拟机上处理一个任务,所耗时间为Ti,虚拟机上所有任务处理时间为:
Pj =
对最小化可得到:
得出公式:
在进行负载均衡处理时,为了减少和响应时间,被处理的任务将会从一个VM传递到其他的VM中。一个任务在传送过程中所耗时间并非定值,随着VM的性能不同而变化,若自处理过程中发生传送,任务的完成时间会由于负载均衡操作而进行变化,当虚拟机处理任务和响应时间都尽可能小是可取最优情况。将从过载的VM上移走的任务当作蜜蜂,该任务被分配给负载较轻的VM后,就对该VM上的以及加载的任务和没加载的任务数量进行更新。该信息对其他任务的分配十分有益,即在任何时候都应该将高优先级的任务分配给VM。
所有的可用VM的当前工作量可以根据数据中心发出的信息计算得到,因此,可通过标准偏差来度量VM负载的偏差。
2、 VM性能
一个VM的性能表示为:
处理单元表示中处理器的数量,表示中所有处理器每秒执行的百万指令,表示上的通信带宽。
3、 VM负载
一个VM被分配到所有任务的总长度称为负载。
VM的负载是利用t时刻服务序列上任务的个数除以服务概率进行计算的。数据中心中所有的VM的负载计算公式为:
一个VM的处理时间为:
所有的VM的处理时间为:
PT = L/C
负载的标准差为:
在得到工作量和标准差后,系统决定是否要运行负载均衡策略,有两种可能情况:1)检查系统是否平衡;2)检查整个系统是否都饱和,若整个系统发生过载,则负载均衡无效。
1)检查VM 群的状态。若VM 负载的标准差σ≤ 多设定的条件阈值(取值范围为[0,1]),则该系统是平衡的;否则为不平衡(可能是过载,也可能是负载过轻)。
2)查找发生过载的VM 群。若VM 群的当前工作量L>VM 群的最大性能时,该群发生了过载,在该情况下负载均衡不能发挥任何作用;否则执行负载均衡。
4、VM分组
虚拟机根据各自的负载进行分组,共分为三组:过载的VM、负载过轻的VM 和平衡的VM。每一个组中都包含了一定数量的VM,从过载VM 组中移走的任务必须在低负载的VM 中找到一个合适的VM,该选择过程是基于加载的VM 中负载的大小和可用任务的个数进行的。任务被当成蜜蜂,低负载的VM 被当成蜜蜂的目的地。蜜蜂(任务)更新的信息被载入到一个VM 中,将每个VM 中任务的个数、每个VM 组中VM 的个数(负载过轻的VM 和过载的和VM)和每个VM 中任务的优先级等信息载入到所有的VM 中。负责均衡的VM 并不用于任务的转换,任务转换结束后,已经平衡的VM 会被包含到负载均衡VM 集合中。若该集合包含所有的VM,则说明负责均衡是成功的,即所有的任务都是平衡的。
5、任务传递
决定平衡负载时,调度程序就会触发负载均衡功能。为了执行负载均衡,必须要查找过载的VM、需求(加载请求)、负载过轻的VM 和供给(可利用负载),查找结束后就可以移走发生过载的VM上的任务。为了给被移走的任务找到一个最优的VM,必须要查询任务的优先级。较早被移走的任务(搜索蜜蜂)有助于当前被移走的任务(觅食蜂)找到正确的低负载的VM。对于下一个任务来说觅食蜂就变成了搜索蜜蜂,该处理过程持续到负载均衡成功完成。
6、不同优先级任务的VM的选取
其中:、、分别表示任务的高、中和低优先级结构。
任务的优先级可以分成3个基本结构(高、中和低)。当需要将高优先级的任务分配到负载过轻的机器中时,则认为该高优先级的任务已经被分配给那个机器,这是为了确保高优先级的任务能够找到含有较少数量高优先级任务的机器。
7、 调度算法
LVM中每个机器的供给为:
OVM中的每个机器的需求为:
在OVM中以递减的排序方式对VM进行分类,在LVM中以递增的方式对VM进行分类。
根据选择准则(优先级)对VM中的任务进行分类
VM中的每个任务T查找机器
If(T是非抢占式)
If(T是抢占式)
更新分配到的任务数量
更新分配到的拥有优先权的任务数量
更新和中的负载
更新集合OVM、LVM、BVM
按照降序将OVM 中的VM 进行分类
按照升序将LVM 中的VM 进行分类。
Claims (4)
1.一种用于云计算环境下的负载均衡方法,其特征在于
从超载的虚拟机上移走的任务需要寻找合适的虚拟机,该任务根据任务优先级QoS标准在多个虚拟机中选择最好的虚拟机,即在虚拟机的任务中只有很少一部分任务的优先级与该任务的优先级相同;这个过程称为多个任务为了虚拟机而进行的竞争,当该竞争结束后,获胜的任务被分配给其找到的合适的虚拟机的详细信息进行更新。
2.根据权利要求1所述的负载均衡方法,其特征在于,在分配的过程中,若某一个任务没能找到合适的虚拟机,则该任务获取一个延时,在延时的过程中该任务得到经历并开始侦听有其他任务发出的更新信息;任务确认信息后,首先寻找虚拟机集合,对合适的虚拟机识别。
3.根据权利要求2所述的负载均衡方法,其特征在于,
在延迟过程中,为了分配到合适的虚拟机,要与其他任务进行激烈的竞争;竞争结束后,无论输赢都要马上更新信息。
4.根据权利要求3所述的负载均衡方法,其特征在于,
循环会在所有前期任务被分配后马上开始,调度系统根据负载和优先级获取良好的平衡效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510321803.1A CN104917839A (zh) | 2015-06-12 | 2015-06-12 | 一种用于云计算环境下的负载均衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510321803.1A CN104917839A (zh) | 2015-06-12 | 2015-06-12 | 一种用于云计算环境下的负载均衡方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104917839A true CN104917839A (zh) | 2015-09-16 |
Family
ID=54086535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510321803.1A Pending CN104917839A (zh) | 2015-06-12 | 2015-06-12 | 一种用于云计算环境下的负载均衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104917839A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713165A (zh) * | 2017-01-10 | 2017-05-24 | 西南交通大学 | 网络编码环境下优化负载均衡的方法 |
CN107357652A (zh) * | 2017-06-16 | 2017-11-17 | 北京邮电大学 | 一种基于分段排序及标准差调整因子的云计算任务调度方法 |
CN108200185A (zh) * | 2018-01-15 | 2018-06-22 | 杭州迪普科技股份有限公司 | 一种实现负载均衡的方法及装置 |
CN109788046A (zh) * | 2018-12-29 | 2019-05-21 | 河海大学 | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 |
CN109815019A (zh) * | 2019-02-03 | 2019-05-28 | 普信恒业科技发展(北京)有限公司 | 任务调度方法、装置、电子设备及可读存储介质 |
CN110941493A (zh) * | 2019-11-21 | 2020-03-31 | 中国联合网络通信集团有限公司 | 任务调度方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279771A (zh) * | 2011-09-02 | 2011-12-14 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
CN102681895A (zh) * | 2011-03-11 | 2012-09-19 | 北京市国路安信息技术有限公司 | 一种动态自迁移云服务方法 |
US20140007088A1 (en) * | 2012-06-29 | 2014-01-02 | International Business Machines Corporation | Method and apparatus to replicate stateful virtual machines between clouds |
CN104283946A (zh) * | 2014-09-26 | 2015-01-14 | 东北大学 | 一种单物理机下多虚拟机的资源自适应调整系统及方法 |
CN104484220A (zh) * | 2014-11-28 | 2015-04-01 | 杭州华为数字技术有限公司 | 虚拟化集群的动态资源调度的方法及装置 |
-
2015
- 2015-06-12 CN CN201510321803.1A patent/CN104917839A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681895A (zh) * | 2011-03-11 | 2012-09-19 | 北京市国路安信息技术有限公司 | 一种动态自迁移云服务方法 |
CN102279771A (zh) * | 2011-09-02 | 2011-12-14 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
US20140007088A1 (en) * | 2012-06-29 | 2014-01-02 | International Business Machines Corporation | Method and apparatus to replicate stateful virtual machines between clouds |
CN104283946A (zh) * | 2014-09-26 | 2015-01-14 | 东北大学 | 一种单物理机下多虚拟机的资源自适应调整系统及方法 |
CN104484220A (zh) * | 2014-11-28 | 2015-04-01 | 杭州华为数字技术有限公司 | 虚拟化集群的动态资源调度的方法及装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713165A (zh) * | 2017-01-10 | 2017-05-24 | 西南交通大学 | 网络编码环境下优化负载均衡的方法 |
CN106713165B (zh) * | 2017-01-10 | 2020-01-17 | 西南交通大学 | 网络编码环境下优化负载均衡的方法 |
CN107357652A (zh) * | 2017-06-16 | 2017-11-17 | 北京邮电大学 | 一种基于分段排序及标准差调整因子的云计算任务调度方法 |
CN107357652B (zh) * | 2017-06-16 | 2020-10-23 | 北京邮电大学 | 一种基于分段排序及标准差调整因子的云计算任务调度方法 |
CN108200185A (zh) * | 2018-01-15 | 2018-06-22 | 杭州迪普科技股份有限公司 | 一种实现负载均衡的方法及装置 |
CN108200185B (zh) * | 2018-01-15 | 2020-12-04 | 杭州迪普科技股份有限公司 | 一种实现负载均衡的方法及装置 |
CN109788046A (zh) * | 2018-12-29 | 2019-05-21 | 河海大学 | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 |
CN109815019A (zh) * | 2019-02-03 | 2019-05-28 | 普信恒业科技发展(北京)有限公司 | 任务调度方法、装置、电子设备及可读存储介质 |
CN109815019B (zh) * | 2019-02-03 | 2021-06-15 | 普信恒业科技发展(北京)有限公司 | 任务调度方法、装置、电子设备及可读存储介质 |
CN110941493A (zh) * | 2019-11-21 | 2020-03-31 | 中国联合网络通信集团有限公司 | 任务调度方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105656973B (zh) | 一种分布式节点组内任务调度方法及系统 | |
CN104657221B (zh) | 一种云计算中基于任务分类的多队列错峰调度模型及方法 | |
CN104917839A (zh) | 一种用于云计算环境下的负载均衡方法 | |
CN102388381B (zh) | 用于分配共享存储资源的系统和方法 | |
Dhari et al. | An efficient load balancing scheme for cloud computing | |
US20200174844A1 (en) | System and method for resource partitioning in distributed computing | |
CN104331321A (zh) | 基于禁忌搜索和负载均衡的云计算任务调度方法 | |
Babu et al. | Load balancing of tasks in cloud computing environment based on bee colony algorithm | |
CN104023042B (zh) | 云平台资源调度方法 | |
CN107346264A (zh) | 一种虚拟机负载均衡调度的方法、装置和服务器设备 | |
CN103401939A (zh) | 一种采用混合调度策略的负载均衡方法 | |
CN114138486A (zh) | 面向云边异构环境的容器化微服务编排方法、系统及介质 | |
CN109783225B (zh) | 一种多租户大数据平台的租户优先级管理方法及系统 | |
CN112162835A (zh) | 一种异构云环境下实时任务的调度优化方法 | |
Shobana et al. | Nature inspired preemptive task scheduling for load balancing in cloud datacenter | |
Delavar et al. | A synthetic heuristic algorithm for independent task scheduling in cloud systems | |
CN110311965A (zh) | 一种云计算环境下的任务调度方法及系统 | |
Komarasamy et al. | A novel approach for Dynamic Load Balancing with effective Bin Packing and VM Reconfiguration in cloud | |
Stavrinides et al. | Orchestrating bag-of-tasks applications with dynamically spawned tasks in a distributed environment | |
CN107168805A (zh) | 一种基于虚拟机的资源调度方法 | |
Mirobi et al. | Dynamic load balancing approach for minimizing the response time using an enhanced throttled load balancer in cloud computing | |
Natarajan | Parallel queue scheduling in dynamic cloud environment using backfilling algorithm | |
Hamzeh et al. | A new approach to calculate resource limits with fairness in kubernetes | |
Ramezani et al. | Task Scheduling in cloud environments: a survey of population‐based evolutionary algorithms | |
CN105955816A (zh) | 一种事件调度方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150916 |
|
WD01 | Invention patent application deemed withdrawn after publication |