虚拟机部署方法及装置的制造方法_4

文档序号:9399352阅读:来源:国知局
服务器B和C的通讯状态为异 常状态的次数为I ;同理,虚拟机管理模块还可以统计得到异常服务器B与其他异常服务器 的通讯状态为异常状态的次数为1,异常服务器C与其他异常服务器的通讯状态为异常状 态的次数为2。
[0171] 步骤4056、将通讯状态为异常状态的次数最多的服务器确定为目标服务器。执行 步骤4057。
[0172] 示例的,由于在异常服务器A-C中,异常服务器C与其他异常服务器的通讯状态为 异常状态的次数为2,通讯状态为异常状态的次数最多,则虚拟机管理模块可以将该异常服 务器C确定为目标服务器。
[0173] 步骤4057、将该目标服务器中所部署的异常虚拟机确定为该目的虚拟机。
[0174] 在本发明实施例中,若该目标服务器中还部署有其他虚拟机,但其他虚拟机没有 向虚拟机管理模块发送异常通讯信息,即该其他虚拟机不为异常虚拟机,则虚拟机管理模 块不会将该其他虚拟机也确定为目的虚拟机。示例的,虚拟机管理模块可以将目标服务器C 中部署的异常虚拟机VM5确定为目的虚拟机,即待迀移虚拟机。如果目标服务器C中还部 署了虚拟机VM6,但VM6可以与存在通讯业务的对端虚拟机正常执行通讯业务,则虚拟机管 理模块不用将VM6确定为待迀移虚拟机。
[0175] 步骤406、确定部署有该对端虚拟机的服务器。执行步骤407。
[0176] 虚拟机管理模块的数据库中可以记录有每个服务器中所部署的虚拟机,因此当虚 拟机管理模块确定了与目的虚拟机存在通讯业务的对端虚拟机后,可以查询每个服务器中 所部署的虚拟机,确定部署有对端虚拟机的服务器。示例的,假设虚拟机管理模块查询到的 与待部署虚拟机VM7存在通讯业务的对端虚拟机为VM8和VM9,则虚拟机管理模块可以确定 部署有虚拟机VM8的服务器为服务器G,部署有虚拟机VM9的服务器为服务器H。
[0177] 步骤407、从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署有该对端 虚拟机的服务器的通讯状态为正常状态。执行步骤408。
[0178] 在本发明实施例中,该通讯矩阵中记录了任意两个服务器之间的通讯状态,该通 讯状态包括正常状态或异常状态。若部署有对端虚拟机的服务器包括多个服务器,则该目 的服务器与该多个服务器之间的通讯状态应当均为正常状态。示例的,对于部署有虚拟机 VM8和VM9的服务器G和服务器H,通过查询表1所示的通讯矩阵可知,与该服务器G和服 务器H的通讯状态均为正常状态的服务器包括:服务器E,服务器F,服务器G和服务器H, 则虚拟机管理模块可以将服务器E-H确定为目的服务器。若虚拟机管理模块从预设的通讯 矩阵中没有获取到与该部署有对端虚拟机的服务器的通讯状态为正常状态的目的服务器, 则可以根据所管理的各服务器的CPU资源的大小,存储资源的大小以及网口带宽的大小来 选择合适的服务器作为VM部署和迀移的目的服务器。
[0179] 需要说明的是,如果该目的虚拟机为待迀移虚拟机,当虚拟机管理模块从预设的 通讯矩阵中获取了目的服务器之后,还需要从该目的服务器中将部署有该待迀移虚拟机的 源服务器删除,并将除该源服务器之外的服务器作为目的服务。示例的,假设服务器E出现 故障需要维护,虚拟机管理模块需要将该服务器E中部署的虚拟机VMO迀移至其他服务器, 与该虚拟机VMO存在通讯业务的虚拟机为:虚拟机VM8和VM9,其中部署有虚拟机VM8的服 务器为服务器G,部署有VM9的服务器为服务器H,通过查询表1所示的通讯矩阵可知,与服 务器G和服务器H的通讯状态均为正常状态的服务器包括:服务器E,服务器F,服务器G和 服务器H,则虚拟机管理模块可以将服务器E-H确定为目的服务器,由于目的服务器中的服 务器E为部署有待迀移虚拟机:VMO的源服务器,因此虚拟机管理模块需要从目的服务器中 将该源服务器:服务器E删除,此时,更新后的目的服务器为:服务器F,服务器G和服务器 H0
[0180] 步骤408、统计该目的服务器的个数。
[0181] 若该目的服务器的个数等于1,执行步骤409 ;若该目的服务器的个数大于1,执行 步骤410 ;若该目的服务器的个数小于1,则虚拟机管理模块可以确定从预设的通讯矩阵中 没有获取到与该部署有对端虚拟机的服务器的通讯状态为正常状态的目的服务器,则可以 根据所管理的各服务器的CPU资源的大小,存储资源的大小以及网口带宽的大小来选择合 适的服务器作为VM部署和迀移的目的服务器。示例的,假设虚拟机管理模块获取的目的服 务器为:服务器E,服务器F,服务器G和服务器H,则虚拟机管理模块可以统计得到该目的 服务器的个数为4,大于1,因此执行步骤410。
[0182] 步骤409、将该目的虚拟机部署在该目的服务器中。
[0183] 若该目的服务器的个数等于1,则虚拟机管理模块可以直接将该目的虚拟机部署 在该目的服务器中。
[0184] 步骤410、根据预设规则从该目的服务器的集合中选择部署服务器。执行步骤 411〇
[0185] 若该目的服务器的个数大于1,则虚拟机管理模块可以根据预设规则从该目的服 务器的集合中选择部署服务器。示例的,虚拟机管理模块可以根据预设规则从目的服务器 的集合{服务器E,服务器F,服务器G,服务器H}中选择部署服务器。
[0186] 图4-4是本发明实施例提供的一种从目的服务器的集合中选择部署服务器的方 法流程图,如图4-4所示,该方法包括:
[0187] 步骤4101、从虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服 务器集合。
[0188] 该预设参数包括CPU资源、存储资源和网口带宽中的至少一种。在本发明实施例 中,虚拟机管理模块可以根据目的虚拟机的CUP和内存等参数,在虚拟机管理模块管理的 服务器中筛选满足预设参数的标准的备选服务器集合。示例的,假设目的虚拟机为待部署 虚拟机VM7,预设参数为CPU资源、存储资源和网口带宽,虚拟机管理模块根据虚拟机VM7的 CPU和内存设定的预设参数的标准为:CPU的主频为4吉赫兹(GHz)以上,存储资源为8千兆 字节(GB)以上,网口带宽为10兆比特每秒(Mbps)以上,则虚拟机管理模块从该虚拟机管 理模块管理的服务器中筛选的满足上述预设参数的标准的备选服务器集合可以为{服务 器A,服务器E,服务器F,服务器G}。
[0189] 步骤4102、筛选该备选服务器集合中与该目的服务器的集合中相同的服务器得到 备选部署服务器集合。
[0190] 虚拟机管理模块可以对备选服务器集合和目的服务器的集合取交集,得到备选部 署服务器集合。示例的,假设目的服务器的集合为{服务器E,服务器F,服务器G,服务器 H},虚拟机管理模块筛选的备选服务器集合为{服务器A,服务器E,服务器F,服务器G}, 则虚拟机管理模块对该两个服务器集合取交集,筛选得到的备选部署服务器集合可以为: {服务器E,服务器F,服务器G}。
[0191] 步骤4103、根据亲和性算法从该备选部署服务器集合中选择部署服务器。
[0192] 亲和性算法是指从备选部署服务器集合中,选择与部署有对端虚拟机的服务器之 间通讯路径最短的服务器作为部署服务器。示例的,假设与目的虚拟机VM7存在通讯业务 的对端虚拟机为VM8和VM9,部署有VM8的服务器为服务器G,部署有VM9的服务器为服务 器H,则从图4-2所示的网络拓扑结构中可以看出,备选部署服务器集合{服务器E,服务器 F,服务器G}中,与服务器G之间通讯路径最短的服务器为服务器G,与服务器H的之间通讯 路径最短的服务器也是服务器G,则虚拟机管理模块可以将服务器G选择为部署服务器。
[0193] 需要说明的是,除了亲和性算法,虚拟机管理模块还可以从备选部署服务器集合 中随机选择一个服务器作为部署服务器。
[0194] 步骤411、将该目的虚拟机部署在该部署服务器中。
[0195] 示例的,虚拟机管理模块可以将目的虚拟机VM7部署在部署服务器:服务器G中。
[0196] 需要说明的是,本发明实施例提供的虚拟机部署方法的步骤的先后顺序可以进行 适当调整,步骤也可以根据情况进行相应增减。示例的,步骤401至步骤404可以和步骤405 同时执行,也可以在步骤405之后执行。任何熟悉本技术领域的技术人员在本发明揭露的 技术范围内,可轻易想到变化的方法,都应涵盖在本发明的保护范围之内,因此不再赘述。
[0197] 还需要说明的是,本发明实施例提供的虚拟机部署方法,除了可以应用于图1所 示的数据中心内部的应用场景中,还可以应用于云化电信网的跨数据中心的应用场景中。 在跨数据中心的场景中,虚拟机部署方法可以由任一数据中心的虚拟机管理模块执行,该 虚拟机管理模块可以包括VM Manager,VNFM和NFV管理编排器(英文:NFV Management and Orchestration ;简称:NFV MAN0)等,本发明实施例不做限定。
[0198] 综上所述,本发明实施例提供的一种虚拟机部署方法,虚拟机管理模块在部署目 的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟 机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对 端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后, 可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通 讯的可靠性。
[0199] 本发明实施例提供了一种虚拟机部署装置,如图5-1所示,该虚拟机部署装置500 包括:查询单元501,第一确定单元502,获取单元503和部署单元504,
[0200] 查询单元501,用于查询与目的虚拟机存在通讯业务的对端虚拟机,该目的虚拟机 为待迀移虚拟机或者待部署虚拟机。
[0201] 第一确定单元502,用于确定部署有该对端虚拟机的服务器。
[0202] 获取单元503,用于从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署 有该对端虚拟机的服务器的通讯状态为正常状态,该通讯矩阵中记录了任意两个服务器之 间的通讯状态,该通讯状态包括正常状态或异常状态。
[0203] 部署单元504,用于将该目的虚拟机部署在该目的服务器中。
[0204] 综上所述,本发明实施例提供的一种虚拟机部署装置,虚拟机管理模块在部署目 的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟 机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对 端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后, 可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通 讯的可靠性。
[0205] 本发明实施例提供了另一种虚拟机部署装置,如图5-2所示,该虚拟机部署装置 500包括:
[0206] 查询单元501,用于查询与目的虚拟机存在通讯业务的对端虚拟机,该目的虚拟机 为待迀移虚拟机或者待部署虚拟机。
[0207] 第一确定单元502,用于确定部署有该对端虚拟机的服务器。
[0208] 获取单元503,用于从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署 有该对端虚拟机的服务器的通讯状态为正常状态,该通讯矩阵中记录了任意两个服务器之 间的通讯状态,该通讯状态包括正常状态或异常状态。
[0209] 部署单元504,用于将该目的虚拟机部署在该目的服务器中。
[0210] 第一接收单元505,用于接收异常虚拟机发送的指示该异常虚拟机与其他虚拟机 通讯状态为异常状态的通讯异常信息。
[0211]
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1