当前位置: 首页 > 专利查询>华侨大学专利>正文

一种面向性能和功耗平衡的数据中心虚拟机管理方法技术

技术编号:25802041 阅读:35 留言:0更新日期:2020-09-29 18:35
本发明专利技术公开了一种面向性能和功耗平衡的数据中心虚拟机管理方法,涉及计算机技术领域。该面向性能和功耗平衡的数据中心虚拟机管理方法,包括如下步骤:S1、实测获得数据中心虚拟机运行参数,其中参数包括:1.1、实测获得虚拟机在物理机上的启动时间

【技术实现步骤摘要】
一种面向性能和功耗平衡的数据中心虚拟机管理方法
本专利技术涉及计算机
,具体为一种面向性能和功耗平衡的数据中心虚拟机管理方法。
技术介绍
虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。在计算机中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量。每个虚拟机都有独立的CMOS、硬盘和操作系统,可以像使用实体机一样对虚拟机进行操作,虚拟机在使用时,需要通过数据中心对虚拟机的性能和功耗进行平衡管理。现有技术中,训练神经网络模型的方法采用的是监督学习法,即采用带标签的样本数据进行模型训练,但这种方法需要采用大量的带标签样本数据,同时难以很好的实现数据中心用户请求服务质量和虚拟机能耗之间的平衡。
技术实现思路
(一)解决的技术问题针对现有技术的不足,本专利技术提供了一种面向性能和功耗平衡的数据中心虚拟机管理方法,解决了现有技术中,训练神经网络模型的方法采用的是监督学习法,即采用带标签的样本数据进行模型训练,但这种方法需要采用大量的带标签样本数据,同时难以很好的实现数据中心用户请求服务质量和虚拟机能耗之间的平衡的问题。(二)技术方案为实现以上目的,本专利技术通过以下技术方案予以实现:一种面向性能和功耗平衡的数据中心虚拟机管理方法,包括如下步骤:S1、实测获得数据中心虚拟机运行参数,其中参数包括:1.1、实测获得虚拟机在物理机上的启动时间Tstart;1.2、根据客户对虚拟机的服务质量要求(如虚拟机处理客户请求的最长时间Treqmax),实测获得的单个虚拟机上可处理的最大客户请求数量Rmax;1.3、实测获得的针对单个客户请求的虚拟机所需的平均处理时间Treqmean;1.4、实测获得管理周期Tg(如1年)的第i个Tstart时间段内,客户请求数量Rgi;S2、确定虚拟机优化调度目标,其中包括:2.1、提高用户请求处理的响应率,即当客户请求到达时,能够立刻处理该客户请求的概率;2.2、减少启动的虚拟机数量;S3、定义数据中心虚拟机工作状态,具体操作如下:采用一个数组S[1..M]来定义数据中心虚拟机工作状态,数组的维度M,即数组的元素个数,M=Treqmean/Tstart。根据实测数据可知,通常Tstart在1分钟左右,而通常web应用的Treqmean在10分钟之内。所以通常M在10之内,状态数组S中的每个元素S[i],i大于等于1小于等于M,表示当前数据中心中所有启动的虚拟机上已经处理i*Tstart分钟且还没有处理完毕的用户请求数量;S4、定义数据中心虚拟机管理策略,包括:4.1、启动1台虚拟机;4.2、维持当前工作虚拟机数量不变;4.3、关闭1台虚拟机;S5、构造用于虚拟机管理的神经网络模型,生成神经网络模型,用于描述数据中心虚拟机工作状态和数据中心虚拟机管理策略之间的映射关系,模型的输入是数据中心虚拟机工作状态S[1..M],输出是3种虚拟机管理策略各自所被采用的概率,其中具体情况如下:5.1、神经网络模型的输入层,包括M个输入,对应数据中心虚拟机工作状态S[1..M]中的M个元素;5.2、神经网络模型的第一隐藏层是包含64个神经元的全连接层,激活函数是sigmoid,dropout设置为0.1;5.3、神经网络模型的第二隐藏层是包含32个神经元的全连接层,激活函数是sigmoid,dropout设置为0.1;5.4、神经网络模型的输出层是包含3个神经元的全连接层,激活函数是softmax,分别是3种虚拟机管理策略各自所被采用的概率;S6、训练用于虚拟机管理的神经网络模型,采用强化学习的方法,把生成高质量的训练样本和训练神经网络模型过程统一起来。具体过程如下;6.1、随机初始化神经网络模型的参数;6.2、参考实测数据Rg1生成第一批客户请求数量X1=Rg1,若X1/Rmax整除,则启动数量为X1/Rmax的虚拟机,若X1/Rmax有余数,则启动数量为X1/Rmax+1的虚拟机,例如X1=203,Rmax=100,则需要启动3台虚拟机,其中2台满负荷工作,1台运行3个客户请求并且其所闲置的处理能力能够处理97个下一批客户请求。此时数据中心虚拟机工作状态S1[1..M]=[X1,0,0,…,0];6.3、参考实测数据Rg2并加入随机性成下一批客户请求数量X2=0.9*Rg2+Δ,Δ是1和0.1*Rg2之间的随机数,加入Δ主要用于在多轮训练中引入随机性。把数据中心虚拟机工作状态S1[1..M]右移一个位置获得S2[1..M],S2[1..M]空出的左端第一个位置S2[1]填入新增的客户请求数量X2,S1[1..M]移除的右端第一个位置S1[M]作为处理完毕的客户请求而丢弃,即新的数据中心虚拟机工作状态S2[1..M]=[X2,X1,0,…,0];6.4、把数据中心虚拟机工作状态S2[1..M]=[X2,X1,0,…,0]输入到神经网络模型,获得神经网络模型输出为Output。由于Output是3种虚拟机管理策略各自所被采用的概率,由此可以获得概率最高的管理策略H。例如,Output={0.2,0.6,0.2},则最高概率Outputmax=0.6对应的管理策略H是第2种策略:维持当前工作虚拟机数量不变;6.5、参考实测数据Rg3并加入随机性生成下一批客户请求数量X3=0.9*Rg3+Δ,Δ是范围是1和0.1*Rg3之间的随机数,加入Δ主要用于在多轮训练中引入随机性。把数据中心虚拟机工作状态S2[1..M]右移一个位置获得S3[1..M],S3[1..M]空出的左端第一个位置S3[1]填入新增的客户请求数量X3,S2[1..M]移除的右端第一个位置S2[M]作为处理完毕的客户请求而丢弃,即新的数据中心虚拟机工作状态S3[1..M]=[X3,X2,X1,…,0];6.6、对于数据中心虚拟机工作状态从S2[1..M]=[X2,X1,0,…,0]转换到S3[1..M]=[X3,X2,X1,…,0],分析6.4步骤下选择不同的策略时,所获得的回报Reward=β*1/Ridle-α*Rwait,即执行不同虚拟机管理策略之后,所得到的等待虚拟机处理的客户请求数量Rwait和工作虚拟机的闲置处理能力Ridle。β和α是相应的可调整的权值参数;6.7、把新的数据中心虚拟机工作状态S3[1..M]=[X3,X2,X1,…,0]输入到神经网络模型,获得神经网络模型新状态下的输出为Output,并获得Output中的最大值Outputmax;6.8、利用6.6步骤下针对三种不同策略下获得三个回报值Reward1,Reward2,Reward3以及6.7步骤下得到的Outputmax,构造数据中心虚拟机工作状态S2[1..M]=[X2,X1,0,…,0]下更符合实际的Output’,Output本文档来自技高网...

【技术保护点】
1.一种面向性能和功耗平衡的数据中心虚拟机管理方法,其特征在于:包括如下步骤:/nS1、实测获得数据中心虚拟机运行参数,其中参数包括:/n1.1、实测获得虚拟机在物理机上的启动时间

【技术特征摘要】
1.一种面向性能和功耗平衡的数据中心虚拟机管理方法,其特征在于:包括如下步骤:
S1、实测获得数据中心虚拟机运行参数,其中参数包括:
1.1、实测获得虚拟机在物理机上的启动时间Tstart;
1.2、根据客户对虚拟机的服务质量要求(如虚拟机处理客户请求的最长时间Treqmax),实测获得的单个虚拟机上可处理的最大客户请求数量Rmax;
1.3、实测获得的针对单个客户请求的虚拟机所需的平均处理时间Treqmean;
1.4、实测获得管理周期Tg(如1年)的第i个Tstart时间段内,客户请求数量Rgi;
S2、确定虚拟机优化调度目标,其中包括:
2.1、提高用户请求处理的响应率,即当客户请求到达时,能够立刻处理该客户请求的概率;
2.2、减少启动的虚拟机数量;
S3、定义数据中心虚拟机工作状态,具体操作如下:
采用一个数组S[1..M]来定义数据中心虚拟机工作状态,数组的维度M,即数组的元素个数,M=Treqmean/Tstart。根据实测数据可知,通常Tstart在1分钟左右,而通常web应用的Treqmean在10分钟之内。所以通常M在10之内,状态数组S中的每个元素S[i],i大于等于1小于等于M,表示当前数据中心中所有启动的虚拟机上已经处理i*Tstart分钟且还没有处理完毕的用户请求数量;
S4、定义数据中心虚拟机管理策略,包括:
4.1、启动1台虚拟机;
4.2、维持当前工作虚拟机数量不变;
4.3、关闭1台虚拟机;
S5、构造用于虚拟机管理的神经网络模型,生成神经网络模型,用于描述数据中心虚拟机工作状态和数据中心虚拟机管理策略之间的映射关系,模型的输入是数据中心虚拟机工作状态S[1..M],输出是3种虚拟机管理策略各自所被采用的概率,其中具体情况如下:
5.1、神经网络模型的输入层,包括M个输入,对应数据中心虚拟机工作状态S[1..M]中的M个元素;
5.2、神经网络模型的第一隐藏层是包含64个神经元的全连接层,激活函数是sigmoid,dropout设置为0.1;
5.3、神经网络模型的第二隐藏层是包含32个神经元的全连接层,激活函数是sigmoid,dropout设置为0.1;
5.4、神经网络模型的输出层是包含3个神经元的全连接层,激活函数是softmax,分别是3种虚拟机管理策略各自所被采用的概率;
S6、训练用于虚拟机管理的神经网络模型,采用强化学习的方法,把生成高质量的训练样本和训练神经网络模型过程统一起来。具体过程如下;
6.1、随机初始化神经网络模型的参数;
6.2、参考实测数据Rg1生成第一批客户请求数量X1=Rg1,若X1/Rmax整除,则启动数量为X1/Rmax的虚拟机,若X1/Rmax有余数,则启动数量为X1/Rmax+1的虚拟机,例如X1=203,Rmax=100,则需要启动3台虚拟机,其中2台满负荷工作,1台运行3个客户请求并且其所闲置的处理能力能够处理97个下一批客户请求。此时数据中心虚拟机工作状态S1[1..M]=[X1,0,0,…,0];
6.3、参考实测数据Rg2并加入随机性成下一批客户请求数量X2=0.9*Rg2+Δ,Δ是1和0.1*Rg2之间的随机数,加入Δ主要用于在多轮训练中引入随机性。把数据中心虚拟机工作状态S1[1..M]右移一个位置获得S2[1..M],S2[1..M]空出的左端第一个位置S2[1]填入新增的客户请求数量X2,S1[1..M]移除的右端第一个位置S1[M]作为处理完毕的客户请求而丢弃,即新的数据中心虚拟机工作状态S2[1..M]=[X2,X1,0,…,0];
6.4、把数据中心虚拟机工作状态S2[1..M]=[X2,X1,0,…,0]输入到神经网络模型,获得神经网络模型输出为Output。由于Output是3种虚拟机管理策略各自所被采用的概率,由此可以获得概率最高的管理策略H。例如,Output={0.2,0.6,0.2},则最高概率Outputmax=0.6对应的管理策略H是第2种策略:维持当前工作虚拟机数量不变;
6.5、参考实测数据Rg3并加入随机性生成下一批客户请求数量X3=0.9*Rg3+Δ,Δ是范围是1和0.1*Rg3之间的随机数,加入Δ主要用于在多轮训练中引入随机性。把数据中心虚拟机工作状态S2[1..M]右移一个位置获...

【专利技术属性】
技术研发人员:莫毓昌
申请(专利权)人:华侨大学国富瑞福建信息技术产业园有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1