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

文档序号:15163840发布日期:2018-08-14 17:11阅读:168来源:国知局

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



背景技术:

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

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



技术实现要素:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

附图说明

图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-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

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

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1