CN107222540A - 一种基于负反馈的服务器集群分组调度方法 - Google Patents
一种基于负反馈的服务器集群分组调度方法 Download PDFInfo
- Publication number
- CN107222540A CN107222540A CN201710416047.XA CN201710416047A CN107222540A CN 107222540 A CN107222540 A CN 107222540A CN 201710416047 A CN201710416047 A CN 201710416047A CN 107222540 A CN107222540 A CN 107222540A
- Authority
- CN
- China
- Prior art keywords
- server
- kth
- cycle
- busy percentage
- cpu busy
- 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.)
- Granted
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/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- 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/1031—Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于负反馈的服务器集群分组调度方法。本方法为:1)根据服务器第k周期的历史运行状态,计算第k周期的最优服务器运行数量;2)根据所述最优服务器运行数量及服务器第k周期的运行状态,用负反馈的方式得出第k+1周期应开启的服务器数量。本发明通过对历史运行情况进行统计,并通过负反馈的方式,自动调节开启服务器的数量,来改善服务器集群的资源利用率和能效。
Description
技术领域
本发明涉及一种服务器集群的调度方法,具体涉及一种基于负反馈的服务器集群方法及***。
背景技术
随着云计算、物联网等网络技术的迅猛发展,服务器集群技术应运而生。
服务器集群一般是由多台服务器通过高速网络连接的集群***,具有高性能、高可用性和高性价比的特点,因此获得了广泛的应用。然而,随着数据中心规模的不断提升,服务器能耗占用了大量企业投资,服务器集群节能调度已经成为当前业界广泛关注的问题。
但是,服务器集群还面临着负载强度变化的情况下资源动态管理的问题,如果没有基于分组的集群调度方法,可能出现服务器启停状态切换过于频繁、负载不均衡导致资源利用率和性能下降等问题。
在服务器集群分组调度中,应开启的服务器数量是一个重要参数,开启服务器数量过多,无法达到提高服务器利用率的目的,而开启服务器数量过低,将无法满足***要求。
发明内容
鉴于以上问题,本发明提供一种基于负反馈的服务器集群分组调度方法,通过对历史运行情况进行统计,并通过负反馈的方式,自动调节开启服务器的数量,来改善服务器集群的资源利用率和能效。
本发明的技术方案为:
一种基于负反馈的服务器集群分组调度方法,其步骤为:
1)根据服务器第k周期的历史运行状态,计算第k周期的最优服务器运行数量;
2)根据所述最优服务器运行数量及服务器第k周期的运行状态,用负反馈的方式得出第k+1周期应开启的服务器数量。
进一步的,计算所述最优服务器运行数量的方法为:设第k周期采集到的服务器CPU利用率及处理性能分别为c=[c1,c2,…,ci,…,cn],p=[p1,p2,…,pi,…,pn],其中,n为第k周期运行的服务器总数,ci为第i个服务器CPU利用率,pi为第i个服务器的处理性能,ci∈(0,1),pi=0或1;根据pi取值,将集合c分别划分为两个集合c0和c1,即将处理性能pi取值为0的服务器CPU利用率添加到集合c0,将处理性能pi取值为1的服务器CPU利用率添加到集合c1;然后将CPU利用率划分为多个区间,根据co=argmaxi[Ni 0/Ni 1]*h计算得到第k周期的最优运行参数co;其中,Ni 0为集合c0中CPU利用率在第i个区间的样本个数,Ni 1为集合c1中CPU利用率在第i个区间的样本个数,h为区间系数。
进一步的,所述处理性能为丢包率,当有丢包时所述处理性能取值为0,当没有丢包时所述处理性能取值为1。
进一步的,所述区间系数h取值为0.1。
进一步的,用负反馈的方式得出第k+1周期应开启的服务器数量的方法为:计算第k周期的服务器CPU平均利用率与第k周期的最佳CPU利用率之间的差值,若该差值大于0,则第k+1周期增加开启服务器的数量,反之则减少开启服务器的数量。
进一步的,利用公式计算得出第k+1周期应开启的服务器数量M(k+1);其中,M(k)是第k周期已开启的服务器数量,是第k周期的CPU利用率均值,co是第k周期的最优运行参数,α是负反馈中的调整步长。
本发明有两个关键技术:
1)根据服务器历史运行状态,统计服务器运行的最优参数;
2)根据服务器运行的最优参数及当前的运行状态,用负反馈的方式得出应开启的服务器数量。
有鉴于此,本发明的主要内容如下:
服务器运行状态实时采集:以一定的时间间隔,对服务器的CPU利用率及处理性能进行实时统计,处理性能包括但不限于网卡丢包率。处理性能与服务器运行状态信息应当在时间上同步。
统计服务器最佳运行参数:
设过去一段时间采集到的服务器CPU利用率及处理性能分别为c=[c1,c2,…,ci,…,cn],p=[p1,p2,…,pi,…,pn],其中,ci∈(0,1),pi=0或1。根据对应的pi的取值,可以将c分别划分为两个集合c0和c1。同时,将CPU利用率划分为10个区间,统计各个区间中的样本数量,如下所示。
最优的运行参数即为:
co=argmaxi[Ni 0/Ni 1]*h,h为区间系数,本发明中取值为0.1,该系数确保co的取值在(0,1)之间。
用负反馈的方式确定当前的最优服务器数量:
在每次采样结束后,计算当前的CPU平均利用率与最佳CPU利用率之间的差值,若当前的CPU利用率高于最佳CPU利用率(该差值大于0),则增加开启服务器的数量,反之则减少服务器的数量。具体计算公式如下:
其中,M(k+1)是下一个运行周期开启服务器的数量,M(k)是当前开启的服务器数量,是当前CPU利用率的均值,co是计算出来的最优运行参数,α是步长。
与现有技术相比,本发明的积极效果为:
本发明可以自适应的学习最优的***运行参数,并动态的将***调度在最优工作状态下,可以有较好的性能功耗比。
附图说明
图1是本发明中基于负反馈的服务器集群分组调度方法的***框图。
图2是本发明中基于负反馈的服务器分组最优服务器数量计算算法示意图。
具体实施方式
下面结合附图和实施例对本发明所述方法进行详细说明。
如图1所示,本发明所述方法在本实施例中的工作流程是:
步骤101:***初始化阶段,初始化负载采集周期,负反馈中的调整步长α,初始默认开启所有服务器,之后,***开始对各个服务器的运行状态和性能进行同步采集。
步骤102:在每个采集周期结束之后,将每个核的CPU利用率添加到c0和c1中,将没有丢包的CPU利用率添加到c0,将有丢包的CPU利用率添加到c1。处理性能用0和1来表示是否有丢包,没有丢包就是0,有丢包就是1。
步骤103:根据co=argmaxi[Ni 0/Ni 1]*0.1计算最优的服务器运行参数。
步骤103:计算当前服务器的平均CPU利用率,记作
步骤104:根据以下公式,计算下一个周期应开启的服务器数量
步骤105:利用动态负载均衡的方法,将流量集中调度到M(k+1)台服务器上。
以上实施仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。
Claims (6)
1.一种基于负反馈的服务器集群分组调度方法,其步骤为:
1)根据服务器第k周期的历史运行状态,计算第k周期的最优服务器运行数量;
2)根据所述最优服务器运行数量及服务器第k周期的运行状态,用负反馈的方式得出第k+1周期应开启的服务器数量。
2.如权利要求1所述的方法,其特征在于,计算所述最优服务器运行数量的方法为:设第k周期采集到的服务器CPU利用率及处理性能分别为c=[c1,c2,…,ci,…,cn],p=[p1,p2,…,pi,…,pn],其中,n为第k周期运行的服务器总数,ci为第i个服务器CPU利用率,pi为第i个服务器的处理性能,ci∈(0,1),pi=0或1;根据pi取值,将集合c分别划分为两个集合c0和c1,即将处理性能pi取值为0的服务器CPU利用率添加到集合c0,将处理性能pi取值为1的服务器CPU利用率添加到集合c1;然后将CPU利用率划分为多个区间,根据co=argmaxi[Ni 0/Ni 1]*h计算得到第k周期的最优运行参数co;其中,Ni 0为集合c0中CPU利用率在第i个区间的样本个数,Ni 1为集合c1中CPU利用率在第i个区间的样本个数,h为区间系数。
3.如权利要求2所述的方法,其特征在于,所述处理性能为丢包率,当有丢包时所述处理性能取值为0,当没有丢包时所述处理性能取值为1。
4.如权利要求2所述的方法,其特征在于,所述区间系数h取值为0.1。
5.如权利要求1所述的方法,其特征在于,用负反馈的方式得出第k+1周期应开启的服务器数量的方法为:计算第k周期的服务器CPU平均利用率与第k周期的最佳CPU利用率之间的差值,若该差值大于0,则第k+1周期增加开启服务器的数量,反之则减少开启服务器的数量。
6.如权利要求5所述的方法,其特征在于,利用公式计算得出第k+1周期应开启的服务器数量M(k+1);其中,M(k)是第k周期已开启的服务器数量,是第k周期的CPU利用率均值,co是第k周期的最优运行参数,α是负反馈中的调整步长。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710416047.XA CN107222540B (zh) | 2017-06-06 | 2017-06-06 | 一种基于负反馈的服务器集群分组调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710416047.XA CN107222540B (zh) | 2017-06-06 | 2017-06-06 | 一种基于负反馈的服务器集群分组调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107222540A true CN107222540A (zh) | 2017-09-29 |
CN107222540B CN107222540B (zh) | 2020-11-20 |
Family
ID=59948295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710416047.XA Active CN107222540B (zh) | 2017-06-06 | 2017-06-06 | 一种基于负反馈的服务器集群分组调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107222540B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102833355A (zh) * | 2012-09-22 | 2012-12-19 | 广东电子工业研究院有限公司 | 一种面向云计算的负载均衡***及机制 |
CN103490956A (zh) * | 2013-09-22 | 2014-01-01 | 杭州华为数字技术有限公司 | 基于业务量预测的自适应节能控制方法及设备、*** |
JP5735899B2 (ja) * | 2011-10-25 | 2015-06-17 | 日本電信電話株式会社 | サービス提供システム、ファイル更新方法、および分散管理装置 |
-
2017
- 2017-06-06 CN CN201710416047.XA patent/CN107222540B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5735899B2 (ja) * | 2011-10-25 | 2015-06-17 | 日本電信電話株式会社 | サービス提供システム、ファイル更新方法、および分散管理装置 |
CN102833355A (zh) * | 2012-09-22 | 2012-12-19 | 广东电子工业研究院有限公司 | 一种面向云计算的负载均衡***及机制 |
CN103490956A (zh) * | 2013-09-22 | 2014-01-01 | 杭州华为数字技术有限公司 | 基于业务量预测的自适应节能控制方法及设备、*** |
Also Published As
Publication number | Publication date |
---|---|
CN107222540B (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096349A (zh) | 一种基于集群节点负载状态预测的作业调度方法 | |
Shi et al. | An energy-efficient scheme for cloud resource provisioning based on CloudSim | |
Lu et al. | An effective task scheduling algorithm based on dynamic energy management and efficient resource utilization in green cloud computing environment | |
CN102981890B (zh) | 一种在虚拟化数据中心内的计算任务及虚拟机部署方法 | |
CN104360924B (zh) | 一种在云数据中心环境下对虚拟机进行监控等级划分的方法 | |
CN102223419A (zh) | 面向网络化操作***的虚拟资源动态反馈均衡分配机制 | |
CN104199736A (zh) | 云环境下的数据中心节能方法 | |
CN104038392A (zh) | 一种云计算资源服务质量评估方法 | |
CN105159751A (zh) | 云数据中心中一种能量高效的虚拟机迁移方法 | |
CN102759984A (zh) | 虚拟化服务器集群的电源和性能管理*** | |
CN108023958A (zh) | 一种基于云平台资源监视的资源调度*** | |
CN103645795A (zh) | 一种基于人工神经网络的云计算数据中心节能方法 | |
CN105868004A (zh) | 一种基于云计算的业务***的调度方法及调度装置 | |
CN107608777A (zh) | 一种分布式环境中大数据处理任务的调度方法 | |
CN104796673B (zh) | 一种面向能耗优化的云视频监控***任务接入方法 | |
CN105847385B (zh) | 一种基于运行时长的云计算平台虚拟机调度方法 | |
CN112416516A (zh) | 一种面向资源效用提升的云数据中心资源调度方法 | |
He et al. | DROI: Energy-efficient virtual network embedding algorithm based on dynamic regions of interest | |
He et al. | Energy-efficient framework for virtual machine consolidation in cloud data centers | |
CN111242801A (zh) | 一种电力***调控云电网运行分析平台 | |
CN103092326A (zh) | 一种基于时间的物理机节能方法 | |
Yuan et al. | Energy aware resource scheduling algorithm for data center using reinforcement learning | |
CN106844175B (zh) | 一种基于机器学***台容量规划方法 | |
CN108170522B (zh) | 一种基于动态阈值的云计算虚拟机迁移控制方法 | |
CN107222540A (zh) | 一种基于负反馈的服务器集群分组调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |