1.本发明涉及数据中心的能耗管理技术领域,具体而言,涉及一种电力云计算数据中心的能耗优化方法。
背景技术:2.近年来,云计算数据中心的高能耗逐渐成为一个突出的问题,尤其是随着云计算时代的到来,更多的计算资源和存储资源集中在云端,给能耗的高效管理带来更大的挑战。高能耗问题将对空气质量、国家安全、气候变化、电网可靠性等方面造成严重影响。因此,云计算数据中心的节能刻不容缓,能耗优化管理已经成为当前云数据中心亟待解决的重要问题。
3.但是,现有技术在降低数据中心能耗过程中,往往只针对单一的物理机运行产生的能耗或针对单一的虚拟机迁移产生的能耗进行节能减排处理,能耗降低效果不显著。
技术实现要素:4.本发明解决的问题是如何对云计算数据中心的资源进行多层次的优化配置,以降低云计算数据中心能耗。
5.为解决上述问题,本发明提供一种电力云计算数据中心的能耗优化方法,其特征在于,包括:
6.对数据中心的物理机虚拟化,对于每个物理机,虚拟为至少一个虚拟机;
7.根据所述数据中心的所述物理机的运行情况计算所述数据中心的能耗数据;
8.基于所述能耗数据确定优化策略,对所述物理机的运行情况进行一次优化,获得第一优化结果;
9.分析所述第一优化结果中,各个物理机的运行情况,根据所述运行情况确定所述虚拟机的迁移策略;
10.计算所述迁移策略的能耗,获得迁移能耗;
11.根据所述迁移能耗进行二次优化,计算出迁移能耗最小的策略,作为第二优化结果。
12.可选地,所述根据所述数据中心的所述物理机的运行情况计算所述数据中心的能耗数据包括:
13.获得所述数据中心中物理机的运行状态,其中,所述运行状态包括工作状态、转换状态、空闲状态、休眠状态和关机状态;
14.通过预设的计算策略计算各个运行状态的物理机的能耗,获得工作能耗、转换能耗、空闲能耗、休眠能耗和关机能耗;
15.根据所述工作能耗、所述转换能耗、所述空闲能耗、所述休眠能耗和所述关机能耗确定所述能耗数据。
16.可选地,所述通过预设的计算策略计算各个运行状态的物理机的能耗包括:
17.确定所述数据中心中处于所述工作状态的物理机;
18.根据处于所述工作状态的物理机的单位时间内的计算功耗、任务指令条数和处理器速度确定计算能耗;
19.根据所述物理机在单位时间的存储功耗、磁盘读写的速度,每条任务的读写时间及读写数据量确定存储能耗;
20.基于所述计算能耗和所述存储能耗确定所述工作能耗。
21.可选地,所述通过预设的计算策略计算各个运行状态的物理机的能耗还包括:
22.根据处于所述转换状态的物理机的转换功率和转换时间确定所述转换能耗;
23.根据处于所述空闲状态的物理机的空闲功率和空闲时间确定所述空闲能耗;
24.根据处于所述休眠状态的物理机的休眠功耗和休眠时间确定所述休眠能耗。
25.可选地,所述基于所述能耗数据确定优化策略,对所述物理机的运行情况进行一次优化,获得第一优化结果包括:
26.基于所述能耗数据、地区电价或地区碳排放率确定所述优化策略;
27.根据所述优化策略调整所述数据中心的负载,调整所述数据中心中的所述物理机的开启数量,调整所述物理机的处理器的运行频率;
28.获得所述第一优化结果。
29.可选地,所述根据所述优化策略调整所述数据中心的负载,调整所述数据中心中的所述物理机的开启数量,调整所述物理机的处理器的运行频率包括:
30.基于所述地区电价或所述地区碳排放率以及所述能耗数据分配所述数据中心的负载;
31.根据所述运行情况优化所述数据中心的开启数量、所述数据中心中的所述物理机的开启数量;
32.根据所述物理机的负载调整所述数据中心中的所述物理机的处理器运行频率。
33.可选地,所述基于所述能耗数据确定优化策略,对所述物理机的运行情况进行一次优化,获得第一优化结果还包括:
34.根据所述数据中心的数量以及每个所述数据中心中的所述物理机的数量建立开启数量约束条件;
35.根据所述数据中心和所述物理机的服务速率建立处理器运行频率约束条件;
36.根据所述数量约束条件和所述处理器运行频率约束条件约束所述第一优化结果。
37.可选地,所述分析所述第一优化结果中,各个物理机的运行情况,根据所述运行情况确定所述虚拟机的迁移策略包括:
38.获取所述物理机的使用率;
39.根据所述使用率对所述物理机进行排序,根据排列顺序获得绝对中位差;
40.根据预设的上限阈值、下限阈值、迁移需求值,以及所述绝对中位差确定所述虚拟机的所述迁移策略,其中,所述上限阈值和所述下限阈值表示所述物理机的处理器使用率的上下限阈值。
41.可选地,所述根据预设的上限阈值、下限阈值、迁移需求值,以及所述绝对中位差确定所述虚拟机的所述迁移策略包括:
42.将超过所述上限阈值的物理机中的虚拟机拟加入至迁移队列准备迁移;
43.将低于所述下限阈值的物理机拟加入至受迁移队列,准备接受虚拟机的迁移。
44.可选地,所述计算所述迁移策略的能耗,获得迁移能耗包括:
45.获取所述迁移队列中的虚拟机在其运行的物理机的处理器使用率、预设的迁移权重系数和迁移所需时间,记为第一使用率、第一权重和第一时间;
46.获取所述受迁移队列中的物理机的处理器使用率、预设的迁移权重系数和迁移所需时间,记为第二使用率、第二权重和第二时间;
47.基于所述第一使用率、所述第一权重和所述第一时间确定迁出能耗;
48.基于所述第二使用率、所述第二权重和所述第二时间确定迁入能耗;
49.根据所述迁出能耗和所述迁入能耗确定所述迁移能耗。
50.相对于现有技术,本发明通过根据数据中心中的物理机运行情况,计算数据中心的能耗数据,并基于能耗数据确定优化策略,实现对物理机运行情况的优化,即实现对数据中心能耗的一次优化;通过将物理机虚拟化为至少一个虚拟机,结合一次优化后的物理机运行情况确定虚拟机的迁移策略,并计算迁移策略的能耗,选择迁移能耗最小的策略对迁移能耗进行优化,即实现对数据中心能耗的二次优化。本发明通过制定物理机运行层面的优化策略和虚拟机迁移层面的优化策略,结合物理机运行情况,对数据中心的资源进行多层次的优化配置,达到显著降低数据中心能耗的效果。
附图说明
51.图1为本发明实施例的电力云计算数据中心的能耗优化方法的流程图;
52.图2为本发明实施例的电力云计算数据中心的能耗优化方法步骤s200细化后的流程图;
53.图3为本发明实施例的电力云计算数据中心的能耗优化方法步骤s220细化后的流程图;
54.图4为本发明实施例的电力云计算数据中心的能耗优化方法步骤s220细化后的流程图;
55.图5为本发明实施例的电力云计算数据中心的能耗优化方法步骤s300细化后的流程图;
56.图6为本发明实施例的电力云计算数据中心的能耗优化方法步骤s320细化后的流程图;
57.图7为本发明实施例的电力云计算数据中心的能耗优化方法步骤s330细化后的流程图;
58.图8为本发明实施例的电力云计算数据中心的能耗优化方法步骤s400细化后的流程图;
59.图9为本发明实施例的电力云计算数据中心的能耗优化方法步骤s430细化后的流程图;
60.图10为本发明实施例的电力云计算数据中心的能耗优化方法步骤s500细化后的流程图;
61.图11为本发明实施例的电力云计算数据中心的能耗优化控制系统的流程图。
62.图12为本发明实施例的电力云计算数据中心的能耗优化控制系统示意图。
具体实施方式
63.为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
64.应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
65.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”;术语“可选地”表示“可选的实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
66.需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
67.本发明一实施例提供一种电力云计算数据中心的能耗优化方法,如图1所示,该方法包括:
68.步骤s100,对数据中心的物理机虚拟化,对于每个物理机,虚拟为至少一个虚拟机。
69.本发明所指数据中心表示基于特定设备网络,用于在网络基础设施上传递、计算、存储数据信息的物理机的集合。
70.可选地,数据中心包括至少一个物理机,所述数据中心用于向物理机分发服务,由物理机进行计算、存储等操作。
71.具体地,小型数据中心包括几十至几百台物理机;大型数据中心包括成百上千台物理机。
72.在另一实施例中,为了增加物理机的利用率以及物理机的处理器使用效率,将数据中心中,需要增加利用率和使用效率的物理机虚拟为至少一个虚拟机,每个虚拟机可以在物理机上同时运行,且每个虚拟机可运行不同的操作系统,并且应用程序可以在相互独立的空间内运行而互不影响。
73.在本实施例中,通过对物理机虚拟化,将一个物理机划分为多个相互独立的虚拟机,使物理机的计算资源重新划分,将一个物理机虚拟为多个虚拟机,可以提高cpu使用率,减少空闲状态的时间,实现对物理机资源的动态分配、灵活调度提高物理机资源利用率。
74.步骤s200,根据所述数据中心的所述物理机的运行情况计算所述数据中心的能耗数据。
75.由于物理机具有多种运行模式,每种运行模式均对应不同的功耗以及运行情况,故,需要将物理机进行运行情况划分,根据划分后的结果计算数据中心的能耗数据,保证准确了解数据中心的物理机的运行情况的同时,精确计算数据中心整体的能耗,保证获得效
果更好的第一优化结果。
76.具体地,数据中心包括有主机和多个物理机,物理机能耗可以表示为:
[0077][0078]
其中,p
used
表示实际功率,t1表示开始运行时间,t2表示结束运行时间。可选地,物理机的组件包括cpu、内存、硬盘、网络等,可以根据物理机的cpu日常使用情况合理配置物理机的组件。
[0079]
物理机的实际功率与空载功率、满载功率和cpu使用率之间的关系可以表示为:
[0080]
p
used
=p
idle
+(p
busy-p
idle
)
×
u,
[0081]
其中,p
used
表示实际功率,p
idle
表示空载时功率,p
busy
表示满载时功率,u表示cpu使用率。
[0082]
优选的,所述空载时功率是满载时功率的70%。
[0083]
由此可将上式简化为:
[0084]
p
used
=β
·
p
busy
+(1-β)
·
p
busy
·
u,
[0085]
其中,β表示空载功率与满载功率的比例系数。
[0086]
本实施例通过数据中心的所述物理机的运行情况计算所述数据中心的能耗数据,可以准确的得到数据中心的能耗情况,便于数据中心对能耗数据的查询和使用。
[0087]
步骤s300,基于所述能耗数据确定优化策略,对所述物理机的运行情况进行一次优化,获得第一优化结果。
[0088]
在一实施例中,计算数据中心中的物理机的能耗数据,然后根据能耗数据的数值确定能耗值更小或耗能成本更低的优化策略,作为第一优化结果。其中,一次优化的策略包括:从数据中心的层面进行优化,例如,若某数据中心的物理机的能耗或耗能成本较高,则将该物理机的负载跨数据中心转移到其他数据中心更低能耗或耗能成本更低的物理机上,将多个数据中心中的物理机以能耗数据为优化条件,进行联合优化,保证获得能耗更低、耗能成本更低的第一优化结果。
[0089]
可选地,第一优化结果包括一次优化后数据中心的能耗数据,在一次优化后,可以根据物理机的运行情况计算一次优化后数据中心的能耗数据,分析一次优化前和一次优化后数据中心的能耗数据变化,评估优化结果,并将一次优化前数据中心的物理机的运行情况、评估结果以及一次优化策略相关联,存储到历史数据,形成优化数据库,以便后续数据中心对其进行查询和使用。
[0090]
本实施例通过能耗数据确定能耗优化策略,,在物理机运行层面进行能耗降低,实现对数据中心能耗的一次优化,并获得优化结果以供后续对一次优化结果的查询和使用。
[0091]
步骤s400,分析所述第一优化结果中,各个物理机的运行情况,根据所述运行情况确定所述虚拟机的迁移策略。
[0092]
具体地,分析第一优化结果中各个物理机的运行情况,例如:分析物理机能耗情况、物理机使用情况等。根据一次优化后物理机的运行情况,确定各个物理机中的虚拟机的迁移策略,例如:确定哪些物理机中的虚拟机需要进行迁移、如何迁移等问题对应的解决策略。
[0093]
可选地,迁移策略可以通过减少迁移次数实现降低迁移耗能的目的,也可以通过
选择迁移能耗最小的迁移方式实现降低迁移能耗的目的。
[0094]
本实施例通过分析一次优化后物理机的运行情况,了解物理机能耗和使用等情况,在一次优化的基础上,对二次优化的虚拟机迁移策略进行选择,对不同运行情况的物理机采取其各自适宜的优化策略,实现更加精准、高效、深层次的能耗优化。
[0095]
步骤s500,计算所述迁移策略的能耗,获得迁移能耗。
[0096]
具体地,迁移能耗是指将虚拟机从一个物理机上迁移到另一个物理机上的过程中产生的能耗。根据确定的迁移策略对迁移能耗进行计算,例如:迁移策略中包含将a物理机内的n个虚拟机,迁移到b物理机上。那么,计算a物理机内a1-an虚拟机分别迁移到b物理机上所需要的能耗。
[0097]
可选地,可以将物理机运行状态、迁移策略以及对应的迁移耗能关联,存储到数据中心的历史数据中,便于查询和使用。当某次基于物理机运行状态确定的迁移策略和历史数据中相同物理机运行状态下的迁移策略相同时,则无需对迁移耗能进行再次计算,直接对迁移策略对应的迁移耗能历史数据进行调取和使用,节约计算过程产生的耗能。
[0098]
本实施例中通过计算迁移策略产生的能耗,获得准确的迁移能耗,为二次优化提供数据基础,便于实现精准的能耗优化。
[0099]
步骤s600,根据所述迁移能耗进行二次优化,计算出迁移能耗最小的策略,作为第二优化结果。
[0100]
具体地,在上一步骤获得的迁移能耗的基础上,对迁移能耗进行二次优化,例如:可以通过调整迁移顺序、迁移数量、迁移时间等优化迁移能耗,计算优化后不同的策略对应的迁移能耗,选择最小的迁移能耗对应的策略,并将其作为第二优化结果。
[0101]
可选地,第二优化结果包括二次优化后数据中心的能耗数据,在二次优化后,可以根据物理机的运行情况计算二次优化后数据中心的能耗数据,分析二次优化前和二次优化后数据中心的能耗数据变化,评估优化结果,并将二次优化前和后数据中心的物理机的运行情况、评估结果以及二次优化策略相关联,存储到历史数据,形成优化数据库,以便后续数据中心对其进行查询和使用。
[0102]
在本实施例中,根据迁移能耗进行优化,选择迁移能耗较小,成本较低的方式实现对虚拟机迁移层面的能耗优化,即对数据中心能耗的二次优化,进一步降低数据中心能耗。
[0103]
可选地,如图2所示,所述根据所述数据中心的所述物理机的运行情况计算所述数据中心的能耗数据包括:
[0104]
s210:获得所述数据中心中物理机的运行状态,其中,所述运行状态包括工作状态、转换状态、空闲状态、休眠状态和关机状态;
[0105]
s220:通过预设的计算策略计算各个运行状态的物理机的能耗,获得工作能耗、转换能耗、空闲能耗、休眠能耗和关机能耗;
[0106]
s230:根据所述工作能耗、所述转换能耗、所述空闲能耗、所述休眠能耗和所述关机能耗确定所述能耗数据。
[0107]
具体地,物理机的运行状态包括工作状态、转换状态、空闲状态、休眠状态和关机状态,根据数据中心中物理机的运行状态通过预设的计算策略计算各个运行状态的物理能耗,包括工作能耗、转换能耗、空闲能耗、休眠能耗和关机能耗。工作状态下的工作能耗主要包括执行任务时消耗cpu和内存产生的能量消耗以及磁盘读取数据时产生的能耗;转换状
态下的转换能耗主要包括物理机从一个状态转到另一个状态过程的能耗,其中包含了物理机中所有的组件,最主要的时cpu、显卡等;空闲状态下的空闲能耗主要包括空闲状态下cpu、显卡以及内存等消耗;休眠状态下的休眠能耗主要包括将运行状态数据保存到硬盘以后,整机完全停止供电产生的能耗;关机状态下的关机能耗主要包括物理机在关机过程中产生的能耗。数据中心的能耗数据包括所有物理机各自运行状态下对应产生的能耗之和。例如:数据中心包含3个物理机,分别为a物理机、b物理机和c物理机,其中,a物理机处于工作状态,b物理机处于休眠状态,c物理机处于转换状态。则,数据中心的能耗包括:a物理机的工作能耗、b物理机的休眠能耗以及c物理机的转换能耗。
[0108]
另外,由于物理机的各个运行状态对应产生能耗的方式不同,可以通过检测物理机内正在产生耗能的组件来判断物理机对应的工作状态。
[0109]
在本实施例中,通过对物理机各种运行状态下主要耗能情况的不同对物理机运行状态进行划分,便于区分物理机的运行状态;通过预设的计算策略计算每种运行状态对应的能耗来计算各个物理机的能耗,在不同的运行状态下可以只获取与该运行状态产生能耗相关的运行状态数据,减少信息获取时间和计算复杂程度,进而实现对数据中心能耗数据的精准快速计算。
[0110]
可选地,如图3所示,所述通过预设的计算策略计算各个运行状态的物理机的能耗包括:
[0111]
s221:确定所述数据中心中处于所述工作状态的物理机;
[0112]
s222:根据处于所述工作状态的物理机的单位时间内的计算功耗、任务指令条数和处理器速度确定计算能耗;
[0113]
s223:根据所述物理机在单位时间的存储功耗、磁盘读写的速度,每条任务的读写时间及读写数据量确定存储能耗;
[0114]
s224:基于所述计算能耗和所述存储能耗确定所述工作能耗。
[0115]
具体地,可以通过获取物理机当前主要耗能组件来判断物理机的运行状态,工作状态下的物理机主要耗能组件包括:执行任务时需要消耗的cpu和内存组件以及读取数据的磁盘组件。
[0116]
可选地,执行任务消耗cpu和内存时产生的能量消耗对应计算能耗,可以根据物理机的单位时间内的计算功耗、任务指令条数和处理器速度确定计算能耗,计算能耗可以表示为:
[0117][0118]
其中,ce
ij
表示物理机j执行任务i产生的耗能,pcj为在单位时间的计算功耗,cii表示任务指令条数,csj表示处理器速度。
[0119]
可选地,磁盘读写数据时所产生的能耗对应存储能耗,可以根据单位时间的存储功耗、磁盘读写的速度,每条任务的读写时间及读写数据量确定存储能耗,存储能耗可以表示为:
[0120][0121]
其中,se
ij
是物理机j的存储能耗,psj是单位时间的存储功耗,st
ij
是任务i在物理机j上的读写时间,sdi表示任务读写数据量,ssj表示磁盘读写的速度。
[0122]
在本实施例中,确定数据中心中处于工作状态的物理机后,根据物理机工作状态时主要耗能的组件,将工作能耗分为计算能耗和存储能耗进行分别计算,通过区分工作状态下的两种能耗对工作耗能进行分块计算,避免由于涉及的计算参数过多造成计算过程复杂混乱,从而使得计算工作耗能更加准确高效。
[0123]
可选地,如图4所示,所述通过预设的计算策略计算各个运行状态的物理机的能耗还包括:
[0124]
s225:根据处于所述转换状态的物理机的转换功率和转换时间确定所述转换能耗;
[0125]
s226:根据处于所述空闲状态的物理机的空闲功率和空闲时间确定所述空闲能耗;
[0126]
s227:根据处于所述休眠状态的物理机的休眠功耗和休眠时间确定所述休眠能耗。
[0127]
具体地,可以通过获取物理机当前主要耗能组件来判断物理机的运行状态,进而通过预设的计算策略根据不同运行状态下的功率以及对应的运行时间,对物理机的转换状态、空闲状态以及休眠状态产生的能耗进行计算。
[0128]
可选地,转换能耗是指物理机从一个状态转到另一个状态过程的能耗,其中就包含了物理机的所有组件,最主要的是cpu、显卡等。转换能耗可以表示为:
[0129][0130]
其中,tej表示物理机j的转换能耗,表示物理机j的转换功耗,表示物理机转换时间。
[0131]
空闲能耗主要是空闲状态下,cpu、显卡和内存等组件产生的能耗,空闲能耗可以表示为:
[0132][0133]
其中,iej表示物理机j的空闲能耗,指物理机j的空闲功耗,指空闲时间。
[0134]
可选地,休眠能耗指将运行状态数据保存到硬盘后,整机完全停止供电产生的能耗,休眠能耗可以表示为:
[0135][0136]
其中,dej表示物理机j的休眠能耗,表示物理机j的休眠功耗,
表示物理机的休眠时间。
[0137]
在本实施例中,通过转换状态、空闲状态以及休眠状态下的物理机的功率以及不同运行状态对应的运行时间来计算转换能耗、空闲能耗以及休眠能耗,可以在计算过程中针对不同的运行状态,只获取相应的参数完成对物理机的能耗计算,避免获取不必要的参数,节约计算时间,简化计算过程,提升计算速度。
[0138]
可选地,如图5所示,所述基于所述能耗数据确定优化策略,对所述物理机的运行情况进行一次优化,获得第一优化结果包括:
[0139]
s310:基于所述能耗数据、地区电价或地区碳排放率确定所述优化策略。
[0140]
s320:根据所述优化策略调整所述数据中心的负载,调整所述数据中心中的所述物理机的开启数量,调整所述物理机的处理器的运行频率。
[0141]
s330:获得所述第一优化结果。
[0142]
具体地,各个区域的地区电价和碳排放率均有所不同,由于我国幅员辽阔,各个区域电力资源种类、发电总额、运营成本以及用电需求都不相同,因此各个区域的地区电价也有所不同;同样,各地区由于人口密集程度、工商业发展水平以及地区政策的不同,各地区碳排放率也均不相同。基于能耗数据和地区电价或地区碳排放率,选择能耗较低,成本较小的策略对数据中心进行能耗优化,并获得一次优化结果。例如,优化策略可以包括选择地区电价较低或碳排放率较低的的区域布置数据中心。
[0143]
具体地,数据中心的负载在各个物理机上的分布并不均衡,例如,某个时间在数据中心中,某些物理机处于过载状态,某些物理机处于低负载状态甚至是空闲状态,长时间的负载不均衡容易导致过载状态物理机寿命降低,低负载状态或空闲状态的物理机浪费过多的能耗。除此之外,数据中心的功耗与数据中心的服务速率成指数关系,降低服务速率可以有效降低数据中心的能耗。因此,可以根据优化策略调整数据中心的负载、数据中心中物理机的开启数量以及调整物理机的处理器的运行频率来对数据中心的物理机层面进行能耗优化,并在优化后获得一次优化结果。
[0144]
在本实施例中,基于能耗数据、地区电价或碳排放率确定优化策略,与优化前相比,在数据中心产生相同能耗的条件下,可节约运行成本和维护费用,同时也可以减轻工业密集区域的用电压力碳排放率压力,有利于电网稳定,进而保障数据中心的供电,有利于数据中心稳定运行,促进节能减排。根据优化策略调整数据中心的负载,调整所述数据中心中的所述物理机的开启数量,调整所述物理机的处理器的运行频率,避免负载分配不均衡、开启数量以及运行频率不适宜造成的物理机寿命缩短和多余能耗浪费等问题。同时获取一次优化结果便于数据中心后续的分析比对,为使用一次优化结果对数据中心进行更深层次的优化提供了基础。
[0145]
可选地,如图6所示,所述根据所述优化策略调整所述数据中心的负载,调整所述数据中心中的所述物理机的开启数量,调整所述物理机的处理器的运行频率包括:
[0146]
s321:基于所述地区电价或所述地区碳排放率以及所述能耗数据分配所述数据中心的负载;
[0147]
s322:根据所述运行情况优化所述数据中心的开启数量、所述数据中心中的所述物理机的开启数量;
[0148]
s323:根据所述物理机的负载调整所述数据中心中的所述物理机的处理器运行频
率。
[0149]
具体地,数据中心的负载主要包括用户请求信息处理和历史数据存储调用,用户请求数量越多或需要存储的历史数据越多,数据中心的负载也就越大。另外,各地区的电价和碳排放率信息可以通过数据中心自主获取或人工输入定期更新,保证信息的实时性和有效性。基于地区电价或地区碳排放率分配数据中心的负载,可以是将用户请求优先分配给地区电价较低或碳排放率较低的区域内的数据中心进行处理,若用户请求数量过多,则再将多余的用户请求分配给其他区域的数据中心进行处理。
[0150]
具体地,降低数据中心的能耗还可以通过优化数据中心的开启数量,或者调整数据中心中的物理机开启数量来实现,虽然数据中心以及数据中心中的物理机数量通常有很多,但是可能由于负载分配不均衡等问题,导致并不是每一个数据中心或者或者物理机都处于工作状态或转换状态,在用户请求不活跃的某些区域或时间内,数据中心或者数据中心内的物理机可能会处于空闲状态,由此产生了多余的能耗。因此降低数据中心的能耗可以通过优化数据中心开启数量或调整数据中心中的物理机的开启数量来实现。例如,通过关闭多余的但仍在耗能的数据中心或者物理机来实现能耗降低。
[0151]
具体地,处理器频率,简单说是处理器运算时的工作频率,即1秒内发生的同步脉冲数。处理器频率决定了计算机的运行速度,通常来讲,处理器频率越高就代表处理器的运行速率越快,因此通过调整物理机的处理器运行频率可以调整物理机的处理器的运行速率,进而调整数据中心的能耗。例如,当数据中心中的物理机的负载较小时,可以降低处理器的运行频率,进而降低数据中心的能耗。
[0152]
在本实施例中,基于地区电价或碳排放、物理机的运行情况以及物理机物理机的负载对负载分配、数据中心或数据中心中的物理机的开启数量以及物理机的处理器频率进行优化,实现了物理机层面的多角度的立体优化,数据中心能耗优化策略指向性明确,精准降耗。
[0153]
可选地,如图7所示,所述基于所述能耗数据确定优化策略,对所述物理机的运行情况进行一次优化,获得第一优化结果还包括:
[0154]
s331:根据所述数据中心的数量以及每个所述数据中心中的所述物理机的数量建立开启数量约束条件;
[0155]
s332:根据所述数据中心和所述物理机的服务速率建立处理器运行频率约束条件;
[0156]
s333:根据所述数量约束条件和所述处理器运行频率约束条件约束所述第一优化结果。
[0157]
具体地,可以通过调整处于运行态的物理机数,即关闭多余的但仍在耗能的空闲物理机来实现数据中心能耗优化,并得到第一优化结果。通常小型数据中心包括几十至几百台物理机,使用mj(t)来表示t时刻数据中心j内处于运行态的物理机的数量,即剩下的m
j-mj(t)个空闲物理机被关闭
[0158]
但是大型数据中心包括成百上前台物理机,对于大型数据中心而言,开启数量约束条件可以表示为:
[0159]
0≤mj(t)≤mj,
[0160]
其中,mj(t)表示t时刻数据中心j内处于运行态的物理机的数量,j∈d,d={1,
2,
…
,n}表示n个数据中心,mj表示数据中心j内物理机的总数量。
[0161]
具体地,可以通过建立约束条件,调整数据中心和物理机的服务速率来优化数据中心能耗,并得到第一优化结果。约束条件可以包括约束服务速率与物理机最大服务速率的关系。例如处理器运行频率约束条件可以表示为:
[0162]
0≤μj(t)≤sj,
[0163]
其中,μj(t)表示t时刻数据中心j中处于运动态的物理机的服务速率,sj并表示物理机最大服务速率。
[0164]
可选地,为了保证t时刻分发到每个数据中心的用户请求能够被及时服务,处于运动态的物理机的服务速率必须满足如下的数据中心服务能力约束,即分发到数据中心j的总的用户请求数量不能超过数据中心j的服务能力,因此处理器运行频率约束条件可以表示为:
[0165][0166]
其中,r
ij
(t)表示从物理机i分发到数据中心j的用户请求数量,表示数据中心j中处于运动态的物理机的服务速率,mi表示处于运行态μj的第i个物理机。
[0167]
在本实施例中,通过建立开启数量约束条件和处理器运行频率约束条件来对物理机层面的能耗优化策略进行约束,进而约束数据中心能耗优化的第一结果,避免因单一的追求降低能耗使用不合理的优化策略而导致数据中心运行无法满足实际使用需求的问题,使得第一优化结果更加准确。
[0168]
可选地,如图8所示,所述分析所述第一优化结果中,各个物理机的运行情况,根据所述运行情况确定所述虚拟机的迁移策略包括:
[0169]
s410:获取所述物理机的使用率;
[0170]
s420:根据所述使用率对所述物理机进行排序,根据排列顺序获得绝对中位差;
[0171]
s430:根据预设的上限阈值、下限阈值、迁移需求值,以及所述绝对中位差确定所述虚拟机的所述迁移策略,其中,所述上限阈值和所述下限阈值表示所述物理机的处理器使用率的上下限阈值。
[0172]
具体地,获取物理机的使用率并根据使用率对其进行排序,排序后获取物理机使用率中位数,计算去全部物理机使用率与物理机使用率中位数的差值,并将差值的绝对值进行排序,获取绝对值的中位数即为绝对中位差。获得绝对中位差后根据预设的上限阈值、下限阈值、迁移需求值,确定虚拟机的迁移策略,迁移策略包括确定哪些物理机中的虚拟机需要迁移,如何迁移等。
[0173]
可选地,预设的上限阈值和下限阈值可以根据绝对中位差以及迁移需求值确定,上限阈值和下限阈值可以表示为:
[0174][0175]
其中,t
cealting
表示上限阀值,t
foor
表示下限阀值,虚拟机迁移整合的需求,n表示迁移需求值,mad表示绝对中位差。
[0176]
在本实施例中,通过物理机的使用率求得绝对中位差,绝对中位差可以作为一个
评估参考值,来评估物理机使用率的情况。并根据绝对中位差、预设上限阈值、下限阈值以及迁移需求值确定迁移策略,实现了物理机的使用率来和迁移策略的关联,可以更加精准的针对物理机使用率制定相应的迁移策略,实现迁移层面的能耗优化。
[0177]
可选地,如图9所示,所述根据预设的上限阈值、下限阈值、迁移需求值,以及所述绝对中位差确定所述虚拟机的所述迁移策略包括:
[0178]
s431:将超过所述上限阈值的物理机中的虚拟机拟加入至迁移队列准备迁移;
[0179]
s432:将低于所述下限阈值的物理机拟加入至受迁移队列,准备接受虚拟机的迁移。
[0180]
具体地,对比物理机使用率与上限阈值和下限阈值的关系,可以将使用率大于或等于上限阈值的物理机定义为过载状态,将使用率小于或等于下限阈值的物理机定义为低负载状态,将使用率小于上限阈值且大于下限阈值的物理机定义为正常状态。
[0181]
将超过上限阈值的物理机,即过载状态的物理机中的虚拟机拟加入至迁移队列准备迁移;将低于下限阈值的物理机,即低负载状态的物理机拟加入至受迁移队列,准备接受虚拟机的迁移。
[0182]
可选地,需要迁移的物理机的集合可以表示为:
[0183][0184]
其中,vm表示当前物理机sm上的虚拟机集合,e(vm)表示该物理机上虚拟机的能耗总和,um表示物理机当前cpu利用率,表示该物理机上虚拟机的利用率,t
cealting
表示上限阀值。
[0185]
在本实施例中,通过对比物理机使用率与上限阈值和下限阈值的关系,可以快速准确的找出由于负载分配不均衡而产生的过载状态物理机和低负载状态物理机,便于后续对负载重新进行分配,以解决物理机使用寿命缩短和低负载物理机造成的多余能耗浪费的问题。
[0186]
可选地,如图10所示,所述计算所述迁移策略的能耗,获得迁移能耗包括:
[0187]
s510:获取所述迁移队列中的虚拟机在其运行的物理机的处理器使用率、预设的迁移权重系数和迁移所需时间,记为第一使用率、第一权重和第一时间;
[0188]
s520:获取所述受迁移队列中的物理机的处理器使用率、预设的迁移权重系数和迁移所需时间,记为第二使用率、第二权重和第二时间;
[0189]
s530:基于所述第一使用率、所述第一权重和所述第一时间确定迁出能耗;
[0190]
s540:基于所述第二使用率、所述第二权重和所述第二时间确定迁入能耗;
[0191]
s550:根据所述迁出能耗和所述迁入能耗确定所述迁移能耗。
[0192]
具体地,预设的迁移权重系数可以为根据物理机所承担的负载的重要程度确定,例如,在负责治安管理的数据中心中,迁移队列中,承担涉及到报警求助等信息用户请求的虚拟机的迁移权重系数较高;迁移所述时间可以根据需要迁移的虚拟机中存储数据量的多少预估确定。获取迁移队列中的虚拟机在其运行的物理机的处理器使用率、预设的迁移权重系数和迁移所需时间,记为第一使用率、第一权重和第一时间,基于所述第一使用率、所
述第一权重和所述第一时间确定迁出能耗,迁出能耗可以表示为:
[0193][0194]
其中,e1表示迁出能耗,ui(t)表示表示迁移虚拟机在物理机i中的cpu使用率,α表示迁移虚拟机在物理机i中的权重系数,p为函数。
[0195]
获取受迁移队列中的物理机的处理器使用率、预设的迁移权重系数和迁移所需时间,记为第二使用率、第二权重和第二时间,基于所述第二使用率、所述第二权重和所述第二时间确定迁入能耗,迁入能耗可以表示为:
[0196][0197]
其中,e2表示迁入能耗,uj(t)表示表示迁移虚拟机在物理机j中的cpu使用率,β表示迁移虚拟机在物理机j中的权重系数,p为函数。
[0198]
根据所述迁出能耗和所述迁入能耗确定所述迁移能耗,迁移能耗可以表示为:
[0199][0200]
其中,e
migrate
表示迁移能耗。
[0201]
可选地,计算处于过载状态的物理机的使用率与上限阈值的差值,对比物理机中虚拟机的使用率与差值的关系,优先选择使用率大于差值的虚拟机进行迁移。迁移后,再次判断物理机的使用率与上限阈值、下限阈值的关系,若物理机的使用率仍大于上限阈值,则需要继续计算处于过载状态的物理机的使用率与上限阈值的差值,继续选择使用率大于差值的虚拟机进行迁移;若迁移后,物理机的使用率小于上限阈值且大于下限阈值,则迁移完成。
[0202]
在本实施例中,通过物理机的处理器使用率结合预设的迁移权重系数和迁移所需时间来计算迁移能耗,为虚拟机迁移层面的二次优化提供了基础依据,计算迁移能耗后还可以根据调整权重系数或迁移时间等参数来优化迁移策略,进而可以选择迁移能耗较小的策略作为二次优化结果,实现在虚拟机迁移层面的能耗优化。
[0203]
本发明又一实施例提供的一种控制系统,用于当使用控制系统时,实现对数据中心的能耗优化。如图11所示,在一个数据中心中,控制系统部署在一个独立的控制节点上。负责收集整个数据中心的运行状态并根据收集到信息对所有虚拟机进行调整,并发送调整命令给主机,控制系统也接受主机发送的虚拟机迁移请求,并给予反馈。
[0204]
可选地,控制系统通过监听指定的物理机端口,等待主机与其建立连接,并接受主机提交的数据。然后分析所有虚拟机的cpu配额和使用率、内存配额和使用率、以及负载信息等,当系统处在各个物理主机的使用率并不高,将低负载主机的虚拟机通过动态迁移合并到其他主机上来。
[0205]
可选地,如图12所示,控制系统包括有性能收集与管理模块,物理机资源分配模块,应用监控与反馈模块,虚拟机控制模块。
[0206]
性能收集于管理模块,用于通过实时的收集当前在该主机上的虚拟机的cpu配额和使用率、内存配额和使用率和网络配额和使用率,还负责收集主机的一个时期内的能耗用于反馈控制能耗。然后根据收集到的数据,向控制系统提交虚拟机性能信息。
[0207]
可选地,性能收集于管理模块还用于在发现物理机长时间处于空闲状态时或物理
机难以满足当前的虚拟机的对处理资源的需求时,主动向控制系统发送虚拟机迁移请求。
[0208]
应用监控与反馈模块,用于获取负载信息,包括获取单位时间内的请求数量和请求的响应时间。
[0209]
物理机资源分配模块,用于根据负载信息,通过调节cpu资源的配额,平衡物理机内虚拟机的资源分配。
[0210]
可选地,该部分也可以预设多种资源分配策略,例如根据历史数据分配,根据虚拟机资源使用特征进行分配的策略。
[0211]
虚拟机控制模块,用于对虚拟机的状态进行调节,并完成控制系统发送的虚拟机迁移命令。
[0212]
可选地,虚拟机控制模块还用于通过虚拟机监视器提供的编程接口实现虚拟机的开关机、暂停、挂起、迁移。
[0213]
在本实施例中,数据中心中部署的控制系统可以收集整个数据中心的运行状态并根据收集到信息对虚拟机进行主动调整,也可以接受虚拟机迁移请求并给予反馈。通过对虚拟机迁移的主动调整和被动反馈,平衡数据中心内虚拟机的资源分配,避免出现一部分物理机长时间过载而另一部分物理机长时间空闲的情况,进而达到显著降低数据中心能耗的效果。
[0214]
本发明通过根据数据中心中的物理机运行情况,计算数据中心的能耗数据,并基于能耗数据确定优化策略,实现对物理机运行情况的优化,即实现对数据中心能耗的一次优化;通过将物理机虚拟化为至少一个虚拟机,结合一次优化后的物理机运行情况确定虚拟机的迁移策略,并计算迁移策略的能耗,选择迁移能耗最小的策略对迁移能耗进行优化,即实现对数据中心能耗的二次优化。本发明根据物理机的运行情况,结合物理机运行层面的优化策略和虚拟机迁移层面的优化策略,对数据中心的资源进行多层次的优化配置,达到显著降低数据中心能耗的效果。
[0215]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。在本技术中,所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0216]
虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领域技术人员在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。