虚拟机映射方法及系统的制作方法

文档序号:10686893阅读:571来源:国知局
虚拟机映射方法及系统的制作方法
【专利摘要】本发明提供了一种虚拟机映射方法及系统,基于公式求解其中,m为所述虚拟机的总数;K为资源的种类总数;表示第i个所述虚拟机所需要的第j种资源的量,表示第o个物理服务器的第j种资源的预设阈值,1≤i≤m,1≤j≤K,1≤o≤n,n为物理服务器的总数;为一n维行向量,其仅一个分量为1,其余分量为0,若的第q个分量为1,则表示第p个所述虚拟机应映射在第q个所述物理服务器上,1≤p≤m,1≤q≤n;根据求解得到的解进行虚拟机映射。
【专利说明】
虚拟机映射方法及系统
技术领域
[0001] 本发明属于互联网技术领域,具体涉及一种虚拟机映射方法及系统。
【背景技术】
[0002] 所谓虚拟机映射是指将承载用户应用的多个虚拟机各自映射到合适的物理服务 器上。虚拟机映射过程是一个很重要的过程,其对资源热点出现概率、物理机的使用数量和 资源利用率均存在影响。
[0003] 目前,亟需一种能够实现快速合理映射的虚拟机映射方法和系统。

【发明内容】

[0004] 本发明旨在至少解决现有技术中存在的技术问题之一,提出了一种虚拟机映射方 法及系统。
[0005] 为解决上述问题之一,本发明提供了 一种虚拟机映射方法,包括:基于公式
其中,m为所述虚拟机 的总数;K为资源的种类总数;R丨表示第i个所述虚拟机所需要的第j种资源的量,Qi表示第〇 个物理服务器的第j种资源的预设阈值,1<1<!11,1<_]_<1(,1<〇<11,11为物理服务器的总 数;g为一 n维行向量,其仅一个分量为1,其余分量为0,若又;的第q个分量为1,则表示第p 个所述虚拟机应映射在第q个所述物理服务器上,1 ,1 < q$n;根据求解得到的解进 行虚拟机映射。
[0006] 优选地,若求解得到多个解,则根据求解得到的解进行虚拟机映射,包括:根据每 个解计算该解情况下所需的每个所述物理服务器的每种资源的资源利用率,并确定资源利 用率的最小值;比较各个解对应的资源利用率的最小值,并在多个解中选择最大值的资源 利用率对应的解;根据选择的解进行虚拟机映射。
[0007] 优选地,若求解无解,则还包括:添加所述物理服务器;在添加物理服务器的基础 上,再次基于所述公式进行求解。
[0008] 优选地,若求解出多个解,则根据求解得到的解进行虚拟映射,包括:在求解得到 的所有解中选择秩最小的解;根据选择的解进行虚拟映射。
[0009] 优选地,若选择的秩最小的解的数量为多个,则根据选择的解进行虚拟映射,包 括:根据每个解计算该解情况下所需的所述物理服务器所有资源的资源总数;根据资源总 数最小对应的解进行虚拟映射。
[0010] 优选地,所述公式还可以为:
[0012] 其中,5为每个服务器的每种资源的利用率,
[0013] Ai表示第〇个物理服务器的第j种资源的量;1彡j彡K,l?n。
[0014] 本发明还提供一种虚拟机映射系统,包括求解模块和映射模块,
[0015]所述求解模块,被设置成:基于公式
[0017] 其中,m为所述虚拟机的总数;K为资源的种类总数;Ri表示第i个所述虚拟机所需 要的第j种资源的量,Qi表示第〇个物理服务器的第j中资源的预设阈值, l$o<n,n为物理服务器的总数;元;为一 n维行向量,其仅一个分量为1,其余分量为0,,若 f的第q个分量为1,则表示第P个所述虚拟机应映射在第q个所述物理服务器上,Kp<m, 1 ;所述映射模块,用于根据求解得到的解进行虚拟机映射。
[0018] 优选地,所述映射模块包括:计算确定子模块,用于一旦所述求解模块求解得出多 个解,则根据每个解计算该解情况下所需的每个所述物理服务器的每种资源的资源利用 率,并确定资源利用率的最小值;比较选择子模块,用于比较各个解对应的资源利用率的最 小值,并在多个解中选择最大值的资源利用率对应的解;映射子模块,用于根据选择的解进 行虚拟机映射。
[0019]优选地,还包括:添加模块,用于一旦所述求解模块求解无解,则添加所述物理服 务器;所述求解模块,还用于在添加物理服务器的基础上,再次基于所述公式进行求解。
[0020]优选地,所述映射模块包括:选择子模块,用于一旦所述求解模块求解得出多个 解,则在求解得到的所有解中选择秩最小的解;映射子模块,用于根据选择的解进行虚拟映 射。
[0021 ]优选地,所述映射子模块包括:计算子单元,用于根据每个解计算该解情况下所需 的所述物理服务器所有资源的资源总数;映射子单元,用于根据资源总数最小对应的解进 行虚拟映射。
[0022] 优选地,所述公式还可以为:
[0024] 其中,3为每个服务器的每种资源的利用率,〇< @嗒1;
[0025] <表示第〇个物理服务器的第j种资源的量;1彡j$K,l<o彡n。本发明具有以下有 益效果:
[0026] 本发明提供的虚拟机映射方法及系统,其假设一个n维列向量g表示一个所述虚 拟机映射在n个物理服务器上的映射策略,并基于本文公式求解g,即可得出虚拟机映射 在物理服务器上的映射策略,基于该解即可进行虚拟机映射,这样,实现在多维度上利用线 性规划求解映射策略,因而能够快速地得到合理的映射策略,从而能够根据该映射策略快 速地进行合理地虚拟机映射。
【附图说明】
[0027] 图1为本发明实施例1提供的虚拟机映射方法的流程图;
[0028] 图2为本发明实施例2提供的虚拟机映射方法的流程图;
[0029] 图3为本发明实施例3提供的虚拟机映射系统的原理框图;
[0030] 图4为本发明实施例4提供的虚拟机映射系统的原理框图。
【具体实施方式】
[0031] 为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图来对本发明 提供的虚拟机映射方法及系统进行详细描述。
[0032] 实施例1
[0033]图1为本发明实施例1提供的虚拟机映射方法的流程图;请参阅图1,本实施例提供 的虚拟机映射方法包括以下步骤:S1,基于公式
[0035] 其中,其中,m为所述虚拟机的总数;K为资源的种类总数;
[0036] Rf表示第i个所述虚拟机所需要的第j种资源的量,
[0037] Qi表示第〇个物理服务器的第j种资源的预设阈值,l<i<m,l<j<K,l<o<n,n 为物理服务器的总数;
[0038] X#为一n维行向量,其仅一个分量为1,其余分量为0,,若的第q个分量为1,则 表示第P个所述虚拟机应映射在第q个所述物理服务器上,l<P<m,l<q<n。
[0039]在此需要说明的是,Qi表示第〇个物理服务器的第j中资源的预设阈值,也即上限 值,当然,在实际应用中,上述公式还可以为:
[0041] 其中,0为每个服务器的每种资源的利用率,0<夂<1;
[0042] 表示第〇个物理服务器的第j种资源的量;1彡j彡K,l<〇彡n。
[0043]该公式与上文公式相比,本公式在于每个物理服务器的每种资源的资源利用率均 相同,且资源利用率*总资源=上述预设阈值。
[0044] S2,根据求解得到的解进行虚拟机映射。
[0045] 本发明实施例提供的虚拟机映射方法,其假设一个n维列向量g表示一个所述虚 拟机映射在n个物理服务器上的映射策略,并基于本文上述公式求解^^卩可得出虚拟机 映射在物理服务器上的映射策略,基于该解即可进行虚拟机映射,这样,实现在多维度上利 用线性规划求解映射策略,因而能够快速地得到合理的映射策略,从而能够根据该映射策 略快速地进行合理地虚拟机映射。
[0046] 优选地,若步骤S1中求解得到多个解,则步骤S2,包括:
[0047] S21,根据每个解计算该解情况下所需的每个所述物理服务器的每种资源的资源 利用率,并确定资源利用率的最小值。
[0048] S22,比较各个解对应的资源利用率的最小值,并在多个解中选择最大值的资源利 用率对应的解。
[0049] S23,根据选择的解进行虚拟机映射。
[0050] 可以理解的是,本发明实施例提供的虚拟机映射方法借助该步骤S21~S23,实现 虚拟机的负载均衡映射,因此,保证了物理服务器的各种资源的高效利用且可避免出现资 源热点。
[0051 ]还优选地,若步骤S1求解无解,则还包括:
[0052] S3,添加所述物理服务器;
[0053] S4,在添加物理服务器的基础上,再次基于所述公式进行求解。
[0054]可以理解的是,本发明实施例提供的虚拟机映射方法借助该步骤S3~S4,可解决 求解过程无解的原因是物理服务器的数量不够的问题,因而能够进一步保证虚拟机映射的 可靠性。
[0055] 实施例2
[0056] 图2为本发明实施例2提供的虚拟机映射方法的流程图;请参阅图2,本实施例2提 供的虚拟机映射方法与上述实施例1提供的虚拟机映射方法同样包括步骤S1和步骤S2,在 此不再赘述。
[0057] 下面仅描述本发明实施例2和上述实施例1的不同点。具体地,若步骤S1求解出多 个解,则步骤S2包括:
[0058] S21,在求解得到的所有解中选择秩最小的解。其中,秩最小的解表示该解所需要 的物理服务器的数量最少。
[0059] S22,根据选择的解进行虚拟映射。
[0060]可以理解的是,本发明实施例提供的虚拟机映射方法借助该步骤S21~S22,可以 尽可能地减少物理服务器的数量,从而可以降低成本。
[0061 ]进一步地,若步骤S21中选择的秩最小的解的数量为多个,则步骤S22,包括:
[0062] S221,根据每个解计算该解情况下所需的所述物理服务器所有资源的资源总数;
[0063] S222,根据资源总数最小对应的解进行虚拟映射。
[0064] 具体地,按照如下公式计算资源总数E:
[0066]其中,A丨表示第〇个物理服务器的第j种资源的量;EQ = 0或者1,1表示该物理服务 器被映射到,〇表示该物理服务器未分配虚拟机;该E。的取值根据求解得出的解获得。
[0067]可以理解,本发明实施例提供的虚拟机映射方法借助步骤S221和S222,可以在减 少物理服务器的数量的基础上,提高了每个物理服务器的使用效率。
[0068]需要在此说明的是,上述实施例1和本实施例2提供的虚拟机映射方法中的部分附 加技术特征,在不相互矛盾的情况下,可任意组合形成新的实施方式。
[0069] 实施例3
[0070]图3为本发明实施例3提供的虚拟机映射系统的原理框图;请参阅图3,本发明实施 例提供的虚拟机映射系统,包括求解模块10和映射模块20,其中,
[0071 ]所述求解模块10被设置成:基于公式
[0073] 其中,m为所述虚拟机的总数;K为资源的种类总数;
[0074] Rj表示第i个所述虚拟机所需要的第j种资源的量,
[0075] Qi表示第0个物理服务器的第j中资源的预设阈值,1彡i彡m,1彡j彡K,1彡0彡n,n 为物理服务器的总数;
[0076] 为一n维行向量,其仅一个分量为1,其余分量为0,,若的第q个分量为1,则 表示第P个所述虚拟机应映射在第q个所述物理服务器上,
[0077] 所述映射模块20用于根据求解得到的解进行虚拟机映射。
[0078]优选地,所述映射模块20包括计算确定子模块201、比较选择子模块202和映射子 模块203,其中:
[0079]计算确定子模块201用于一旦所述求解模块求解得出多个解,则根据每个解计算 该解情况下所需的每个所述物理服务器的每种资源的资源利用率,并确定资源利用率的最 小值。
[0080]比较选择子模块202用于比较各个解对应的资源利用率的最小值,并在多个解中 选择最大值的资源利用率对应的解。
[0081 ]映射子模块203用于根据选择的解进行虚拟机映射。
[0082]另外,还优选地,该虚拟机映射系统还包括添加模块30,其中,添加模块30用于一 旦所述求解模块10求解无解,则添加所述物理服务器;所述求解模块10还用于在添加物理 服务器的基础上次基于所述公式进行求解。
[0083] 具体地,所述公式还可以为:
[0085] 其中,3为每个服务器的每种资源的利用率,〇<f <丨;
[0086] A丨表示第〇个物理服务器的第j种资源的量;1彡j彡K,l$o彡n。
[0087] 实施例4
[0088] 图4为本发明实施例4提供的虚拟机映射系统的原理框图;请参阅图4,本发明实施 例4提供的虚拟机映射系统与上述实施例3提供的虚拟机映射系统相比,同样包括求解模块 10和映射模块20,在此不再赘述。
[0089] 下面仅描述二者的不同点。具体地,在本实施例中,所述映射模块20包括选择子模 块204和映射子模块203,其中,选择子模块204,用于一旦所述求解模块10求解得出多个解, 则在求解得到的所有解中选择秩最小的解;映射子模块203用于根据选择的解进行虚拟映 射。
[0090] 优选地,所述映射子模块203包括计算子单元2031和映射子单元2032,其中,计算 子单元2031用于根据每个解计算该解情况下所需的所述物理服务器所有资源的资源总数; 映射子单元2032用于根据资源总数最小对应的解进行虚拟映射。
[0091] 需要在此说明的是,上述实施例3和本实施例4提供的虚拟机映射系统中的部分附 加技术特征,在不相互矛盾的情况下,可任意组合形成新的实施方式。
[0092]可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施 方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精 神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
【主权项】
1. 一种虚拟机映射方法,其特征在于,包括:基于公式其中,m为所述虚拟机的总数;K为资源的种类总数; R)表示第i个所述虚拟机所需要的第j种资源的量, Q:,表示第〇个物理服务器的第j种资源的预设阈值, 理服务器的总数; $;为一 n维行向量,其仅一个分量为1,其余分量为0,若g的第q个分量为1,则表示第p 个所述虚拟机应映射在第q个所述物理服务器上,l<P<m,l<q<n; 根据求解得到的解进行虚拟机映射。2. 根据权利要求1所述的虚拟机映射方法,其特征在于,若求解得到多个解,则根据求 解得到的解进行虚拟机映射,包括: 根据每个解计算该解情况下所需的每个所述物理服务器的每种资源的资源利用率,并 确定资源利用率的最小值; 比较各个解对应的资源利用率的最小值,并在多个解中选择最大值的资源利用率对应 的解; 根据选择的解进行虚拟机映射。3. 根据权利要求1所述的虚拟机映射方法,其特征在于,若求解无解,则还包括: 添加所述物理服务器; 在添加物理服务器的基础上,再次基于所述公式进行求解。4. 根据权利要求1所述的虚拟机映射方法,其特征在于,若求解出多个解,则根据求解 得到的解进行虚拟映射,包括: 在求解得到的所有解中选择秩最小的解; 根据选择的解进行虚拟映射。5. 根据权利要求4所述的虚拟机映射方法,其特征在于,若选择的秩最小的解的数量为 多个,则根据选择的解进行虚拟映射,包括: 根据每个解计算该解情况下所需的所述物理服务器所有资源的资源总数; 根据资源总数最小对应的解进行虚拟映射。6. 根据权利要求1所述的虚拟机映射方法,其特征在于,所述公式还可以为:其中,3为每个服务器的每种资源的利用率,0<d _ 1; Ai表示第〇个物理服务器的第j种资源的量;l$j<K,l<o彡n。7. -种虚拟机映射系统,其特征在于,包括求解模块和映射模块,所述求解模块,被设 置成:基于公式其中,m为所述虚拟机的总数;K为资源的种类总数; R:表示第i个所述虚拟机所需要的第j种资源的量, Q,:表示第。个物理服务器的第j中资源的预设阈值,1幻<111,1幻<1(,1<〇<11,11为物 理服务器的总数; 为一n维行向量,其仅一个分量为1,其余分量为0,,若f的第q个分量为1,则表示第 P个所述虚拟机应映射在第q个所述物理服务器上,l<P<m,l<q<n; 所述映射模块,用于根据求解得到的解进行虚拟机映射。8. 根据权利要求7所述的虚拟机映射系统,其特征在于,所述映射模块包括: 计算确定子模块,用于一旦所述求解模块求解得出多个解,则根据每个解计算该解情 况下所需的每个所述物理服务器的每种资源的资源利用率,并确定资源利用率的最小值; 比较选择子模块,用于比较各个解对应的资源利用率的最小值,并在多个解中选择最 大值的资源利用率对应的解; 映射子模块,用于根据选择的解进行虚拟机映射。9. 根据权利要求7所述的虚拟机映射系统,其特征在于,还包括: 添加模块,用于一旦所述求解模块求解无解,则添加所述物理服务器; 所述求解模块,还用于在添加物理服务器的基础上,再次基于所述公式进行求解。10. 根据权利要求7所述的虚拟机映射系统,其特征在于,所述映射模块包括: 选择子模块,用于一旦所述求解模块求解得出多个解,则在求解得到的所有解中选择 秩最小的解; 映射子模块,用于根据选择的解进行虚拟映射。11. 根据权利要求10所述的虚拟机映射系统,其特征在于,所述映射子模块包括: 计算子单元,用于根据每个解计算该解情况下所需的所述物理服务器所有资源的资源 总数; 映射子单元,用于根据资源总数最小对应的解进行虚拟映射。12. 根据权利要求7所述的虚拟机映射系统,其特征在于,所述公式还可以为:其中,为每个服务器的每种资源的利用率,〇< P < 1; 乂表示第0个物理服务器的第j种资源的量;l<j<K,l<〇彡n。
【文档编号】G06F9/455GK106055389SQ201610687240
【公开日】2016年10月26日
【申请日】2016年8月18日
【发明人】李三舸, 殷波, 冯伟斌, 王志军
【申请人】中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1