资源调度的方法、装置和系统

著录项
  • CN201710068106.9
  • 20170206
  • CN108399101A
  • 20180814
  • 腾讯科技(深圳)有限公司
  • 潘晓东;胡林红;莫衍;朱虹
  • G06F9/50
  • G06F9/50 G06F9/455 H04L29/08

  • 广东省深圳市南山区高新区科技中一路腾讯大厦35层
  • 广东(44)
  • 广州华进联合专利商标代理有限公司
  • 何平;邓云鹏
摘要
本发明涉及一种资源调度的方法、装置和系统,包括:接收终端发送的虚拟机申请请求,虚拟机申请请求包括目标虚拟机标签,将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使目标宿主机创建第一虚拟机并设置第一虚拟机的标签为目标虚拟机标签,保证服务的高可用性。
权利要求

1.一种资源调度的方法,所述方法包括:

接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括目标虚拟机标签;

将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主 机,所述目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签;

以使所述目标宿主机创建第一虚拟机并设置所述第一虚拟机的标签为所述目标虚拟 机标签。

2.根据权利要求1所述的方法,其特征在于,所述将目标虚拟机标签与集中各个宿主 机中的当前虚拟机标签进行对比确定目标宿主机的步骤包括:

如果第一宿主机中不存在与目标虚拟机标签相同的虚拟机标签,则将所述第一宿主机 加入可调度宿主机集合;

从所述可调度宿主机集合中根据主机调度策略选择得到目标宿主机。

3.根据权利要求1或2所述的方法,其特征在于,所述将目标虚拟机标签与集中各个 宿主机中的当前虚拟机标签进行对比的步骤之前,还包括:

根据所述虚拟机申请请求通过集调度策略确定目标集,将所述虚拟机申请请求发 送至所述目标集对应的集控制服务器,以使所述集控制服务器返回所述目标集内 的各个宿主机中的当前虚拟机标签;

所述将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标 宿主机的步骤包括:

将所述目标虚拟机标签与所述目标集内的各个宿主机中的当前虚拟机标签进行对 比确定目标宿主机。

4.根据权利要求3所述的方法,其特征在于,所述虚拟机申请请求包括权限信息、集 信息、虚拟机配置信息中的至少一种,所述根据所述虚拟机申请请求通过集调度策略确 定目标集的步骤包括:

根据所述虚拟机申请请求携带的信息校验所述虚拟机申请请求的合法性,如果校验成 功,则根据所述申请请求携带的信息和集调度策略确定目标集。

5.根据权利要求1所述的方法,其特征在于,所述目标虚拟机标签根据业务划分,由业 务部门名称和业务模块名组成。

6.一种资源调度的方法,所述方法包括:

接收云控制服务器发送的虚拟机申请请求,所述虚拟机申请请求包括目标虚拟机标 签;

获取当前集内各个宿主机中的当前虚拟机标签,将所述目标虚拟机标签与集中各 个宿主机中的当前虚拟机标签进行对比确定目标宿主机,所述目标宿主机中不存在与目标 虚拟机标签匹配的虚拟机标签;

以使所述目标宿主机创建第一虚拟机并设置所述第一虚拟机的标签为所述目标虚拟 机标签。

7.根据权利要求6所述的方法,其特征在于,所述虚拟机申请请求的目标发送集由所 述云控制服务器根据终端发送的虚拟机申请请求通过集调度策略确定。

8.根据权利要求6所述的方法,其特征在于,所述将所述目标虚拟机标签与集中各个 宿主机中的当前虚拟机标签进行对比确定目标宿主机,所述目标宿主机中不存在与目标虚 拟机标签相同的虚拟机标签的步骤包括:

如果集中第一宿主机中不存在与目标虚拟机标签相同的虚拟机标签,则将所述第一 宿主机加入可调度宿主机集合;

从所述可调度宿主机集合中根据主机调度策略选择得到目标宿主机。

9.根据权利要求6所述的方法,其特征在于,所述目标虚拟机标签根据业务划分,由业 务部门名称和业务模块名组成。

10.一种资源调度的系统,其特征在于,所述系统包括:

云控制服务器,用于接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括目标 虚拟机标签,根据所述虚拟机申请请求通过集调度策略确定目标集,将所述虚拟机申 请请求转发至所述目标集对应的集控制服务器;

集控制服务器,用于获取当前集内各个宿主机中的当前虚拟机标签,将所述目标 虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,所述目标 宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使所述目标宿主机创建第一虚拟 机并设置所述第一虚拟机的标签为所述目标虚拟机标签。

11.根据权利要求10所述的系统,其特征在于,所述集控制服务器还用于如果当前集 内的第一宿主机中不存在与目标虚拟机标签相同的虚拟机标签,则将所述第一宿主机加 入可调度宿主机集合,从所述可调度宿主机集合中根据主机调度策略选择得到目标宿主 机。

12.根据权利要求10所述的系统,其特征在于,所述目标虚拟机标签根据业务划分,由 业务部门名称和业务模块名组成。

13.一种资源调度的装置,其特征在于,所述装置包括:

接收模块,用于接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括目标虚拟 机标签;

虚拟机资源调度模块,用于将目标虚拟机标签与集中各个宿主机中的当前虚拟机标 签进行对比确定目标宿主机,所述目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标 签,以使所述目标宿主机创建第一虚拟机并设置所述第一虚拟机的标签为所述目标虚拟机 标签。

14.根据权利要求13所述的装置,其特征在于,所述虚拟机资源调度模块包括:

可调度宿主机集合确定单元,用于如果第一宿主机中不存在与目标虚拟机标签相同的 虚拟机标签,则将所述第一宿主机加入可调度宿主机集合;

目标宿主机确定单元,用于从所述可调度宿主机集合中根据主机调度策略选择得到目 标宿主机。

15.根据权利要求13或14所述的装置,其特征在于,所述装置还包括:

集选择模块,用于根据所述虚拟机申请请求通过集调度策略确定目标集,将所 述虚拟机申请请求发送至所述目标集对应的集控制服务器,以使所述集控制服务器 返回所述目标集内的各个宿主机中的当前虚拟机标签;

所述虚拟机资源调度模块还用于将所述目标虚拟机标签与所述目标集内的各个宿 主机中的当前虚拟机标签进行对比。

16.根据权利要求13所述的装置,其特征在于,所述目标虚拟机标签根据业务划分,由 业务部门名称和业务模块名组成。

17.一种资源调度的装置,其特征在于,所述装置包括:

接收模块,用于接收云控制服务器发送的虚拟机申请请求,所述虚拟机申请请求包括 目标虚拟机标签;

虚拟机资源调度模块,用于获取当前集内各个宿主机中的当前虚拟机标签,将所述 目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,所述 目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使所述目标宿主机创建第一 虚拟机并设置所述第一虚拟机的标签为所述目标虚拟机标签。

18.根据权利要求17所述的装置,其特征在于,所述虚拟机申请请求的目标发送集由 所述云控制服务器根据终端发送的虚拟机申请请求通过集调度策略确定。

19.根据权利要求17所述的装置,其特征在于,所述目标虚拟机标签根据业务划分,由 业务部门名称和业务模块名组成。

说明书
技术领域

本发明涉及计算机技术领域,特别是涉及一种资源调度的方法、装置和系统。

随着计算机技术的发展,政企进行私有云的建设已普遍存在。私有云(Private Clouds)是能够为企业客户提供稳定、高效、安全、隔离的云资源环境,对企业资源进行灵活 管理,力求资源最优化配置。与此同时,高可用性也是私有云环境中关键需求,因此,如何保 证在私有云环境中服务的高可用性尤为重要。

传统的私有云环境中,通常对所有的宿主机的资源进行采集,根据资源的大小和 利用率进行资源的调度,没有考虑到宿主机宕机时对具有相同服务属性的资源的影响,如 具有相同服务属性的两台或者多台虚拟机同时被调度在一台宿主机上,当此宿主机宕机 时,影响此服务属性对应的整个服务。

基于此,有必要针对上述技术问题,提供一种资源调度的方法、装置和系统,通过 对资源合理调度从而提高资源对外服务的能力,保证服务的高可用性。

一种资源调度的方法,所述方法包括:

接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括目标虚拟机标签;

将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标 宿主机,所述目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签;

以使所述目标宿主机创建第一虚拟机并设置所述第一虚拟机的标签为所述目标 虚拟机标签。

一种资源调度的装置,所述装置包括:

接收模块,用于接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括目标 虚拟机标签;

虚拟机资源调度模块,用于将目标虚拟机标签与集中各个宿主机中的当前虚拟 机标签进行对比确定目标宿主机,所述目标宿主机中不存在与目标虚拟机标签匹配的虚拟 机标签,以使所述目标宿主机创建第一虚拟机并设置所述第一虚拟机的标签为所述目标虚 拟机标签。

上述资源调度的方法和装置,通过接收终端发送的虚拟机申请请求,虚拟机申请 请求包括目标虚拟机标签,将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进 行对比确定目标宿主机,目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使 目标宿主机创建第一虚拟机并设置第一虚拟机的标签为目标虚拟机标签,则相互匹配的虚 拟机标签分配到不同的宿主机中,从而能够将相同或相似服务属性的虚拟机分散部署,在 其中一个宿主机宕机时,在其它的宿主机中可提供相同或相似的服务,通过对资源合理调 度从而提高资源对外服务的能力,保证服务的高可用。

一种资源调度的方法,所述方法包括:

接收云控制服务器发送的虚拟机申请请求,所述虚拟机申请请求包括目标虚拟机 标签;

获取当前集内各个宿主机中的当前虚拟机标签,将所述目标虚拟机标签与集 中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,所述目标宿主机中不存在与 目标虚拟机标签匹配的虚拟机标签;

以使所述目标宿主机创建第一虚拟机并设置所述第一虚拟机的标签为所述目标 虚拟机标签。

一种资源调度的装置,所述装置包括:

接收模块,用于接收云控制服务器发送的虚拟机申请请求,所述虚拟机申请请求 包括目标虚拟机标签;

虚拟机资源调度模块,用于获取当前集内各个宿主机中的当前虚拟机标签,将 所述目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机, 所述目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使所述目标宿主机创建 第一虚拟机并设置所述第一虚拟机的标签为所述目标虚拟机标签。

上述资源调度的方法和装置,通过接收云控制服务器发送的虚拟机申请请求,虚 拟机申请请求包括目标虚拟机标签,获取当前集内各个宿主机中的当前虚拟机标签,将 所述目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机, 目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使目标宿主机创建第一虚拟 机并设置所述第一虚拟机的标签为目标虚拟机标签,相互匹配的虚拟机标签分配到不同的 宿主机中,从而能够将相同或相似服务属性的虚拟机分散部署,在其中一个宿主机宕机时, 在其它的宿主机中可提供相同或相似的服务,通过对资源合理调度从而提高资源对外服务 的能力,保证服务的高可用。

一种资源调度的系统,所述系统包括:

云控制服务器,用于接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括 目标虚拟机标签,根据所述虚拟机申请请求通过集调度策略确定目标集,将所述虚拟 机申请请求转发至所述目标集对应的集控制服务器;

集控制服务器,用于获取当前集内各个宿主机中的当前虚拟机标签,将所述 目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,所述 目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使所述目标宿主机创建第一 虚拟机并设置所述第一虚拟机的标签为所述目标虚拟机标签。

上述资源调度的系统,通过云控制服务器和集控制服务器的配合,云控制服务 器根据集调度策略确定目标集,将标签对比的范围限制在目标集内,可根据需要选 择目标集,一方面提高了目标宿主机的确定效率,另一方面保证了目标宿主机选择的可 配置性,相互匹配的虚拟机标签分配到集中不同的宿主机中,从而能够将相同或相似服 务属性的虚拟机分散部署,在其中一个宿主机宕机时,在其它的宿主机中可提供相同或相 似的服务,通过对资源合理调度从而提高资源对外服务的能力,保证服务的高可用。

图1为一个实施例中资源调度的方法的应用环境图;

图2为一个实施例中图1中第一服务器的内部结构图;

图3为一个实施例中图1中集控制服务器的内部结构图;

图4为一个实施例中资源调度的方法的流程图;

图5为一个实施例中确定目标宿主机的流程图;

图6为一个实施例中资源调度系统架构示意图;

图7为一个实施例中已有资源分配示意图;

图8为一个实施例中资源调度后资源分配示意图;

图9为一个实施例中另一种资源调度的方法的流程图;

图10为一个实施例中确定目标宿主机的流程图;

图11为一个实施例中资源调度的系统的结构框图;

图12为一个实施例中资源调度的装置的结构框图;

图13为一个实施例中虚拟机资源调度模块的结构框图;

图14为另一个实施例中资源调度的装置的结构框图;

图15为一个实施例中另一种资源调度的装置的结构框图。

图1为一个实施例中资源调度的方法运行的应用环境图。如图1所示,该应用环境 包括终端110、第一服务器120和集130,其中集130可包括多个集,如图所示,可包括 集131、集132……集13N,其中N为集总数目,各个集都有对应的集控制服务器 和可调度宿主机,集131包括集控制服务器131a和可调度宿主机131b……131M,其中M 为集131内的可调度宿主机总数目。终端110、第一服务器120和集130间通过网络进行 通信,其中第一服务器120可为云控制服务器。

终端110,可为智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。 可通过终端向第一服务器120发送虚拟机申请请求,第一服务器120获取各个宿主机中的当 前虚拟机标签,与虚拟机申请请求中的目标虚拟机标签进行对比确定目标宿主机,从而在 目标宿主机创建第一虚拟机并设置第一虚拟机的标签为目标虚拟机标签。也可由第一服务 器120通过集调度策略确定目标集,将虚拟机申请请求转发至目标集对应的目标集 控制服务器,目标集控制服务器获取当前集内各个宿主机中的当前虚拟机标签,与 虚拟机申请请求中的目标虚拟机标签进行对比确定目标宿主机,从而在目标宿主机创建第 一虚拟机并设置第一虚拟机的标签为目标虚拟机标签,其中目标宿主机中不存在与目标虚 拟机标签匹配的虚拟机标签,虚拟机标签代表了虚拟机的服务属性,保证目标宿主机中不 存在相互匹配的虚拟机标签,从而相互匹配的虚拟机标签在申请虚拟机时,将在不同的宿 主机中申请,能够将相同服务属性的虚拟机分散部署,保证服务的高可用。

在一个实施例中,图1中第一服务器120的内部结构如图2所示,该第一服务器120 包括通过系统总线连接的处理器、存储介质、内存和网络接口。其中,该第一服务器120的存 储介质存储有操作系统、数据库、第一资源调度的装置,数据库用于存储数据,第一资源调 度的装置用于实现一种适用于第一服务器120的资源调度的方法。该第一服务器120的处理 器用于提供计算和控制能力,支撑整个第一服务器120的运行。该第一服务器120的内存为 存储介质中的第一资源调度的装置的运行提供环境。该第一服务器120的网络接口用于与 外部的终端110、集130通过网络连接通信,比如接收终端110发送的请求及向集130发 送请求等。

在一个实施例中,图1中集控制服务器131的内部结构如图3所示,该集控制服 务器131包括通过系统总线连接的处理器、存储介质、内存和网络接口。其中,该集控制服 务器131的存储介质存储有操作系统、数据库、第二资源调度的装置,数据库用于存储数据, 如存储主机调度策略,第二资源调度的装置用于实现一种适用于集控制服务器131的资 源调度的方法。该集控制服务器131的处理器用于提供计算和控制能力,支撑整个集控 制服务器131的运行。该集控制服务器131的内存为存储介质中的第二资源调度的装置的 运行提供环境。该集控制服务器131的网络接口用于与外部的第一服务器120通过网络连 接通信,比如接收第一服务器120转发的请求等。

如图4所示,在一个实施例中,提供了一种资源调度的方法,以应用于上述应用环 境中的第一服务器来举例说明,包括如下步骤:

步骤S210,接收终端发送的虚拟机申请请求,虚拟机申请请求包括目标虚拟机标 签。

具体的,终端可通过虚拟机申请页面,如web网站,接收输入的目标虚拟机标签,根 据目标虚拟机标签生成对应的虚拟机申请请求,将虚拟机申请请求发送至云控制服务器, 可为私有云控制服务器。虚拟机申请请求用于根据目标虚拟机标签确定目标宿主机,并申 请目标宿主机上的虚拟机。目标虚拟机标签用于标识虚拟机的服务属性,服务属性包括用 途属性、业务属性等,可将不同属性结合得到服务属性。通过为待申请的虚拟机配置虚拟机 标签,可区分待申请的虚拟机的用途,从而根据虚拟机的用途确定符合条件的目标宿主机, 达到资源的合理利用,提高高可用性。虚拟机申请请求中还可包括更多的信息,如集区域 信息、集名称、用户信息、虚拟机配置信息等,从而可通过虚拟机申请请求中携带的信息 获取目标集或对用户权限进行验证等。虚拟机申请请求中可包括一个或多个目标虚拟机 标签,从而可一次性申请与目标虚拟机标签对应的一个或多个虚拟机。

步骤S220,将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比 确定目标宿主机,目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签。

具体的,云控制服务器负责接收用户请求,可校验请求合法性,并根据请求的不同 按照策略调度至合适的集控制服务器进行处理并将处理结果返回给用户。云控制服务器 可将虚拟机申请请求发送至所有的集控制服务器,以获取集控制服务器返回的所有集 中的宿主机的当前虚拟机标签,并进行对比确定目标宿主机。也可根据集调度策略先 确定目标集,再获取目标集中的宿主机的当前虚拟机标签进行对比确定目标宿主机, 具体的待选择宿主机的数量和范围可根据需要自定义。宿主机是集中的一个计算节点, 可负责接受来自于集控制器发出的请求并作出响应,宿主机也称Hypervisor,是一种运 行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享一套基础 物理硬件,可以协调访问服务器上的所有物理设备和虚拟机,并控制、管理和监控运行在其 上的虚拟子机和存储环境。只要待选择宿主机中不存在与目标虚拟机标签匹配的虚拟机标 签,就可作为目标宿主机。可将第一个获取到的不存在与目标虚拟机标签匹配的虚拟机标 签的宿主机作为目标宿主机,也可先将不存在与目标虚拟机标签匹配的虚拟机标签的宿主 机加入可调度宿主机集合,再根据具体的主机调度策略获取目标宿主机。其中与目标虚拟 机标签匹配的虚拟机标签,是指与目标虚拟机标签完全相同或相近的虚拟机标签,其中是 否相近可根据具体的近似度算法确定,如计算当前虚拟机标签与目标虚拟机标签的相似 度,如果相似度超过预设阈值,则判断为相近,如相似度没有超过预设阈值,则判断为不相 近。如财务处与财务部门是匹配的虚拟机标签。目标宿主机中不存在与目标虚拟机标签匹 配的虚拟机标签,则2个相同或相近的虚拟机标签会被分配到不同的宿主机中,从而能够将 相同或相似服务属性的虚拟机分散部署,在其中一个宿主机宕机时,在其它的宿主机中可 提供相同或相似的服务,从而保证服务的高可用。

步骤S230,以使目标宿主机创建第一虚拟机并设置第一虚拟机的标签为目标虚拟 机标签。

具体的,云控制服务器确定目标宿主机后,可向目标宿主机所在的集控制服务 器发送携带目标宿主机信息的虚拟机申请请求,从而集控制服务器根据目标宿主机信息 确定目标宿主机,并在目标宿主机创建第一虚拟机,创建第一虚拟机时,会给第一虚拟机分 配适量的内存、CPU、网络和磁盘,并加载第一虚拟机的客户操作系统,并设置第一虚拟机的 标签为目标虚拟机标签。

本实施例中,通过接收终端发送的虚拟机申请请求,虚拟机申请请求包括目标虚 拟机标签,将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标 宿主机,目标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使目标宿主机创建 第一虚拟机并设置第一虚拟机的标签为目标虚拟机标签,则相互匹配的虚拟机标签分配到 不同的宿主机中,从而能够将相同或相似服务属性的虚拟机分散部署,在其中一个宿主机 宕机时,在其它的宿主机中可提供相同或相似的服务,通过对资源合理调度从而提高资源 对外服务的能力,保证服务的高可用。

在一个实施例中,如图5所示,步骤S220包括:

步骤S221,如果第一宿主机中不存在与目标虚拟机标签相同的虚拟机标签,则将 第一宿主机加入可调度宿主机集合。

具体的,第一宿主机中不存在与目标虚拟机标签相同的虚拟机标签,则说明第一 宿主机中已创建的各个虚拟机提供的服务与待申请的虚拟机提供的服务不同,可将第一宿 主机加入可调度宿主机集合,如通过列表的形式存储各个可调度宿主机信息。

步骤S222,从可调度宿主机集合中根据主机调度策略选择得到目标宿主机。

具体的,主机调度策略可根据需要自定义,如包括资源最少使用调度,贪婪调度 等,可从可调度宿主机集合中选择最适合的目标宿主机。当虚拟机申请请求中包括多个目 标虚拟机标签时,每个目标虚拟机标签有对应的可调度宿主机集合,在各自的可调度宿主 机集合中选择最终的目标宿主机。如第一目标虚拟机标签对应第一可调度宿主机集合,从 第一可调度宿主机集合选择得到第一目标宿主机,第二目标虚拟机标签对应第二可调度宿 主机集合,从第二可调度宿主机集合选择得到第二目标宿主机。

本实施例中,先将符合条件的宿主机加入可调度宿主机集合,再从可调度宿主机 集合中确定目标宿主机,进一步提高了目标宿主机选择的适合度。

在一个实施例中,步骤S220之前,还包括:根据虚拟机申请请求通过集调度策略 确定目标集,将虚拟机申请请求发送至目标集对应的集控制服务器,以使集控制 服务器返回目标集内的各个宿主机中的当前虚拟机标签。

具体的,集调度策略可根据需要自定义,如资源最少使用调度,贪婪调度等。如 果虚拟机申请请求中携带了地区信息或集信息,则可获取与地区信息匹配的集作为目 标集或直接根据集信息,如集名称确定目标集。如果虚拟机申请请求中携带了虚 拟机配置信息,也可获取与虚拟机配置信息匹配的目标集,目标集中创建的虚拟机的 配置符合虚拟机申请请求中携带的虚拟机配置信息。如图6所示,为资源调度方法应用的资 源调度系统架构图,包括终端240,其中终端240显示用户入口,云控制服务器250、集260 和对应的集控制服务器261、集网络管理262、宿主机集合263,集270和对应的集控 制服务器271、集网络管理272、宿主机集合273、集280和对应的集控制服务器281、集 网络管理282、宿主机集合283,其中集网络管理用于管理此集中网络规划,配置,回 收等。云控制服务器250可根据虚拟机申请请求通过集调度策略从集260、270、280中确 定目标集。

步骤S220包括:将目标虚拟机标签与目标集内的各个宿主机中的当前虚拟机标 签进行对比确定目标宿主机。

具体的,当确定目标集后,只需要将目标虚拟机标签与目标集内的各个宿主 机中的当前虚拟机标签进行对比确定目标宿主机,将标签对比的范围限制在目标集内, 可根据需要选择目标集,一方面提高了目标宿主机的确定效率,另一方面保证了目标宿 主机选择的可配置性。

在一个实施例中,虚拟机申请请求包括权限信息、集信息、虚拟机配置信息中的 至少一种,根据所述虚拟机申请请求根据集调度策略确定目标集的步骤包括:根据虚 拟机申请请求携带的信息校验虚拟机申请请求的合法性,如果校验成功,则根据申请请求 携带的信息和集调度策略确定目标集。

具体的,权限信息是指与虚拟机申请权限相关的信息,如包括用户信息、集级别 等,不同的用户对应了不同的虚拟机申请权限,级别高的用户可申请配置高的虚拟机,可验 证用户是否符合虚拟机申请的权限,如果符合虚拟机申请请求合法。集信息是指与集 相关的信息,如集配置信息、集地域信息等,可验证用户是否符合申请相应集配置信 息的集中的虚拟机的条件,如果符合条件,则虚拟机申请请求合法。虚拟机配置信息包括 虚拟机的内存大小、CPU信息等,验证用户是否符合申请相应虚拟机配置信息的虚拟机的条 件,如果符合条件,则虚拟机申请请求合法。只有虚拟机申请请求合法,才能进入根据申请 请求携带的信息和集调度策略确定目标集的步骤,进行虚拟机的申请,加强了虚拟机 申请的安全性与可配置性。

在一个实施例中,目标虚拟机标签根据业务划分,由业务部门名称和业务模块名 组成。

具体的,目标虚拟机标签根据业务划分,从而使得相同业务申请虚拟机时,将相同 业务对应的虚拟机配置到不同的宿主机,在其中一个宿主机宕机时,在其它的宿主机中可 提供相同或相似的业务,通过对资源合理调度从而提高资源对外的业务能力,保证业务的 高可用。目标虚拟机标签由业务部门名称和业务模块名组成,如“企划部/网站”,“财务部/ 数据库”等,通过业务部门名称和业务模块名2个层次定义目标虚拟机标签,减少了标签可 重复度,提高了目标虚拟机标签的描述准确度,使得业务得到精细粒度的划分。

在一个具体的实施例中,如果财务部需要申请2台主机做数据库使用,假设目前系 统的资源分配情况如图7所示,则资源调度的具体过程如下:

1、接收终端发送的虚拟机申请请求,所述虚拟机申请请求包括目标虚拟机标签为 “财务部/数据库”。

2、将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比,由于宿 主机310和宿主机340中存在与目标虚拟机标签匹配的虚拟机标签,不能作为可调度宿主 机,所以宿主机320和宿主机330为目标宿主机;

3、在宿主机320中创建第一虚拟机并设置所述第一虚拟机的标签为“财务部/数据 库”,在宿主机330中创建第二虚拟机并设置所述第二虚拟机的标签为“财务部/数据库”,完 成资源调度后的资源分配示意图如图8所示。

通过以上的资源调度,当宿主机310宕机时,可通过宿主机320、330或340为财务部 提供数据库服务,保证业务的高可用。

在一个实施例中,如图9所示,提供了一种资源调度的方法,以应用于上述应用环 境中的任一集控制服务器来举例说明,包括如下步骤:

步骤S410,接收云控制服务器发送的虚拟机申请请求,虚拟机申请请求包括目标 虚拟机标签。

具体的,云控制服务器根据集调度策略确定目标集后,向目标集对应的目 标集控制服务器发送虚拟机申请请求,目标集控制服务器接收携带目标虚拟机标签的 虚拟机申请请求。虚拟机申请请求用于根据目标虚拟机标签确定目标宿主机,并申请目标 宿主机上的虚拟机。目标虚拟机标签用于标识虚拟机的服务属性,服务属性包括用途属性、 业务属性等,可将不同属性结合得到服务属性。通过为待申请的虚拟机配置虚拟机标签,可 区分待申请的虚拟机的用途,从而根据虚拟机的用途确定符合条件的目标宿主机,达到资 源的合理利用,提高高可用性。虚拟机申请请求中还可包括更多的信息,如集区域信息、 集名称、用户信息、虚拟机配置信息等,从而可通过虚拟机申请请求中携带的信息获取目 标集或对用户权限进行验证等。虚拟机申请请求中可包括一个或多个目标虚拟机标签, 从而可一次性申请与目标虚拟机标签对应的一个或多个虚拟机。

步骤S420,获取当前集内各个宿主机中的当前虚拟机标签,将目标虚拟机标签 与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,目标宿主机中不存在 与目标虚拟机标签匹配的虚拟机标签。

具体的,只需要将目标虚拟机标签与目标集内的各个宿主机中的当前虚拟机标 签进行对比确定目标宿主机,将标签对比的范围限制在目标集内,可根据需要选择目标 集,一方面提高了目标宿主机的确定效率,另一方面保证了目标宿主机选择的可配置性。

步骤S430,以使目标宿主机创建第一虚拟机并设置第一虚拟机的标签为目标虚拟 机标签。

具体的,集控制服务器确定目标宿主机后,可向目标宿主机发送虚拟机申请请 求,从而目标宿主机创建第一虚拟机,创建第一虚拟机时,会给第一虚拟机分配适量的内 存、CPU、网络和磁盘,并加载第一虚拟机的客户操作系统,并设置第一虚拟机的标签为目标 虚拟机标签。

本实施例中,通过接收云控制服务器发送的虚拟机申请请求,虚拟机申请请求包 括目标虚拟机标签,获取当前集内各个宿主机中的当前虚拟机标签,将所述目标虚拟机 标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,目标宿主机中不 存在与目标虚拟机标签匹配的虚拟机标签,以使目标宿主机创建第一虚拟机并设置所述第 一虚拟机的标签为目标虚拟机标签,相互匹配的虚拟机标签分配到不同的宿主机中,从而 能够将相同或相似服务属性的虚拟机分散部署,在其中一个宿主机宕机时,在其它的宿主 机中可提供相同或相似的服务,通过对资源合理调度从而提高资源对外服务的能力,保证 服务的高可用。

在一个实施例中,虚拟机申请请求的目标发送集由云控制服务器根据终端发送 的虚拟机申请请求通过集调度策略确定。

具体的,终端可通过虚拟机申请页面,如web网站,接收输入的目标虚拟机标签,根 据目标虚拟机标签生成对应的虚拟机申请请求,将虚拟机申请请求发送至云控制服务器, 可为私有云控制服务器。集调度策略可根据需要自定义,如资源最少使用调度,贪婪调度 等。如果虚拟机申请请求中携带了地区信息或集信息,则可获取与地区信息匹配的集 作为目标集或直接根据集信息,如集名称确定目标集。如果虚拟机申请请求中携 带了虚拟机配置信息,也可获取与虚拟机配置信息匹配的目标集,目标集中创建的虚 拟机的配置符合虚拟机申请请求中携带的虚拟机配置信息。

在一个实施例中,如图10所示,步骤S420包括:

步骤S421,如果集中第一宿主机中不存在与目标虚拟机标签相同的虚拟机标 签,则将第一宿主机加入可调度宿主机集合。

具体的,第一宿主机中不存在与目标虚拟机标签相同的虚拟机标签,则说明第一 宿主机中已创建的各个虚拟机提供的服务与待申请的虚拟机提供的服务不同,可将第一宿 主机加入可调度宿主机集合,如通过列表的形式存储各个可调度宿主机信息。

步骤S422,从可调度宿主机集合中根据主机调度策略选择得到目标宿主机。

具体的,主机调度策略可根据需要自定义,如包括资源最少使用调度,贪婪调度 等,可从可调度宿主机集合中选择最适合的目标宿主机。当虚拟机申请请求中包括多个目 标虚拟机标签时,每个目标虚拟机标签有对应的可调度宿主机集合,在各自的可调度宿主 机集合中选择最终的目标宿主机。如第一目标虚拟机标签对应第一可调度宿主机集合,从 第一可调度宿主机集合选择得到第一目标宿主机,第二目标虚拟机标签对应第二可调度宿 主机集合,从第二可调度宿主机集合选择得到第二目标宿主机。

本实施例中,先将符合条件的宿主机加入可调度宿主机集合,再从可调度宿主机 集合中确定目标宿主机,进一步提高了目标宿主机选择的适合度。

在一个实施例中,目标虚拟机标签根据业务划分,由业务部门名称和业务模块名 组成。

具体的,目标虚拟机标签根据业务划分,从而使得相同业务申请虚拟机时,将相同 业务对应的虚拟机配置到不同的宿主机,在其中一个宿主机宕机时,在其它的宿主机中可 提供相同或相似的业务,通过对资源合理调度从而提高资源对外的业务能力,保证业务的 高可用。目标虚拟机标签由业务部门名称和业务模块名组成,如“企划部/网站”,“财务部/ 数据库”等,通过业务部门名称和业务模块名2个层次定义目标虚拟机标签,减少了标签可 重复度,提高了目标虚拟机标签的描述准确度,使得业务得到精细粒度的划分。

在一个实施例中,如图11所示,提供了一种资源调度的系统,系统包括:

云控制服务器510,用于接收终端发送的虚拟机申请请求,虚拟机申请请求包括目 标虚拟机标签,根据所述虚拟机申请请求通过集调度策略确定目标集,将虚拟机申请 请求转发至目标集对应的集控制服务器。

集控制服务器520,用于获取当前集内各个宿主机中的当前虚拟机标签,将目 标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,目标宿 主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使目标宿主机创建第一虚拟机并设 置所述第一虚拟机的标签为目标虚拟机标签。

本实施例中,通过云控制服务器和集控制服务器的配合,云控制服务器根据集 调度策略确定目标集,将标签对比的范围限制在目标集内,可根据需要选择目标集 ,一方面提高了目标宿主机的确定效率,另一方面保证了目标宿主机选择的可配置性,相 互匹配的虚拟机标签分配到集中不同的宿主机中,从而能够将相同或相似服务属性的虚 拟机分散部署,在其中一个宿主机宕机时,在其它的宿主机中可提供相同或相似的服务,通 过对资源合理调度从而提高资源对外服务的能力,保证服务的高可用。

在一个实施例中,集控制服务器还用于如果当前集内的第一宿主机中不存在 与目标虚拟机标签相同的虚拟机标签,则将所述第一宿主机加入可调度宿主机集合,从所 述可调度宿主机集合中根据主机调度策略选择得到目标宿主机。

在一个实施例中,目标虚拟机标签根据业务划分,由业务部门名称和业务模块名 组成。

在一个实施例中,如图12所示,提供了一种资源调度的装置,包括:

接收模块610,用于接收终端发送的虚拟机申请请求,虚拟机申请请求包括目标虚 拟机标签。

虚拟机资源调度模块620,用于将目标虚拟机标签与集中各个宿主机中的当前 虚拟机标签进行对比确定目标宿主机,目标宿主机中不存在与目标虚拟机标签匹配的虚拟 机标签,以使目标宿主机创建第一虚拟机并设置第一虚拟机的标签为目标虚拟机标签。

在一个实施例中,如图13所示,虚拟机资源调度模块620包括:

可调度宿主机集合确定单元621,用于如果第一宿主机中不存在与目标虚拟机标 签相同的虚拟机标签,则将第一宿主机加入可调度宿主机集合。

目标宿主机确定单元622,用于从可调度宿主机集合中根据主机调度策略选择得 到目标宿主机。

在一个实施例中,如图14所示,装置还包括:

集选择模块630,用于根据虚拟机申请请求通过集调度策略确定目标集,将 虚拟机申请请求发送至所述目标集对应的集控制服务器,以使集控制服务器返回所 述目标集内的各个宿主机中的当前虚拟机标签。

虚拟机资源调度模块620还用于将目标虚拟机标签与目标集内的各个宿主机中 的当前虚拟机标签进行对比。

在一个实施例中,目标虚拟机标签根据业务划分,由业务部门名称和业务模块名 组成。

在一个实施例中,如图15所示,提供了一种资源调用装置,包括:

接收模块710,用于接收云控制服务器发送的虚拟机申请请求,虚拟机申请请求包 括目标虚拟机标签。

虚拟机资源调度模块720,用于获取当前集内各个宿主机中的当前虚拟机标签, 将目标虚拟机标签与集中各个宿主机中的当前虚拟机标签进行对比确定目标宿主机,目 标宿主机中不存在与目标虚拟机标签匹配的虚拟机标签,以使目标宿主机创建第一虚拟机 并设置所述第一虚拟机的标签为目标虚拟机标签。

在一个实施例中,虚拟机申请请求的目标发送集由云控制服务器根据终端发送 的虚拟机申请请求通过集调度策略确定。

在一个实施例中,目标虚拟机标签根据业务划分,由业务部门名称和业务模块名 组成。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质 中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的 至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述存储介质可为 磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实 施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存 在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并 不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来 说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护 范围。因此,本发明专利的保护范围应以所附权利要求为准。

本文发布于:2024-09-24 05:32:07,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/86244.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议