The embodiment of the invention provides an input / output flow control method and device, relates to the field of computer controlled by bandwidth of virtual machine migration task, can effectively reduce the impact on the internal business of the virtual machine, virtual machine to ensure the normal operation of the internal business. The specific program: first according to the implementation of the external business virtual machine in the N time can use the bandwidth limit of adjustment to execute the business execution bandwidth for the bandwidth available bandwidth limit, and monitor the implementation of the business performance data, data storage when the execution of the business at the time N the amount of bandwidth used and all virtual machines has the use of bandwidth; and then get the N+1 time to execute the business can use the bandwidth limit, the execution of the business in the N+1 time, the N+1 time used to execute the business when the bandwidth is not more than N+1 times the execution of the business can use the bandwidth limit. The invention is used to control input / output traffic.
【技术实现步骤摘要】
本专利技术涉及计算机领域,尤其涉及一种输入/输出流量控制方法及设备。
技术介绍
目前,大型的服务器上能够运行很多虚拟机,虚拟化集群动态资源调度可以将服务器集群中多个计算节点(物理服务器)的计算资源、内存资源及存储资源统一管理,通过利用虚拟机迁移技术(将虚拟机在不同物理服务器及不同存储介质之间进行迁移),虚拟化集群动态资源调度将虚拟机在不同物理服务器及不同存储介质上进行迁移,及时消除资源使用热点,提高资源的利用率。现有技术对虚拟机的存储I/O(Input/Output,输入/输出)控制包括两个方面,一方面,调整存储资源以满足业务需求:通过配置规则和策略以指定每个虚拟机的业务优先级,当检测到I/O拥塞时,存储I/O控制会根据规则向虚拟机动态分配可用I/O资源,从而提高关键应用的服务级别;另一方面,自动执行存储分配:对某个数据存储启用存储I/O控制后,将会开始监控主机在与该数据存储通信时观察到的设备延迟,当延迟超过设定的阈值时,系统会为访问该 ...
【技术保护点】
一种输入/输出流量控制方法,其特征在于,包括:根据在第N时刻执行虚拟机外部业务可使用的带宽上限调整执行所述虚拟机外部业务的带宽使得所述执行所述虚拟机外部业务的带宽不超过所述可使用的带宽上限,并监测在第N时刻执行所述虚拟机外部业务时数据存储的性能数据、执行所述虚拟机外部业务的带宽使用量以及所有虚拟机已使用的带宽,其中,N≥1且N为整数;根据在第N时刻执行所述虚拟机外部业务时数据存储的性能数据、执行所述虚拟机外部业务的带宽使用量以及所述所有虚拟机已使用的带宽获取第N+1时刻执行所述虚拟机外部业务可使用的带宽上限,以使得在第N+1时刻执行所述虚拟机外部业务时,根据所述第N+1时刻 ...
【技术特征摘要】
1.一种输入/输出流量控制方法,其特征在于,包括:
根据在第N时刻执行虚拟机外部业务可使用的带宽上限调整执行
所述虚拟机外部业务的带宽使得所述执行所述虚拟机外部业务的带宽
不超过所述可使用的带宽上限,并监测在第N时刻执行所述虚拟机外
部业务时数据存储的性能数据、执行所述虚拟机外部业务的带宽使用
量以及所有虚拟机已使用的带宽,其中,N≥1且N为整数;
根据在第N时刻执行所述虚拟机外部业务时数据存储的性能数
据、执行所述虚拟机外部业务的带宽使用量以及所述所有虚拟机已使
用的带宽获取第N+1时刻执行所述虚拟机外部业务可使用的带宽上
限,以使得在第N+1时刻执行所述虚拟机外部业务时,根据所述第N+1
时刻执行所述虚拟机外部业务可使用的带宽上限对执行所述虚拟机外
部业务所使用的带宽进行调整,使在所述第N+1时刻执行所述虚拟机
外部业务所使用的带宽不超过所述第N+1时刻执行所述虚拟机外部业
务可使用的带宽上限。
2.根据权利要求1所述的方法,其特征在于,在所述根据在第N
时刻执行虚拟机外部业务可使用的带宽上限执行所述虚拟机外部业务
之前,所述方法还包括:
判断所述虚拟机外部业务是否满足执行条件;
若所述虚拟机外部业务不满足所述执行条件,则暂不执行所述虚
拟机外部业务,并在预设时间间隔后再次执行所述判断所述虚拟机外
部业务是否满足执行条件;
若所述虚拟机外部业务满足所述执行条件,则获取执行所述虚拟
机外部业务的初始带宽上限,所述初始带宽上限为所述N等于1时执
行所述虚拟机外部业务可使用的带宽上限。
3.根据权利要求1或2所述的方法,其特征在于,
所述根据在第N时刻执行所述虚拟机外部业务时数据存储的性能
数据、执行所述虚拟机外部业务的带宽使用量以及所述所有虚拟机已
使用的带宽获取第N+1时刻执行所述虚拟机外部业务可使用的带宽上
限,以使得在第N+1时刻执行所述虚拟机外部业务时,根据所述第N+1
时刻执行所述虚拟机外部业务可使用的带宽上限对执行所述虚拟机外
部业务所使用的带宽进行调整,使在所述第N+1时刻执行所述虚拟机
外部业务所使用的带宽不超过所述第N+1时刻执行所述虚拟机外部业
务可使用的带宽上限之后,所述方法还包括:
判断所述虚拟机外部业务是否结束,若未结束,则将所述N值加
1并重复执行根据第N时刻可使用带宽上限调整执行带宽并监测所述
第N时刻时相关数据的步骤以及根据第N时刻时监测得到的相关数据
获取第N+1时刻可使用带宽上限并调整所述第N+1时刻时执行带宽不
超过所述第N+1时刻可使用带宽上限的步骤直至所述虚拟机外部业务
结束。
4.根据权利要求1所述的方法,其特征在于,所述虚拟机外部业
务为第一节点内的单节点虚拟机迁移,
所述根据在第N时刻执行虚拟机外部业务可使用的带宽上限调整
执行所述虚拟机外部业务的带宽使得所述执行所述虚拟机外部业务的
带宽不超过所述可使用的带宽上限,并监测在第N时刻执行所述虚拟
机外部业务时数据存储的性能数据、执行所述虚拟机外部业务的带宽
使用量以及所有虚拟机已使用的带宽,包括:
根据在所述第N时刻执行所述单节点虚拟机迁移可使用的带宽上
限调整执行所述单节点虚拟机迁移的带宽使得所述执行所述单节点虚
拟机迁移的带宽不超过所述可使用的带宽上限,并监测在所述第N时
刻执行所述单节点虚拟机迁移时所述第一节点的数据存储的性能数
据、所述第一节点上执行所述单节点虚拟机迁移的带宽使用量以及所
述第一节点上所有虚拟机已使用的带宽;
所述根据在第N时刻执行所述虚拟机外部业务时数据存储的性能
数据、执行所述虚拟机外部业务的带宽使用量以及所述所有虚拟机已
使用的带宽获取第N+1时刻执行所述虚拟机外部业务可使用的带宽上
限,以使得在第N+1时刻执行所述虚拟机外部业务时,根据所述第N+1
时刻执行所述虚拟机外部业务可使用的带宽上限对执行所述虚拟机外
部业务所使用的带宽进行调整,使在所述第N+1时刻执行所述虚拟机
外部业务所使用的带宽不超过所述第N+1时刻执行所述虚拟机外部业
务可使用的带宽上限,包括:
根据在所述第N时刻执行所述单节点虚拟机迁移时所述第一节点
的数据存储的性能数据、所述第一节点上执行所述单节点虚拟机迁移
的带宽使用量以及所述第一节点上所有虚拟机已使用的带宽作为带宽
迭代算法的输入参数获取所述第N+1时刻所述第一节点上执行所述单
节点虚拟机迁移的可使用的带宽上限,以使得在第N+1时刻执行所述
单节点虚拟机迁移时,根据所述第N+1时刻执行所述单节点虚拟机迁
\t移可使用的带宽上限对执行所述单节点虚拟机迁移所使用的带宽进行
调整,使在所述第N+1时刻执行所述单节点虚拟机迁移所使用的带宽
不超过所述第N+1时刻执行所述单节点虚拟机迁移可使用的带宽上
限。
5.根据权利要求1所述的方法,其特征在于,所述虚拟机外部业
务为第一节点与第二节点之间的双节点虚拟机迁移,
所述根据在第N时刻执行虚拟机外部业务可使用的带宽上限调整
执行所述虚拟机外部业务的带宽使得所述执行所述虚拟机外部业务的
带宽不超过所述可使用的带宽上限,并监测在第N时刻执行所述虚拟
机外部业务时数据存储的性能数据、执行所述虚拟机外部业务的带宽
使用量以及所有虚拟机已使用的带宽,包括:
根据在所述第N时刻执行所述双节点虚拟机迁移可使用的带宽上
限调整执行所述双节点虚拟机迁移的带宽使得所述执行所述双节点虚
拟机迁移的带宽不超过所述可使用的带宽上限,并分别监测在所述第N
时刻执行所述双节点虚拟机迁移时所述第一节点和所述第二节点的数
据存储的性能数据,分别监测所述第一节点和所述第二节点上执行所
述双节点虚拟机迁移的带宽使用量,以及分别监测所述第一节点和所
述第二节点上所有虚拟机已使用的带宽;
所述根据在第N时刻执行所述虚拟机外部业务时数据存储的性能
数据、执行所述虚拟机外部业务的带宽使用量以及所述所有虚拟机已
使用的带宽获取第N+1时刻执行所述虚拟机外部业务可使用的带宽上
限,以使得在第N+1时刻执行所述虚拟机外部业务时,根据所述第N+1
时刻执行所述虚拟机外部业务可使用的带宽上限对执行所述虚拟机外
部业务所使用的带宽进行调整,使在所述第N+1时刻执行所述虚拟机
外部业务所使用的带宽不超过所述第N+1时刻执行所述虚拟机外部业
务可使用的带宽上限,包括:
根据在所述第N时刻执行所述双节点虚拟机迁移时所述第一节点
的数据存储的性能数据、所述第一节点上执行所述双节点虚拟机迁移
的带宽使用量以及所述第一节点上所有虚拟机已使用的带宽作为带宽
迭代算法的输入参数获取所述第N+1时刻在所述第一节点上执行所述
双节点虚拟机迁移的可使用的第一带宽上限,以使得在第N+1时刻在
所述第一节点上执行所述双节点虚拟机迁移时,根据所述第N+1时刻
在所述第一节点上执行所述双节点虚拟机迁移可使用的第一带宽上限
\t对在所述第一节点上执行所述双节点虚拟机迁移所使用的带宽进行调
整,使在所述第N+1时刻在所述第一节点上执行所述双节点虚拟机迁
移所使用的带宽不超过所述第N+1时刻在所述第一节点上执行所述双
节点虚拟机迁移的可使用的第一带宽上限;
根据在所述第N时刻执行所述双节点虚拟机迁移时所述第二节点
的数据存储的性能数据、所述第二节点上执行所述双节点虚拟机迁移
的带宽使用量以及所述第二节点上所有虚拟机已使用的带宽作为带宽
迭代算法的输入参数获取所述第N+1时刻在所述第二节点上执行所述
双节点虚拟机迁移的可使用的第二带宽上限,以使得在第N+1时刻在
所述第二节点上执行所述双节点虚拟机迁移时,根据所述第N+1时刻
在所述第二节点上执行所述双节点虚拟机迁移可使用的第二带宽上限
对在所述第二节点上执行所述双节点虚拟机迁移所使用的带宽进行调
整,使在所述第N+1时刻在所述第二节点上执行所述双节点虚拟机迁
移所使用的带宽不超过所述第N+1时刻在所述第二节点上执行所述双
节点虚拟机迁移的可使用的第二带宽上限;
若所述第一带宽上限与所述第二带宽上限相同,则将所述第一带
宽上限或所述第二带宽上限作为所述第一节点和所述第二节点上所述
第N+1时刻执行所述双节点虚拟机迁移可使用的带宽上限;
若所述第一带宽上限与所述第二带宽上限不相同,则将所述第一
带宽上限与所述第二带宽上限中的最小值作为所述第一节点和所述第
二节点上所述第N+1时刻执行所述双节点虚拟机迁移可使用的带宽上
限。
6.根据权利要求2所述的方法,其特征在于,所述虚拟机外部业
务为第一节点内的单节点虚拟机迁移,所述判断所述虚拟机外部业务
是否满足执行条件包括:
判断所述第一节点上所有业务使用的平均带宽是否大于预先设置
的每个单节点上所有业务需使用的最小平均带宽,或,判断所述第一
节点上所有业务使用的带宽总和是否小于预先设置的每个单节点上所
有业务可使用的带宽总和上限;
若所述第一节点上所有业务使用的平均带宽大于所述最小平均带
宽,或,所述第一节点上所有业务使用的带宽总和小于所述带宽总和
上限,则确定所述单节点虚拟机迁移满足执行条件。
7.根据权利要求2所述的方法,其特征在于,所述虚拟机外部业
\t务为第一节点与第二节点之间的双节点虚拟机迁移,所述判断所述虚
拟机外部业务是否满足执行条件包括:
判断所述第一节点上所有业务使用的平均带宽是否大于预先设置
的每个单节点上所有业务需使用的最小平均带宽,或,判断所述第一
节点上所有业务使用的带宽总和是否小于每个单节点上所有业务能使
用的带宽总和上限;
判断所述第二节点上所有业务使用的平均带宽是否大于预先设置
的最小平均带宽,或,判断所述第二节点上所有业务使用的带宽总和
是否小于预先设置的带宽总和上限;
若所述第一节点上所有业务使用的平均带宽大于所述最小平均带
宽,或,所述第一节点上所有业务使用的带宽总和小于所述带宽总和
上限,并且,所述第二节点上所有业务使用的平均带宽大于所述最小
平均带宽,或,所述第二节点上所有业务使用的带宽总和小于所述带
宽总和上限,则确定所述双节点虚拟机迁移满足执行条件。
8.根据权利要求2所述的方法,其特征在于,所述虚拟机外部业
务为第一节点内的单节点虚拟机迁移,所述获取执行所述虚拟机外部
业务的初始带宽上限包括:
若所述第一节点上除虚拟机内部业务以外,无任何其他虚拟机外
部业务,则第一个到达的所述虚拟机外部业务的初始带宽上限大于预
先设置的每个单节点上虚拟机外部业务能使用的最小带宽且小于预先
设置的每个单节点上虚拟机外部业务能使用的最大带宽;或
第一个到达的所述虚拟机外部业务的初始带宽上限小于预先设置
的每个单节点上虚拟机外部业务能使用的最小带宽;或
第一个到达的所述虚拟机外部业务的初始带宽上限为剩余带宽,
所述剩余带宽所述第一节点的存储设备的总带宽减去所述第一节点上
所有虚拟机已经使用的带宽后剩余的带宽;
若所述第一节点上只有一个虚拟机外部业务正在处理时,则根据
第一初始带宽算法计算当前待处理的所述虚拟机外部业务的初始带宽
上限;
若所述第一节点上,有多项虚拟机外部业务同时在并发处理时,
则根据第二初始带宽算法计算当前待处理的所述虚拟机外部业务的初
始带宽上限。
9.根据权利要求2所述的方法,其特征在于,所述虚拟机外部业
\t务为第一节点与第二节点之间的双节点虚拟机迁移,所述获取执行所
述虚拟机外部业务的初始带宽上限包括:
若所述第一节点上除虚拟机内部业务以外,无任何其他虚拟机外
部业务,则第一个到达的所述虚拟机外部业务的初始带宽上限大于预
先设置的每个单节点上虚拟机外部业务能使用的最小带宽且小于预先
设置的每个单节点上虚拟机外部业务能使用的最大带宽;或
第一个到达的所述虚拟机外部业务的初始带宽上限小于预先设置
的每个单节点上虚拟机外部业务能使用的最小带宽;或
第一个到达的所述虚拟机外部业务的初始带宽上限为剩余带宽,
所述剩余带宽所述第一节点的存储设备的总带宽减去所述第一节点上
所有虚拟机已经使用的带宽后剩余的带宽;
若所述第一节点上只有一个虚拟机外部业务正在处理时,则根据
第一初始带宽算法计算当前待处理的所述虚拟机外部业务的初始带宽
上限;
若所述第一节点上,有多项虚拟机外部业务同时在并发处理时,
则根据第二初始带宽算法计算当前待处理的所述虚拟机外部业务的初
始带宽上限;
若所述第二节点上除虚拟机内部业务以外,无任何其他虚拟机外
部业务,则第一个到达的所述虚拟机外部业务的初始带宽上限大于预
先设置的每个单节点上虚拟机外部业务能使用的最小带宽且小于预先
设置的每个单节点上虚拟机外部业务能使用的最大带宽;或
第一个到达的所述虚拟机外部业务的初始带宽上限小于预先设置
的每个单节点上虚拟机外部业务能使用的最小带宽;或
第一个到达的所述虚拟机外部业务的初始带宽上限为剩余带宽,
所述剩余带宽所述第二节点的存储设备的总带宽减去所述第二节点上
所有虚拟机已经使用的带宽后剩余的带宽;
若所述第二节点上只有一个虚拟机外部业务正在处理时,则根据
所述第一初始带宽算法计算当前待处理的所述虚拟机外部业务的初始
带宽上限;
若所述第二节点上,有多项虚拟机外部业务同时在并发处理时,
则根据所述第二初始带宽算法计算当前待处理的所述虚拟机外部业务
的初始带宽上限;
若获取的所述第一节点上执行所述虚拟机外部业务的第一初始带
\t宽上限与获取的所述第二节点上执行所述虚拟机外部业务的第二初始
带宽上限相同,则将所述第一初始带宽上限或所述第二初始带宽上限
作为所述第一节点和所述第二节点上执行所述虚拟机外部业务的初始
带宽上限;
若所述第一初始带宽上限与所述第二初始带宽上限不相同,则将
所述第一初始带宽上限与所述第二初始带宽上限中的最小值作为所述
第一节点和所述第二节点上执行所述虚拟机外部业务的初始带宽上
限。
10.根据权利要求4或5所述的方法,其特征在于,所述带宽迭
代算法包括:
Ti(t)=(1―μ)×Ti(t-1)+μ×(Δ÷E(t-1)×θ×Ti(t-1)+β)
其中,Ti(t)为第i个迁移业务在t时刻可使用的带宽使用量,Ti(t
-1)为第i个迁移业务在(t-1)时刻可使用的带宽使用量,E(t-1)为(t-1)
时刻数据存储的性能数据,μ为加权平均因子,Δ为判断数据存储是否
达到瓶颈的性能数据阈值,θ为衡量在线虚拟机带宽使用趋势的参数,
,Bvm(t)为所有在线虚拟机在t时刻所使用的存储带宽量,β
表示指定I/O业务的优先级权值,β的设置范围为0~4。
11.根据权利要求8或9所述的方法,其特征在于,所述第一初
始带宽算法和所述第二初始带宽算法包括:
所述第一初始带宽算法包括:T1=(W1/W2)×T2
其中,T1为当前待处理的虚拟机外部业务的初始带宽上限,T2、
W2分别为正在处理的虚拟机外部业务的带宽和权重,W1为当前待处
理的虚拟机外部业务的权重,Tmin1为预先设置的每个单节点上虚拟机
外部业务能使用的最小带宽,Tmax为预先设置的每个单节点上虚拟机
外部业务能使用的最大带宽;当T1<Tmin1时,则设置T1=Tmin1,
当T1>Tmax时,则设置T1=Tmax;
所述...
【专利技术属性】
技术研发人员:柳永强,陈增溪,于璠,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。