发明内容
有鉴于此,本发明实施例提供了一种容器服务集群创建方法,包括:
管控中心将容器服务集群的资源创建过程分解为多个流程,所述流程包括一个或多个步骤,并定义所述流程之间的依赖关系;
所述管控中心为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,采用串行或并行的方式自动执行所述流程。
有鉴于此,本发明实施例还提供了一种容器服务集群创建装置,包括:
分解模块,设置为:将容器服务集群的资源创建过程分解为多个流程,所述流程包括一个或多个步骤,并定义所述流程之间的依赖关系;
创建模块,设置为:为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,采用串行或并行的方式自动执行所述流程。
有鉴于此,本发明实施例还提供了一种容器服务集群创建装置,包括存储器和处理器,其特征在于:
所述存储器设置为:保存程序代码;
所述处理器设置为:读取所述程序代码以执行以下处理:
将容器服务集群的资源创建过程分解为多个流程,所述流程包括一个或多个步骤,并定义所述流程之间的依赖关系;
为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,采用串行或并行的方式自动执行所述流程。
上述方案可以缩短容器服务集群创建的时间,改善用户体验。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
实施例一
创建容器服务集群时,需要进行资源创建,容器服务的资源创建过程涉及的内容很多,相互之间的关系也很复杂。本发明的发明人针对容器服务集群的资源创建过程进行深入分析,找出各个环节的逻辑关系,并在集群的资源创建过程中引入工作流以改进整个过程。
本实施例提供了一种容器服务集群创建方法,如图1所示,其总体流程包括:
步骤110,管控中心将容器服务集群的资源创建过程分解为多个流程,所述流程包括一个或多个步骤,并定义所述流程之间的依赖关系;
本实施例中,还可以为所述流程定义步骤执行方式,所述步骤执行方式为串行执行或并行执行。在为所述容器服务集群创建资源时,将按照定义的步骤执行方式执行所述多个流程中的步骤。在其他实施例中,如果所有流程的步骤执行方式均相同,则可以用系统默认的方式,而不一定要显式地定义。
本实施例中,将集群的资源创建过程分解为包括以下的流程一、流程二和流程三,其中:
流程一包括以下一个或多个步骤:设置授权、登陆集线器(HUB)和部署服务;
流程二包括以下一个或多个步骤:创建登陆密钥、配置安全组和创建云服务器(Elastic Compute Service,ECS);
流程三包括以下一个或多个步骤:配置网络、配置服务器负载均衡实例(ServerLoad Balancing,SLB)和上传登陆密钥。
其中,流程一和流程二的执行不依赖于其他流程,而流程三的执行依赖于流程二执行成功。
步骤120,为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,采用串行或并行的方式自动执行所述流程。
本实施例中,为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,先并行执行所述流程一和流程二;流程二执行成功后,再自动执行所述流程三。
本实施例中,流程一和流程二的步骤执行方式定义为串行执行,流程三的步骤执行方式定义为并行执行。为所述容器服务集群创建资源时,以串行方式执行流程一和流程二中的步骤,以并行方式执行流程三中的步骤。
虽然本实施例分解的流程如上所述,但集群的资源创建过程并不只有一种且固定不变,而且即使资源创建过程相同,将其分解为哪些步骤,将哪些步骤组成流程,都会有不同的方式,而这些方式也直接影响资源创建的效率。本发明的发明人经过研究和实验验证,提出了一种成功率高的分解方式。相应的示例性的资源创建过程如图2所示,在为容器服务集群创建资源之前,先执行创建集群、参数校验和准备集群证书的步骤。然后启动资源创建过程,此时先并行执行流程一和流程二,其中流程一和流程二中的多个步骤均以串行方式执行,流程一串行执行设置授权、登陆HUB和部署服务的步骤(即先执行设置授权的步骤,成功后再执行登陆HUB的步骤,成功后再执行部署服务的步骤);流程二串行执行创建登陆密钥、配置安全组和创建ECS的步骤(即先执行创建登陆密钥的步骤、成功后再执行配置安全组的步骤,成功后再执行创建ECS的步骤);在流程二执行成功后,开始执行流程三(也即流程二和流程三是串行执行的),其中流程三中的配置网络、配置SLB和上传登陆密钥的步骤以并行方式执行,即这三个步骤可以同时执行。在流程一和流程三均执行成功后,资源创建成功,再配置容器,从而完成整个的容器服务集群创建过程。
本实施例方法可以提升创建的成功率以及降低耗时,从而提高用户体验。例如,在某一资源创建失败时,在重新创建该依赖资源的过程中,还可以执行其他依赖资源的创建工作,因而一旦该依赖资源创建成功,就可以迅速完成整个创建过程。
实施例二
本实施例还提供了一种容器服务集群创建装置,如图3所示,包括:
分解模块10,设置为:将容器服务集群的资源创建过程分解为多个流程,所述流程包括一个或多个步骤,并定义所述流程之间的依赖关系;
创建模块20,设置为:为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,采用串行或并行的方式自动执行所述流程。
本实施例中,
所述分解模块还设置为:为所述流程定义步骤执行方式,所述步骤执行方式为串行执行或并行执行;
所述创建模块还设置为:为所述容器服务集群创建资源时,按照定义的步骤执行方式执行所述多个流程中的步骤。
本实施例中,
所述分解模块将容器服务集群的资源创建过程分解为多个流程,所述多个流程包括以下的流程一、流程二和流程三,其中:
流程一包括以下一个或多个步骤:设置授权、登陆集线器和部署服务;
流程二包括以下一个或多个步骤:创建登陆密钥、配置安全组和创建云服务器;
流程三包括以下一个或多个步骤:配置网络、配置服务器负载均衡实例和上传登陆密钥。
本实施例中,
所述分解模块定义的所述流程之间的依赖关系为:流程一和流程二的执行不依赖于其他流程,流程三的执行依赖于流程二执行成功;定义的所述流程一和流程二的步骤执行方式为串行,流程三的步骤执行方式为并行;
所述创建模块为所述容器服务集群创建资源时,先并行执行流程一和流程二,执行流程一时串行执行设置授权、登陆集线器和部署服务的步骤,执行流程二时串行执行创建登陆密钥、配置安全组和创建云服务器的步骤;流程二执行成功后自动执行流程三,执行流程三时并行执行配置网络、配置服务器负载均衡实例和上传登陆密钥的步骤。
本实施例的容器服务集群创建装置可设置在容器服务系统的管控中心。
本实施例还提供了一种容器服务集群创建装置,包括存储器和处理器,其中:
所述存储器设置为:保存程序代码;
所述处理器设置为:读取所述程序代码以执行以下处理:
将容器服务集群的资源创建过程分解为多个流程,所述流程包括一个或多个步骤,并定义所述流程之间的依赖关系;
为所述容器服务集群创建资源时,根据所述流程之间的依赖关系,采用串行或并行的方式自动执行所述流程。
本实施例中,
所述处理器将集群的资源创建过程分解为以下的流程一、流程二和流程三,其中:
流程一包括以下一个或多个步骤:设置授权、登陆集线器和部署服务;
流程二包括以下一个或多个步骤:创建登陆密钥、配置安全组和创建云服务器;
流程三包括以下一个或多个步骤:配置网络、配置服务器负载均衡实例和上传登陆密钥。
本实施例中,
所述处理器定义的所述流程之间的依赖关系为:流程一和流程二的执行不依赖于其他流程,流程三的执行依赖于流程二执行成功;所述处理器还将所述流程一和流程二的步骤执行方式定义为串行执行,将所述流程三的步骤执行方式定义为并行执行;
所述处理器为所述容器服务集群创建资源时,先并行执行流程一和流程二,执行流程一时串行执行设置授权、登陆集线器和部署服务的步骤,执行流程二时串行执行创建登陆密钥、配置安全组和创建云服务器的步骤;流程二执行成功后自动执行流程三,执行流程三时并行执行配置网络、配置服务器负载均衡实例和上传登陆密钥的步骤。
上述处理器还可以执行本实施例方法的任何其他处理。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。