CN114327770A - 容器集群管理系统及方法 - Google Patents
容器集群管理系统及方法 Download PDFInfo
- Publication number
- CN114327770A CN114327770A CN202111644324.5A CN202111644324A CN114327770A CN 114327770 A CN114327770 A CN 114327770A CN 202111644324 A CN202111644324 A CN 202111644324A CN 114327770 A CN114327770 A CN 114327770A
- Authority
- CN
- China
- Prior art keywords
- container cluster
- cluster
- container
- cloud environment
- target
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明属于计算机技术领域,公开了一种容器集群管理系统及方法,该系统包括:容器集群管理组件、集群编排镜像和底座容器集群;容器集群管理组件在接收客户端发出的容器集群操作请求时,确定对应的容器集群参数,向底座容器集群发出调度请求;底座容器集群根据调度请求以容器形式启动集群编排镜像;集群编排镜像接收容器集群参数,根据容器集群参数与对应的云环境进行交互,在云环境下执行容器集群操作。本发明利用容器集群管理组件管理多云环境中容器集群的全生命周期,以统一的抽象格式描述多云环境下的容器集群参数,集群编排镜像根据容器集群参数从多云环境下选择对应的云环境执行对应的容器集群操作,实现了多云环境下容器集群的统一管理。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种容器集群管理系统及方法。
背景技术
随着容器技术已成为云环境下PaaS(Platform as a Service,平台服务)主流的实现方案,很多公司或组织在云环境下使用容器集群部署自己的服务;而根据需求或业务的不同,容器集群有时会部署在不同的云环境中,如何在多云环境下高效的进行容器集群的生命周期管理,成为公司或组织必须要做的工作。
公司或组织在多云环境下部署容器集群时,每个平台和服务是独立的,存在容器集群难以统一管理的问题。
发明内容
针对现有技术存在的容器集群管理问题,本发明提供一种容器集群管理系统及方法。
第一方面,本发明提供了一种容器集群管理系统,所述容器集群管理系统包括:容器集群管理组件、集群编排镜像以及底座容器集群;
所述容器集群管理组件,用于在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数,并向所述底座容器集群发出调度请求;
所述底座容器集群,用于根据所述调度请求以容器形式启动所述集群编排镜像;
所述集群编排镜像,用于接收所述容器集群管理组件传入的所述容器集群参数,根据所述容器集群参数与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
可选地,所述容器集群管理组件,还用于向所述客户端提供不同容器集群操作对应的应用程序接口,基于所述应用程序接口接收所述客户端发出的容器集群操作请求。
可选地,所述容器集群管理组件,还用于在基于多个应用程序接口接收到多个目标容器集群操作请求时,分别确定各个所述目标容器集群操作请求对应的目标容器集群参数,并向所述底座容器集群发出多个目标调度请求;
所述底座容器集群,还用于根据所述多个目标调度请求以容器形式启动多个集群编排镜像;
所述集群编排镜像,还用于根据接收到的所述目标容器集群参数与对应的目标云环境进行交互,在所述目标云环境下执行对应的目标容器集群操作。
可选地,所述容器集群管理组件,还用于从所述容器集群操作请求中提取容器集群元数据,按照预设配置语言抽象描述所述容器集群元数据,得到容器集群参数。
可选地,所述集群编排镜像包括解释器、执行器和多云环境的云环境驱动;
所述解释器,用于将所述容器集群参数转换为资源描述文件;
所述执行器,用于根据所述资源描述文件启动对应的目标云环境驱动,通过所述目标云环境驱动与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
可选地,所述容器集群操作包括创建容器集群、销毁容器集群、获取容器集群状态、容器集群扩容和容器集群缩容。
可选地,所述集群编排镜像,还用于按照预设记录模板记录所述容器集群操作对应的操作结果;
所述容器集群管理组件,还用于获取所述操作结果,将所述操作结果反馈至所述客户端。
第二方面,本发明还提出一种容器集群管理方法,所述容器集群管理方法应用于如第一方面所述的容器集群管理系统,所述容器集群管理系统包括:容器集群管理组件、集群编排镜像以及底座容器集群;
所述容器集群管理方法,包括:
所述容器集群管理组件在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数,并向所述底座容器集群发出调度请求;
所述底座容器集群根据所述调度请求以容器形式启动所述集群编排镜像;
所述集群编排镜像接收所述容器集群管理组件传入的所述容器集群参数,根据所述容器集群参数与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
可选地,所述方法还包括:
所述容器集群管理组件在基于多个应用程序接口接收到多个目标容器集群操作请求时,分别确定各个所述目标容器集群操作请求对应的目标容器集群参数,并向所述底座容器集群发出多个目标调度请求;
所述底座容器集群根据所述多个目标调度请求以容器形式启动多个集群编排镜像;
所述集群编排镜像根据接收到的所述目标容器集群参数与对应的目标云环境进行交互,在所述目标云环境下执行对应的目标容器集群操作。
本发明提出的系统包括容器集群管理组件、集群编排镜像以及底座容器集群;容器集群管理组件在接收客户端发出的容器集群操作请求时,根据容器集群操作请求确定对应的容器集群参数,并向底座容器集群发出调度请求;底座容器集群根据调度请求以容器形式启动集群编排镜像;集群编排镜像接收容器集群管理组件发出的容器集群参数,根据容器集群参数与对应的云环境进行交互,在云环境下执行对应的容器集群操作。通过上述方式,利用容器集群管理组件管理多云环境中容器集群的全生命周期,底座容器集群在容器集群管理组件的调度下启动集群编排镜像,集群编排镜像根据容器集群参数从多云环境下选择对应的云环境进行交互,执行对应的容器集群操作,实现了多云环境下容器集群的统一管理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的容器集群管理系统的第一实施例结构框图;
图2为本发明提供的容器集群管理系统的架构示意图;
图3为本发明提供的容器集群管理系统的第二实施例结构框图;
图4为本发明提供的容器集群管理系统的容器集群管理组件示意图;
图5为本发明提供的容器集群管理系统的第三实施例结构框图;
图6为本发明提供的容器集群管理系统的集群编排镜像示意图;
图7为本发明提供的容器集群管理系统的执行器创建资源流程示意图;
图8为本发明提供的容器集群管理系统的执行器修改资源流程示意图;
图9为本发明提供的容器集群管理系统的执行器销毁资源流程示意图;
图10为本发明提供的容器集群管理系统的工作流程示意图;
图11为本发明提供的容器集群管理方法的第一实施例流程示意图。
附图标号说明:
标号 | 名称 | 标号 | 名称 |
10 | 容器集群管理组件 | 50 | 解释器 |
20 | 底座容器集群 | 60 | 执行器 |
30 | 集群编排镜像 | 70 | 云环境驱动 |
40 | 应用程序接口 |
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着容器技术已成为云环境下PaaS(Platform as a Service,平台即服务)主流的实现方案,很多公司或组织在云环境下使用容器集群部署自己的服务;而根据需求或业务的不同,容器集群有时会部署在不同的云环境中,如何在多云环境下高效的进行容器集群的生命周期管理,成为公司或组织必须要做的工作。
公司或组织在多云环境下部署容器集群时会面临如下问题:(一)多云环境下,每个平台和服务是独立的,容器集群难以统一管理。(二)Boto、Fog等库通过使用云提供商的API(Application Programming Interface,应用程序接口)来提供对云服务的本地访问。一些库专注于特定的云,而另一些库则试图将它们全部连接起来,并掩盖语义差异。这些客户端库只提供对API的低级访问,需要应用程序开发人员创建自己的工具来构建和管理其容器集群。(三)大多数组织使用自有工具来帮助自动化管理容器集群所涉及的机械过程。这些工具需要时间、资源来构建和维护。作为必要的工具,它们代表了一个组织需要的最小的可行特性,被构建来处理直接的需求。因此,它们通常很难扩展和维护。(四)Terraform等开源软件针对各个云服务分别进行资源管理,但是在多云环境中并没有屏蔽各云服务商的资源差异,需要组织或公司自己针对不同的云服务商做资源配置和管理。
对此,本发明实施例提供了一种容器集群管理系统,参照图1,图1为本发明提供的容器集群管理系统的第一实施例结构框图。
本实施例中,所述容器集群管理系统包括:容器集群管理组件10、集群编排镜像30以及底座容器集群20;
所述容器集群管理组件10,用于在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数,并向所述底座容器集群20发出调度请求。
本实施例中的容器集群管理组件10为客户端提供统一的API接口(应用程序接口),用于接收客户端面向多云环境发出的容器集群操作请求,将客户端提交的API请求按照预设配置语言进行转换,在底座容器集群20上调度容器集群编排镜像30,并为客户端容器集群操作结果。在具体实现中,容器集群管理组件10用于管理多云环境下容器集群的生命周期管理,包括但不限于:创建集群、销毁集群、集群扩容、集群缩容等。
所述底座容器集群20,用于根据所述调度请求以容器形式启动所述集群编排镜像30。
需要说明的是,本实施例的底座容器集群20为设置于容器集群管理系统上的容器集群,执行容器集群操作的容器集群为部署在多云环境中的容器集群。在具体实现中,容器集群管理组件10在接收到客户端的容器集群操作请求时,内部调度集群编排镜像30,在底座容器集群20上创建容器,以容器形式启动集群编排镜像30。
所述集群编排镜像30,用于接收所述容器集群管理组件10传入的所述容器集群参数,根据所述容器集群参数与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
应当理解的是,可选地,容器集群管理组件10将客户端提交的API请求按照预设配置语言进行转换,将转换好的容器集群参数提交至自有的底座容器集群20,底座容器集群20在创建容器的同时传入容器集群参数,集群编排镜像30在容器中运行,接收容器集群管理组件10通过底座容器集群20传入的容器集群参数。
在另一种实现方式中,容器集群管理组件10将转换好的容器集群参数存储至预设路径下,该路径被配置为集群编排镜像30运行时提取参数的默认路径,集群编排镜像30从预设路径下读取容器集群管理组件10传入的容器集群参数。
需要说明的是,本实施例的集群编排镜像30对容器集群参数进行解析,转换为资源描述文件,根据资源描述文件确定执行容器集群操作的云环境以及云环境驱动,调度对应的云环境驱动,通过云环境驱动与对应的云环境交互,根据资源描述文件在对应的云环境下执行对应的容器集群操作。
应当理解的是,本实施例的集群编排镜像30可以同时管理一个或多个云环境上的容器集群,云环境的种类与集群编排镜像30提供的适配支持相关;可以监听容器集群的操作状态,以供容器集群管理组件10获取容器集群的最新状态信息。
进一步地,所述容器集群管理组件10,还用于从所述容器集群操作请求中提取容器集群元数据,按照预设配置语言抽象描述所述容器集群元数据,得到容器集群参数。
本实施例中设置针对多云环境下的容器集群的预设配置语言(又称:高级配置语言),用来统一抽象的描述容器集群参数和特性,包括但不限于:容器集群名称、容器集群类型、容器集群版本、集群控制节点规格、集群工作节点规格、集群控制节点数量、集群工作节点数量等。通过预设配置语言抽象描述容器集群参数,屏蔽各个云服务资源差异,使底层细节对用户透明。参照表1,表1为预设配置语言示意表。
表1:
字段名称 | 字段类型 | 字段描述 |
cluster_name | String | 容器集群名称 |
cluster_type | String | 容器集群类型 |
cluster_tag | String | 容器集群版本 |
master_flavor | Object | 集群控制节点规格 |
worker_flavor | Object | 集群工作节点规格 |
infra | Object | 云环境信息 |
在具体实现中,预设配置语言为yaml格式的集群元数据描述。本实施例中一个完整的数据表示如下:
具体地,所述容器集群操作包括创建容器集群、销毁容器集群、获取容器集群状态、容器集群扩容和容器集群缩容。
进一步地,所述集群编排镜像30,还用于按照预设记录模板记录所述容器集群操作对应的操作结果;所述容器集群管理组件10,还用于获取所述操作结果,将所述操作结果反馈至所述客户端。
需要说明的是,预设记录模板用于统一抽象记录容器集群的生命周期,包括但不限于:创建中、创建成功、创建失败、销毁中,已销毁。集群编排镜像30将操作结果以统一的格式写入日志服务,容器集群管理组件10从日志服务中获取容器集群操作请求对应的操作结果,反馈给客户端。
参照图2,图2为本发明提供的容器集群管理系统的架构示意图;客户端通过容器集群管理组件10提供的REST API接口提交统一的容器集群请求,其中,所述容器集群请求包含该操作的基本信息,容器集群管理组件10根据客户端请求携带的容器集群信息,进行容器集群预设配置语言转换,然后将转换后的容器集群参数传递给集群编排镜像30,集群编排镜像30工作时使用内部解释器对容器集群参数进行解析,然后调用执行器同云环境进行交互,来执行云环境下的容器集群操作。
本实施例提出的系统包括容器集群管理组件、集群编排镜像以及容器集群;容器集群管理组件在接收客户端发出的容器集群操作请求时,根据容器集群操作请求确定对应的容器集群参数,并向容器集群发出调度请求;容器集群根据调度请求以容器形式启动集群编排镜像;集群编排镜像接收容器集群管理组件发出的容器集群参数,根据容器集群参数与对应的云环境进行交互,在云环境下执行对应的容器集群操作。通过上述方式,利用容器集群管理组件管理多云环境中容器集群的全生命周期,容器集群在容器集群管理组件的调度下启动集群编排镜像,集群编排镜像根据容器集群参数从多云环境下选择对应的云环境进行交互,执行对应的容器集群操作,实现了多云环境下容器集群的统一管理。
基于上述实施例,图3为本发明提供的容器集群管理方法的第二实施例流程示意图;
如图3所示,所述容器集群管理组件10,还用于向所述客户端提供不同容器集群操作对应的应用程序接口40,基于所述应用程序接口40接收所述客户端发出的容器集群操作请求。
在具体实现中,使用统一的抽象格式提供API(应用程序接口40)供客户端调用;优选的,API可以为REST API或者Web Service;不同容器集群操作对应的应用程序接口40包括:在云环境上创建容器集群的API;在云环境上销毁容器集群的API;获取容器集群状态的API;优选的,在云环境上进行容器集群扩容的API;优选的,在云环境上进行容器集群缩容的API。
在一实施例中,所述容器集群管理组件10,还用于在基于多个应用程序接口40接收到多个目标容器集群操作请求时,分别确定各个所述目标容器集群操作请求对应的目标容器集群参数,并向所述底座容器集群20发出多个目标调度请求;
所述底座容器集群20,还用于根据所述多个目标调度请求以容器形式启动多个集群编排镜像30;
所述集群编排镜像30,还用于根据接收到的所述目标容器集群参数与对应的目标云环境进行交互,在所述目标云环境下执行对应的目标容器集群操作。
需要说明的是,本实施例的容器集群管理组件10可同时调度多个集群编排镜像30,将各个目标容器集群操作请求对应的目标容器集群参数分配至不同的集群编排镜像30,各个集群编排镜像30根据得到到目标容器集群参数启动对应的云环境驱动70,与对应的目标云环境进行交互,执行目标容器集群操作请求对应的目标容器集群操作。
参照图4,图4为本发明提供的容器集群管理系统的容器集群管理组件示意图;本实施例中的容器集群管理组件10使用Spring Boot技术开发的Java中间件,其以REST API的形式提供对用户端的访问接口,主要包括:
以统一的抽象数据格式提供了创建容器集群的REST API;
以统一的抽象数据格式提供了获取容器集群状态的REST API;
以统一的抽象数据格式提供了销毁容器集群的REST API;
优选地,以统一的抽象数据格式提供了容器集群扩容的REST API;
优选地,以统一的抽象数据格式提供了容器集群缩容的REST API。
将REST API接收到的容器集群操作请求转换为高级配置语言之后发送给运行有集群编排镜像30的容器;
使用统一的日志存储系统,获取运行有集群编排镜像30的容器输出的最终容器集群操作结果。
本实施例的容器集群管理系统包括:容器集群管理组件、集群编排镜像以及容器集群;容器集群管理组件向客户端提供不同容器集群操作对应的应用程序接口,基于应用程序接口接收客户端发出的容器集群操作请求,根据容器集群操作请求确定对应的容器集群参数,并向容器集群发出调度请求;容器集群根据调度请求以容器形式启动集群编排镜像;集群编排镜像接收容器集群管理组件传入的容器集群参数,根据容器集群参数与对应的云环境进行交互,在云环境下执行对应的容器集群操作。通过上述方式,容器集群管理组件向客户端提供统一抽象的应用程序接口,消除构建工具的负担,通过应用程序接口接收容器集群操作请求,调取容器集群启动集群编排镜像,集群编排镜像根据容器集群参数从多云环境下选择对应的云环境进行交互,执行对应的容器集群操作,实现了多云环境下容器集群的统一管理,容器集群基础设施即代码。
基于上述实施例,图5为本发明提供的容器集群管理方法的第三实施例流程示意图;
如图5所示,所述集群编排镜像30包括解释器50、执行器60和多云环境的云环境驱动70;
所述解释器50,用于将所述容器集群参数转换为资源描述文件。
本实施例中,解释器50对容器集群管理组件10按照预设配置语言配置的容器集群参数进行解析,转换为云环境下的资源描述文件。
所述执行器60,用于根据所述资源描述文件启动对应的目标云环境驱动70,通过所述目标云环境驱动70与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
需要说明的是,多云环境可以包括自建的OpenStack云环境、华为公有云环境、阿里云环境、亚马逊云环境等云环境,还可以为对应不同功能的多云环境。OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合,为私有云和公有云提供可扩展的弹性的云计算服务,在本实施例中提供容器集群所需要的基础设施资源。
应当理解的是,本实施例中利用Kubernetes创建底座容器集群20,Kubernetes是Google开源的一个容器编排引擎,支持自动化部署、大规模可伸缩、应用容器化管理。利用Terraform作为集群编排镜像30的执行器60,Terraform是一种开源工具,能够安全且可预见地创建、更改和改进基础设施。云环境驱动70是为Terraform调用云平台资源所提供的驱动,本实施例中包括OpenStack云驱动、华为云驱动、阿里云驱动等等。
在具体实现中,本实施例中的集群编排镜像30使用Docker镜像制作实现,其内部包含了本实施例中的解释器50和执行器60。解释器50为使用python语言开发的脚本程序,其在容器运行时获取容器集群操作的相关信息,其主要信息包含容器集群操作类型和云环境信息;执行器60使用开源软件Terraform实现,其内部包含了具体的云环境驱动70。
参照图6,图6为本发明提供的容器集群管理系统的集群编排镜像示意图;集群编排镜像30分别包含了华为云驱动、阿里云驱动和OpenStack云驱动;执行器60Terraform使用对应的云环境驱动70同华为云、阿里云和OpenStack进行通信,来执行实际的云环境上的容器集群操作。
本实施例的集群编排镜像30在在完成相关云环境上的容器集群操作之后,将操作的集群的元数据信息已统一的抽象描述保存在统一的操作日志中,供容器集群管理组件10获取容器集群的操作结果和信息。可选地,在其他实施例中,集群编排镜像30还可以使用其他的方式向容器集群管理组件10反馈结果,如数据库、消息中间件等。本实施例中集群编排镜像30与容器集群管理组件10之间约定的统一抽象的容器集群元数据信息包括:集群名称、作业集群类型、作业集群访问地址以及作业集群访问的认证信息。
在一实施例中,参照图7,图7为本发明提供的容器集群管理系统的执行器创建资源流程示意图;本实施例的容器集群管理组件10接收客户端通过API发出的容器集群创建请求,调度底座容器集群20启动集群编排镜像30,集群编排镜像30的解释器50根据创建容器集群相关参数配置资源描述文件,执行器60根据资源描述文件调用云环境驱动70,在对应云环境下执行对应的创建资源操作,在创建成功时,记录资源状态数据存入日志文件中。
在一实施例中,参照图8,图8为本发明提供的容器集群管理系统的执行器修改资源流程示意图;本实施例的容器集群管理组件10接收客户端通过API发出的容器集群扩容或缩容请求,调度底座容器集群20启动集群编排镜像30,集群编排镜像30的解释器50根据扩容或缩容容器集群相关参数配置资源描述文件,执行器60根据资源描述文件调用云环境驱动70,在对应云环境下执行对应的修改资源操作,根据资源状态数据判断修改是否合法,如果修改合法,判断是否修改成功,在修改成功时,记录资源状态数据存入日志文件中。
在一实施例中,参照图9,图9为本发明提供的容器集群管理系统的执行器销毁资源流程示意图;本实施例的容器集群管理组件10接收客户端通过API发出的容器集群销毁请求,调度底座容器集群20启动集群编排镜像30,集群编排镜像30的解释器50根据销毁容器集群相关参数配置资源描述文件,执行器60根据资源描述文件调用云环境驱动70,在对应云环境下执行对应的销毁资源操作,在销毁成功时,记录资源状态数据存入日志文件中。
参照图10,图10为本发明提供的容器集群管理系统的工作流程示意图;本实施例中的容器集群管理组件接收到客户端通过REST API提交的容器集群操作请求,对客户端请求进行统一高级配置语言的转换,从集群编排镜像组中获取云环境的集群编排镜像,将转换后的高级配置语言传递给根据获取到的集群编排镜像,提交给底座容器集群;本实施例中的底座容器集群,创建运行集群编排镜像的容器,同时传入高级配置语言等参数;本实施例中的集群编排镜像的容器运行之后,使用内部解释器统一解释传入的容器集群操作请求参数,转换为资源描述文件,启动容器内的执行器使用转换后的资源描述文件,根据对应的云环境驱动同云环境进行通信,在云环境上执行具体的容器集群操作;本实施例中的集群编排镜像的执行器在操作完成之后,将云环境中容器集群的相关信息和操作结果按照预先约定好的数据结构存入日志文件中;本实施例中的容器集群管理组件从日志中获取容器集群操作的结果和相关信息,反馈至客户端。
在本实施例中,底座容器集群20是开源的Kubernetes集群,容器集群管理组件10通过REST API向底座容器集群20发起运行集群编排镜像30的请求;底座容器集群20在获取请求后,创建相应的容器,同时将日志文件系统挂载进容器中,供集群编排镜像30运行时进行日志写入。本实施例中集群编排镜像30在云环境执行完容器集群操作后记录的日志信息为通用的yaml格式,供容器集群管理组件10获取容器集群操作结果,日志信息表示如下:
cluster_name:some cluster name
cluster_id:2f0b6b45-a487-4dcd-882b-f2a319ff1d1d
host:https://x.x.x.x:6443
token:xxxxxx
本实施例的容器集群管理系统包括:容器集群管理组件、集群编排镜像以及容器集群;容器集群管理组件在接收客户端发出的容器集群操作请求时,根据容器集群操作请求确定对应的容器集群参数,并向容器集群发出调度请求;容器集群根据调度请求以容器形式启动集群编排镜像;集群编排镜像包括解释器、执行器和多云环境的云环境驱动;解释器将容器集群参数转换为资源描述文件;执行器根据资源描述文件启动对应的目标云环境驱动,通过目标云环境驱动与对应的云环境进行交互,在云环境下执行对应的容器集群操作。通过上述方式,消除不同云环境的差异,在不同的云环境内以统一的方式创建和管理容器集群,使客户端在请求容器集群操作过程中未感知到多云环境的差异。
以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
参照图11,图11为本发明提供的容器集群管理方法的第一实施例流程示意图。
如图11所示,本发明实施例提出的所述容器集群管理方法应用于如上所述的容器集群管理系统,所述容器集群管理系统包括:容器集群管理组件、集群编排镜像以及底座容器集群;
所述容器集群管理方法,包括:
步骤S10:所述容器集群管理组件在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数,并向所述底座容器集群发出调度请求。
步骤S20:所述底座容器集群根据所述调度请求以容器形式启动所述集群编排镜像。
步骤S30:所述集群编排镜像接收所述容器集群管理组件传入的所述容器集群参数,根据所述容器集群参数与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
本实施例提出的系统包括容器集群管理组件、集群编排镜像以及底座容器集群;容器集群管理组件在接收客户端发出的容器集群操作请求时,根据容器集群操作请求确定对应的容器集群参数,并向底座容器集群发出调度请求;底座容器集群根据调度请求以容器形式启动集群编排镜像;集群编排镜像接收容器集群管理组件发出的容器集群参数,根据容器集群参数与对应的云环境进行交互,在云环境下执行对应的容器集群操作。通过上述方式,利用容器集群管理组件管理多云环境中容器集群的全生命周期,底座容器集群在容器集群管理组件的调度下启动集群编排镜像,集群编排镜像根据容器集群参数从多云环境下选择对应的云环境进行交互,执行对应的容器集群操作,实现了多云环境下容器集群的统一管理。
进一步地,所述容器集群管理组件在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数之前,所述方法还包括:所述容器集群管理组件向所述客户端提供不同容器集群操作对应的应用程序接口,基于所述应用程序接口接收所述客户端发出的容器集群操作请求。
进一步地,所述方法还包括:所述容器集群管理组件在基于多个应用程序接口接收到多个目标容器集群操作请求时,分别确定各个所述目标容器集群操作请求对应的目标容器集群参数,并向所述底座容器集群发出多个目标调度请求;所述底座容器集群根据所述多个目标调度请求以容器形式启动多个集群编排镜像;所述集群编排镜像根据接收到的所述目标容器集群参数与对应的目标云环境进行交互,在所述目标云环境下执行对应的目标容器集群操作。
进一步地,所述容器集群管理组件根据所述容器集群操作请求确定对应的容器集群参数,包括:所述容器集群管理组件从所述容器集群操作请求中提取容器集群元数据,按照预设配置语言抽象描述所述容器集群元数据,得到容器集群参数。
进一步地,所述集群编排镜像包括解释器、执行器和多云环境的云环境驱动;
所述步骤S30,包括:所述解释器将所述容器集群参数转换为资源描述文件;所述执行器根据所述资源描述文件启动对应的目标云环境驱动,通过所述目标云环境驱动与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
进一步地,所述容器集群操作包括创建容器集群、销毁容器集群、获取容器集群状态、容器集群扩容和容器集群缩容。
进一步地,所述步骤S30之后,所述方法还包括:
所述集群编排镜像按照预设记录模板记录所述容器集群操作对应的操作结果;
所述容器集群管理组件获取所述操作结果,将所述操作结果反馈至所述客户端。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种容器集群管理系统,其特征在于,所述容器集群管理系统包括:容器集群管理组件、集群编排镜像以及底座容器集群;
所述容器集群管理组件,用于在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数,并向所述底座容器集群发出调度请求;
所述底座容器集群,用于根据所述调度请求以容器形式启动所述集群编排镜像;
所述集群编排镜像,用于接收所述容器集群管理组件传入的所述容器集群参数,根据所述容器集群参数与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
2.如权利要求1所述的容器集群管理系统,其特征在于,所述容器集群管理组件,还用于向所述客户端提供不同容器集群操作对应的应用程序接口,基于所述应用程序接口接收所述客户端发出的容器集群操作请求。
3.如权利要求2所述的容器集群管理系统,其特征在于,所述容器集群管理组件,还用于在基于多个应用程序接口接收到多个目标容器集群操作请求时,分别确定各个所述目标容器集群操作请求对应的目标容器集群参数,并向所述底座容器集群发出多个目标调度请求;
所述底座容器集群,还用于根据所述多个目标调度请求以容器形式启动多个集群编排镜像;
所述集群编排镜像,还用于根据接收到的所述目标容器集群参数与对应的目标云环境进行交互,在所述目标云环境下执行对应的目标容器集群操作。
4.如权利要求1所述的容器集群管理系统,其特征在于,所述容器集群管理组件,还用于从所述容器集群操作请求中提取容器集群元数据,按照预设配置语言抽象描述所述容器集群元数据,得到容器集群参数。
5.如权利要求1所述的容器集群管理系统,其特征在于,所述集群编排镜像包括解释器、执行器和多云环境的云环境驱动;
所述解释器,用于将所述容器集群参数转换为资源描述文件;
所述执行器,用于根据所述资源描述文件启动对应的目标云环境驱动,通过所述目标云环境驱动与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
6.如权利要求1所述的容器集群管理系统,其特征在于,所述容器集群操作包括创建容器集群、销毁容器集群、获取容器集群状态、容器集群扩容和容器集群缩容。
7.如权利要求1所述的容器集群管理系统,其特征在于,所述集群编排镜像,还用于按照预设记录模板记录所述容器集群操作对应的操作结果;
所述容器集群管理组件,还用于获取所述操作结果,将所述操作结果反馈至所述客户端。
8.一种容器集群管理方法,其特征在于,所述容器集群管理方法应用于如权利要求1-7中任一项所述的容器集群管理系统,所述容器集群管理系统包括:容器集群管理组件、集群编排镜像以及底座容器集群;
所述容器集群管理方法,包括:
所述容器集群管理组件在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数,并向所述底座容器集群发出调度请求;
所述底座容器集群根据所述调度请求以容器形式启动所述集群编排镜像;
所述集群编排镜像接收所述容器集群管理组件传入的所述容器集群参数,根据所述容器集群参数与对应的云环境进行交互,在所述云环境下执行对应的容器集群操作。
9.如权利要求8所述的容器集群管理方法,其特征在于,所述容器集群管理组件在接收客户端发出的容器集群操作请求时,根据所述容器集群操作请求确定对应的容器集群参数之前,所述方法还包括:
所述容器集群管理组件向所述客户端提供不同容器集群操作对应的应用程序接口,基于所述应用程序接口接收所述客户端发出的容器集群操作请求。
10.如权利要求9所述的容器集群管理方法,其特征在于,所述方法还包括:
所述容器集群管理组件在基于多个应用程序接口接收到多个目标容器集群操作请求时,分别确定各个所述目标容器集群操作请求对应的目标容器集群参数,并向所述底座容器集群发出多个目标调度请求;
所述底座容器集群根据所述多个目标调度请求以容器形式启动多个集群编排镜像;
所述集群编排镜像根据接收到的所述目标容器集群参数与对应的目标云环境进行交互,在所述目标云环境下执行对应的目标容器集群操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111644324.5A CN114327770A (zh) | 2021-12-30 | 2021-12-30 | 容器集群管理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111644324.5A CN114327770A (zh) | 2021-12-30 | 2021-12-30 | 容器集群管理系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114327770A true CN114327770A (zh) | 2022-04-12 |
Family
ID=81017944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111644324.5A Pending CN114327770A (zh) | 2021-12-30 | 2021-12-30 | 容器集群管理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114327770A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242786A (zh) * | 2022-05-07 | 2022-10-25 | 东云睿连(武汉)计算技术有限公司 | 基于容器集群的多模式大数据作业调度系统及方法 |
-
2021
- 2021-12-30 CN CN202111644324.5A patent/CN114327770A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242786A (zh) * | 2022-05-07 | 2022-10-25 | 东云睿连(武汉)计算技术有限公司 | 基于容器集群的多模式大数据作业调度系统及方法 |
CN115242786B (zh) * | 2022-05-07 | 2024-01-12 | 东云睿连(武汉)计算技术有限公司 | 一种基于容器集群的多模式大数据作业调度系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107515776B (zh) | 业务不间断升级方法、待升级节点和可读存储介质 | |
US9661071B2 (en) | Apparatus, systems and methods for deployment and management of distributed computing systems and applications | |
US8443347B2 (en) | Translating declarative models | |
US8181151B2 (en) | Modeling and managing heterogeneous applications | |
CN111324571B (zh) | 一种容器集群管理方法、装置及系统 | |
CN107818112B (zh) | 一种大数据分析作业系统及任务提交方法 | |
US20230126597A1 (en) | Container orchestration framework | |
CN102880503A (zh) | 数据分析系统及数据分析方法 | |
CN108243012B (zh) | 在线计费系统ocs中计费应用处理系统、方法及装置 | |
CN112395196B (zh) | 数据作业开发测试方法、装置、设备、系统及存储介质 | |
CN111124286A (zh) | 一种基于Libcloud的多云管理实现方法 | |
CN117112122A (zh) | 一种集群部署方法和装置 | |
CN115525396A (zh) | 基于云原生的应用管理方法及装置 | |
CN114327770A (zh) | 容器集群管理系统及方法 | |
Vijaya et al. | Framework for platform agnostic enterprise application development supporting multiple clouds | |
US20100023950A1 (en) | Workflow processing apparatus | |
WO2017117876A1 (zh) | 基于tosca的服务调用方法及装置 | |
US20230067086A1 (en) | Transformation of cloud-based data science pods | |
CN114265595B (zh) | 一种基于智能合约的云原生应用开发与部署系统和方法 | |
Solayman et al. | Seamless Integration of DevOps Tools for Provisioning Automation of the IoT Application on Multi-Infrastructures | |
CN114500268B (zh) | chart资源的部署方法、装置、服务器及存储介质 | |
CN115469807A (zh) | 磁盘功能配置方法、装置、设备及存储介质 | |
Coulter et al. | Implementation of simple XSEDE-like clusters: Science enabled and lessons learned | |
CN111930347B (zh) | 一种网络创建方法及装置、电子设备 | |
CN114090242A (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 |