CN111309447B - 容器调度方法及装置 - Google Patents
容器调度方法及装置 Download PDFInfo
- Publication number
- CN111309447B CN111309447B CN202010181932.6A CN202010181932A CN111309447B CN 111309447 B CN111309447 B CN 111309447B CN 202010181932 A CN202010181932 A CN 202010181932A CN 111309447 B CN111309447 B CN 111309447B
- Authority
- CN
- China
- Prior art keywords
- virtual node
- target
- cluster
- management
- container instance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种容器调度方法及装置,该方法包括:当目标集群控制组件接收到容器实例创建请求时,确定目标虚拟节点;目标集群控制组件为管理集群集合中目标管理集群的任意一个用户的集群控制组件,管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,管理集群集合中的每个管理集群中均部署至少一个用户的虚拟节点;目标集群控制组件将容器实例创建请求调度至目标虚拟节点,以触发目标虚拟节点将容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使管理组件依据容器实例创建请求创建容器实例。能够以较少的组件实现对多个Kubernetes集群的进行管理,容器调度效率高。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种容器调度方法及装置。
背景技术
近年来,随着容器化技术的发展,Kubernetes已成为企业IT服务中容器编排系统的事实标准。kubernetes是一个开源的用于管理云平台中多个主机上的容器化的应用,其中,原生的Kubernetes都是单个集群工作,无法实现对多个集群间的容器进行调度。
现有技术中,为了实现对多个Kubernetes集群进行管理,往往会应用到OpenStack技术,然而,采用OpenStack技术会应用到过多额外的组件,使得实现方式过于复杂,容器调度的效率低。
发明内容
本发明所要解决的技术问题是提供一种容器调度方法,能够以较少的组件实现对多个Kubernetes集群的进行管理,容器调度效率高。
本发明还提供了一种容器调度装置,用以保证上述方法在实际中的实现及应用。
一种容器调度方法,包括:
当目标集群控制组件接收到容器实例创建请求时,依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
上述的方法,可选的,所述依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点,包括:
获取所述容器实例创建请求中的节点亲和性参数;
依据所述节点亲和性参数在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点。
上述的方法,可选的,所述依据所述节点亲和性参数在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点,包括:
获取所述虚拟节点集合中的各个虚拟节点的标签信息;
将所述节点亲和性参数与各个所述标签信息进行匹配;
将与所述节点亲和性参数匹配成功的标签信息所属的虚拟节点确定为目标虚拟节点。
上述的方法,可选的,所述获取所述虚拟节点集合中的各个虚拟节点的标签信息,包括:
确定所述目标集群控制组件对应的用户;
获取所述用户的虚拟节点集合,所述虚拟节点集合包括每个所述管理集群中与所述用户对应的虚拟节点;
遍历预先设置的配置文件,得到每个所述虚拟节点的标签信息。
上述的方法,可选的,所述将所述容器实例创建请求调度至所述目标虚拟节点之后,还包括:
向所述用户发送与所述容器实例创建请求对应的容器实例创建成功的提示信息。
一种容器调度装置,包括:
确定单元,用于当接收到容器实例创建请求时,依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
调度单元,用于将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
上述的装置,可选的,所述确定单元,包括:
第一获取子单元,用于获取所述容器实例创建请求中的节点亲和性参数;
第一确定子单元,用于依据所述节点亲和性参数在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点。
上述的装置,可选的,所述第一确定子单元,包括:
第二获取子单元,用于获取所述虚拟节点集合中的各个虚拟节点的标签信息;
匹配子单元,用于将所述节点亲和性参数与各个所述标签信息进行匹配;
第二确定子单元,用于将与所述节点亲和性参数匹配成功的标签信息所属的虚拟节点确定为目标虚拟节点。
上述的装置,可选的,所述第二获取子单元,包括:
第三确定子单元,用于确定所述目标集群控制组件对应的用户;
第三获取子单元,用于获取所述用户的虚拟节点集合,所述虚拟节点集合包括每个所述管理集群中与所述用户对应的虚拟节点;
查询子单元,用于遍历预先设置的配置文件,得到每个所述虚拟节点的标签信息。
上述的装置,可选的,还包括:
提示单元,用于向所述用户发送与所述容器实例创建请求对应的容器实例创建成功的提示信息。
与现有技术相比,本发明包括以下优点:
本发明提供了一种容器调度方法和装置,当目标集群控制组件接收到容器实例创建请求时,依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;所述目标集群控制组件将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。应用本发明提供的容器调度方法,能够以较少的组件实现对多个Kubernetes集群的进行管理,容器调度效率高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种容器调度方法的方法流程图;
图2为本发明提供的确定目标虚拟节点的过程的流程图;
图3为本发明提供的一种Kubernetes管理集群集合的结构示例图;
图4为本发明提供的一种容器调度方法的又一方法流程图;
图5为本发明提供的一种容器调度装置的结构示意图;
图6为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种容器调度方法,该方法可以应用在多种系统平台,其执行主体可以为计算机终端或各种移动设备的处理器,所述方法的方法流程图如图1所示,具体包括:
S101:当目标集群控制组件接收到容器实例创建请求时,依据容器实例创建请求在目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点。
其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
具体的,该容器实例创建请求为该目标集群控制组件对应的用户发送的。
本发明实施例提供的方法中,每个管理集群可以部署在不同的地域,该管理集群为Kubernetes集群,用户的集群控制组件为用户Kubernetes集群Master组件,用户的集群控制组件可以部署于所述管理集群集合中的一个或多个管理集群,在用户的集群控制组件部署于管理集群集合中的多个管理集群的情况下,能够解决节点集群控制组件的高可用问题。
该虚拟节点集合中包含该目标集群控制组件对应的用户的各个虚拟节点,管理集群集合中部分或全部的管理集群包含该用户的虚拟节点,该虚拟节点设置有VirtualKubelet组件;优选的,管理集群集合中的每个管理集群均包含所有用户的虚拟节点。
S102:将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
本发明实施例提供的方法中,该管理组件可以为该管理集群的Master组件。
具体的,通过目标集群控制组件将容器实例创建请求调度至目标虚拟节点的Virtual Kubelet组件上,Virtual Kubelet组件将该容器实例创建请求发送至该管理组件,管理组件接收到该容器实例创建请求后,在管理集群的节点Node上创建Pod容器实例,Pod是kubernetes中的一个标准概念,是可被调度的最小计算单元。
其中,对于每个管理集群,该管理集群包含有管理组件以及该管理集群的节点Node,该Node可以包含有至少一个用户的集群控制组件,以及各个用户的Virtual Kubelet组件。
本发明实施例提供的容器调度方法,包括:当目标集群控制组件接收到容器实例创建请求时,确定目标虚拟节点;目标集群控制组件为管理集群集合中目标管理集群的任意一个用户的集群控制组件,管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,管理集群集合中的每个管理集群中均部署至少一个用户的虚拟节点;目标集群控制组件将容器实例创建请求调度至目标虚拟节点,以触发目标虚拟节点将容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使管理组件依据容器实例创建请求创建容器实例。能够有效的实现对多个Kubernetes集群的进行管理,应用到的组件类型少,实现方式简单,容器调度效率高。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点,可以包括:
获取所述容器实例创建请求中的节点亲和性参数;
依据所述节点亲和性参数在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点。
本发明实施例提供的方法中,该容器实例创建请求包含有节点亲和性参数,以及创建容器实例所需的标准的Kubernetes pod参数。
其中,依据节点亲和性参数可以判断该容器实例创建请求是否与虚拟节点集合中的各个节点具有亲和性。
应用本发明实施例提供的方法,能够精准的在虚拟节点集合中确定目标虚拟节点,进而能够将该容器实例创建请求调度到相应地域的管理集群上。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述依据所述节点亲和性参数在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点,如图2所示,具体包括:
S201:获取所述虚拟节点集合中的各个虚拟节点的标签信息。
本发明实施例提供的方法中,预先为用户的虚拟节点集合中的每一个虚拟节点分配标签信息,即,为该用户在不同地域的管理集群的虚拟节点分配不同的标签信息。
例如,标签“A”可以表征该用户在地域一的管理集群上的虚拟节点,标签“B”可以表征用户在地域二的管理集群上的虚拟节点等。
S202:将所述节点亲和性参数与各个所述标签信息进行匹配。
本发明实施例提供的方法中,该节点亲和性参数可以为“region=A”、“region=B”或“region=C”等等,表征该容器实例创建请求与虚拟节点的亲和性。
具体的,通过应用节点亲和性参数与各个标签信息进行匹配,可以确定与该容器实例创建请求具有亲和性的虚拟节点。
S203:将与所述节点亲和性参数匹配成功的标签信息所属的虚拟节点确定为目标虚拟节点。
本发明实施例提供的方法中,与节点亲和性参数匹配成功的标签信息所属的虚拟节点即为:与该容器实例创建请求的具有亲和性的虚拟节点。
通过为各个虚拟节点设置相应的标签信息,并将各个标签信息与容器实例创建请求中的节点亲和性参数进行匹配,能够准确的确定出目标虚拟节点,进而能够将容器实例调度至相应的虚拟节点上。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述获取所述虚拟节点集合中的各个虚拟节点的标签信息,包括:
确定所述目标集群控制组件对应的用户;
获取所述用户的虚拟节点集合,所述虚拟节点集合包括每个所述管理集群中与所述用户对应的虚拟节点;
遍历预先设置的配置文件,得到每个所述虚拟节点的标签信息。
本发明实施例提供的方法中,目标集群控制组件为接收到容器实例创建请求的集群控制组件,可以通过多种方式确定该目标集群控制组件的用户,例如,可以通过容器实例创建请求中的用户标识信息确定该目标集群控制组件对应的用户,也可以依据目标集群控制组件对应的标识信息确定该目标集群控制组件对应的用户。
具体的,管理集群集合中的每个管理集群所部署的地域各不相同,每个管理集群均设置有多个用户的虚拟节点,确定目标集群控制组件对应的用户之后,可以获取到该用户的虚拟节点集合。
其中,该预先设置的配置文件中包含有每个节点的标签信息,该标签信息可以依据实际需求进行设定。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述将所述容器实例创建请求调度至所述目标虚拟节点之后,还包括:
向用户发送与该容器实例创建请求对应的容器实例创建成功的提示信息。
在本发明的一实施例中,为了进一步说明本发明提供的容器调度方法的实现原理,如图3所示,为本发明提供的一种Kubernetes管理集群集合的结构示例图,下面进行详细说明:
管理集群集合中包含地域一、地域二以及地域三的Kubernetes集群,即,管理集群集中包含各个地域对应的管理集群,其中,每个管理集群中包含该管理集群的Master组件以及管理集群节点Node;
具体的,对于每个地域中的管理集群,以pod的形式在该管理集群的Node中为不同用户的用户集群部署相应的集群控制Master组件,其中,对于每个用户,该用户的Master组件可以部署在一个或多个地域的管理集群中。
对于每个地域中的Kubernetes集群,该管理集群中的Node部署各个用户对应的Virtual Kubelet组件,每个Virtual Kubelet组件对应一个虚拟节点。
参见图4,为本发明实施例提供的容器调度方法的又一方法流程图,具体包括:
S401:用户通过相应的客户端向其对应的用户集群Master组件发送的容器实例创建请求。
S402:确定目标虚拟节点,将该容器实例创建请求发送至该目标虚拟节点上的VirtualKubelet组件。
S403:该Virtual Kubelet组件将容器实例创建请求发送至该目标虚拟节点所属的管理集群的Master组件。
S404:该Master组件依据该容器实例创建请求创建相应的容器实例。
进一步的,当任意一个用户的Master组件接收到该集群控制组件对应的用户通过相应的客户端发送的容器实例删除请求时,依据该容器实例删除请求在该用户的Master组件对应的虚拟节点集合中确定目标虚拟节点;
该用户的Master控制组件将容器实例删除请求调度至目标虚拟节点,以触发目标虚拟节点将容器实例删除请求发送至该目标虚拟节点所属的管理集群的Master组件,使该管理集群的Master组件依据所述容器实例删除请求确定待删除的容器实例,并将该待删除的容器实例进行删除。
与图1所述的方法相对应,本发明实施例还提供了一种容器调度装置,用于对图1中方法的具体实现,本发明实施例提供的容器调度装置可以应用于计算机终端或各种移动设备中,其结构示意图如图5所示,具体包括:
确定单元501,用于当目标集群控制组件接收到容器实例创建请求时,依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
调度单元502,用于将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
本发明实施例提供的容器调度装置,当目标集群控制组件接收到容器实例创建请求时,确定目标虚拟节点;目标集群控制组件为管理集群集合中目标管理集群的任意一个用户的集群控制组件,管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,管理集群集合中的每个管理集群中均部署至少一个用户的虚拟节点;将容器实例创建请求调度至目标虚拟节点,以触发目标虚拟节点将容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使管理组件依据容器实例创建请求创建容器实例。能够有效的实现对多个Kubernetes集群的进行管理,应用到的组件类型少,实现方式简单,容器调度效率高。
在本发明提供的一实施例中,基于上述的方案,具体的,所述确定单元501,包括:
第一获取子单元,用于获取所述容器实例创建请求中的节点亲和性参数;
第一确定子单元,用于依据所述节点亲和性参数在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点。
在本发明提供的一实施例中,基于上述的方案,具体的,所述第一确定子单元,包括:
第二获取子单元,用于获取所述虚拟节点集合中的各个虚拟节点的标签信息;
匹配子单元,用于将所述节点亲和性参数与各个所述标签信息进行匹配;
第二确定子单元,用于将与所述节点亲和性参数匹配成功的标签信息所属的虚拟节点确定为目标虚拟节点。
在本发明提供的一实施例中,基于上述的方案,具体的,所述第二获取子单元,包括:
第三确定子单元,用于确定所述目标集群控制组件对应的用户;
第三获取子单元,用于获取所述用户的虚拟节点集合,所述虚拟节点集合包括每个所述管理集群中与所述用户对应的虚拟节点;
查询子单元,用于遍历预先设置的配置文件,得到每个所述虚拟节点的标签信息。
在本发明提供的一实施例中,基于上述的方案,具体的,还包括:
提示单元,用于向所述用户发送与所述容器实例创建请求对应的容器实例创建成功的提示信息。
上述本发明实施例公开的容器调度装置中的各个单元和模块具体的原理和执行过程,与上述本发明实施例公开的容器调度方法相同,可参见上述本发明实施例提供的容器调度方法中相应的部分,这里不再进行赘述。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述容器调度方法。
本发明实施例还提供了一种电子设备,其结构示意图如图6所示,具体包括存储器601,以及一个或者一个以上的指令602,其中一个或者一个以上指令602存储于存储器601中,且经配置以由一个或者一个以上处理器603执行所述一个或者一个以上指令602进行以下操作:
当目标集群控制组件接收到容器实例创建请求时,依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种容器调度方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种容器调度方法,其特征在于,包括:
当目标集群控制组件接收到容器实例创建请求时,依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
所述依据所述容器实例创建请求在所述目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点,包括:获取所述容器实例创建请求中的节点亲和性参数;获取所述虚拟节点集合中的各个虚拟节点的标签信息;将所述节点亲和性参数与各个所述标签信息进行匹配;将与所述节点亲和性参数匹配成功的标签信息所属的虚拟节点确定为目标虚拟节点;
将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
2.根据权利要求1所述的方法,其特征在于,所述获取所述虚拟节点集合中的各个虚拟节点的标签信息,包括:
确定所述目标集群控制组件对应的用户;
获取所述用户的虚拟节点集合,所述虚拟节点集合包括每个所述管理集群中与所述用户对应的虚拟节点;
遍历预先设置的配置文件,得到每个所述虚拟节点的标签信息。
3.根据权利要求1所述的方法,其特征在于,所述将所述容器实例创建请求调度至所述目标虚拟节点之后,还包括:
向所述用户发送与所述容器实例创建请求对应的容器实例创建成功的提示信息。
4.一种容器调度装置,其特征在于,包括:
确定单元,用于当接收到容器实例创建请求时,依据所述容器实例创建请求在目标集群控制组件对应的虚拟节点集合中确定目标虚拟节点;其中,所述目标集群控制组件为预先建立的管理集群集合中的目标管理集群中的任意一个用户的集群控制组件,所述管理集群集合中的至少一个管理集群包含至少一个用户的集群控制组件,所述管理集群集合中的每个所述管理集群中均部署所述至少一个用户的虚拟节点;
所述确定单元,包括:第一获取子单元、第二获取子单元、匹配子单元和第二确定子单元;
所述第一获取子单元,用于获取所述容器实例创建请求中的节点亲和性参数;
所述第二获取子单元,用于获取所述虚拟节点集合中的各个虚拟节点的标签信息;
所述匹配子单元,用于将所述节点亲和性参数与各个所述标签信息进行匹配;
所述第二确定子单元,用于将与所述节点亲和性参数匹配成功的标签信息所属的虚拟节点确定为目标虚拟节点;
调度单元,用于将所述容器实例创建请求调度至所述目标虚拟节点,以触发所述目标虚拟节点将所述容器实例创建请求发送至该目标虚拟节点所属的管理集群的管理组件,使所述管理组件依据所述容器实例创建请求创建容器实例。
5.根据权利要求4所述的装置,其特征在于,所述第二获取子单元,包括:
第三确定子单元,用于确定所述目标集群控制组件对应的用户;
第三获取子单元,用于获取所述用户的虚拟节点集合,所述虚拟节点集合包括每个所述管理集群中与所述用户对应的虚拟节点;
查询子单元,用于遍历预先设置的配置文件,得到每个所述虚拟节点的标签信息。
6.根据权利要求4所述的装置,其特征在于,还包括:
提示单元,用于向所述用户发送与所述容器实例创建请求对应的容器实例创建成功的提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181932.6A CN111309447B (zh) | 2020-03-16 | 2020-03-16 | 容器调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181932.6A CN111309447B (zh) | 2020-03-16 | 2020-03-16 | 容器调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111309447A CN111309447A (zh) | 2020-06-19 |
CN111309447B true CN111309447B (zh) | 2023-08-25 |
Family
ID=71158721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010181932.6A Active CN111309447B (zh) | 2020-03-16 | 2020-03-16 | 容器调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309447B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113918273B (zh) * | 2020-07-10 | 2023-07-18 | 华为技术有限公司 | 一种容器组的创建方法和装置 |
CN112631680B (zh) * | 2020-12-28 | 2024-07-23 | 南方电网数字平台科技(广东)有限公司 | 微服务容器调度系统、方法、装置和计算机设备 |
CN113312161A (zh) * | 2021-05-06 | 2021-08-27 | 联想(北京)有限公司 | 一种应用调度方法、平台及存储介质 |
CN114745377B (zh) * | 2022-02-14 | 2024-06-07 | 优刻得科技股份有限公司 | 边缘云集群服务系统及实现方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404385A (zh) * | 2011-10-25 | 2012-04-04 | 华中科技大学 | 面向高性能计算的虚拟集群部署系统和部署方法 |
CN109582441A (zh) * | 2018-11-30 | 2019-04-05 | 北京百度网讯科技有限公司 | 用于提供容器服务的系统、方法和装置 |
CN110275761A (zh) * | 2018-03-16 | 2019-09-24 | 华为技术有限公司 | 调度方法、装置和主节点 |
CN110389836A (zh) * | 2019-07-17 | 2019-10-29 | 腾讯科技(深圳)有限公司 | 一种多集群管理方法、装置、服务器及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10153941B2 (en) * | 2016-05-17 | 2018-12-11 | Microsoft Technology Licensing, Llc | Distributed operational control in computing systems |
-
2020
- 2020-03-16 CN CN202010181932.6A patent/CN111309447B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404385A (zh) * | 2011-10-25 | 2012-04-04 | 华中科技大学 | 面向高性能计算的虚拟集群部署系统和部署方法 |
CN110275761A (zh) * | 2018-03-16 | 2019-09-24 | 华为技术有限公司 | 调度方法、装置和主节点 |
CN109582441A (zh) * | 2018-11-30 | 2019-04-05 | 北京百度网讯科技有限公司 | 用于提供容器服务的系统、方法和装置 |
CN110389836A (zh) * | 2019-07-17 | 2019-10-29 | 腾讯科技(深圳)有限公司 | 一种多集群管理方法、装置、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111309447A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111309447B (zh) | 容器调度方法及装置 | |
CN111309448B (zh) | 基于多租户的管理集群的容器实例创建方法及装置 | |
US10678656B2 (en) | Intelligent restore-container service offering for backup validation testing and business resiliency | |
CN108737270B (zh) | 一种服务器集群的资源管理方法和装置 | |
CN108399101B (zh) | 资源调度的方法、装置和系统 | |
CN109376155B (zh) | Id生成方法及装置、存储介质及电子设备 | |
CN105493045A (zh) | 虚拟计算实例迁移 | |
WO2016201160A1 (en) | Computing resource deployment system | |
US20130326510A1 (en) | Virtualization-based environments for problem resolution | |
US20120239810A1 (en) | System, method and computer program product for clustered computer environment partition resolution | |
US11418606B2 (en) | Computing resource management system | |
CN110673933A (zh) | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 | |
CN108431768A (zh) | 应用特征的受控部署 | |
CN109800083A (zh) | 一种微服务协同调用的方法、装置、系统及存储介质 | |
CN110659104B (zh) | 一种业务监控方法及相关设备 | |
CN111353758A (zh) | 流程变更方法及装置 | |
CN110737510A (zh) | 块设备管理系统 | |
CN106412094A (zh) | 一种以公有云方式组织管理分散资源的方法 | |
CN107045452B (zh) | 虚拟机调度方法和装置 | |
CN111008064B (zh) | 虚机资源调度方法和装置、集群部署方法和装置 | |
CN116737377A (zh) | 计算集群资源调度方法、电子设备及可读存储介质 | |
US20130145004A1 (en) | Provisioning using presence detection | |
US11734136B1 (en) | Quick disaster recovery in distributed computing environment | |
CN115309558A (zh) | 一种资源调度管理系统、方法、计算机设备及存储介质 | |
CN111092954B (zh) | 一种生成微服务的方法和装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |