基于Yaml模板的服务编排管控方法及装置与流程

文档序号:33637088发布日期:2023-03-29 00:58阅读:55来源:国知局
基于Yaml模板的服务编排管控方法及装置与流程
基于yaml模板的服务编排管控方法及装置
技术领域
1.本发明涉及集群编排管控技术领域,尤其涉及一种基于yaml模板的服务编排管控方法及装置。


背景技术:

2.传统kubernetes的部署步骤主要包括有:a、环境预处理;b、基于集群版本的容器安装:c、kubernetes多组件的安装;d、网络配置;e、主节点初始化及子节点部署以及集群部署。其中,传统针对kubernetes集群的部署方式主要包括有以下几种方式:
3.1、通过官方发布的二进制包进行部署;
4.该方式下官方提供的是各个组件的二进制安装包,需要用户对各个组件进行单独部署、配置,部署较为复杂,部署难度较大。
5.2、通过官方的kubeadm工具进行部署;
6.官方提供的快捷部署工具,简化了组件部署步骤,即上述的部署步骤中的c;但是仍然需要进行abde等步骤。
7.3、通过helm工具进行集群部署;
8.helm是官方提供的k8s包管理工具,支持发布的的版本管理和控制,通过动态生成k8s配置文件,然后通过kubectl自动调用k8s资源进行部署。
9.4、使用kops进行部署;
10.kops为官方推出的kubernete operations,用于k8s的安装、升级、管理;专注于云平台的k8s集群部署,支持如aws(亚马逊云)、gce(谷歌云)、vmware vsphere等平台。
11.以上的几种部署方式,均是针对k8s集群本身的部署,对于系统环境、容器运行时以及节点网络插件等方面无法做到一站式配置部署;若想要部署一个能用的k8s集群,除了集群本身的安装部署外,还需要在其他方面进行大量配置,部署步骤仍然十分繁琐。可见,提供一种降低k8s集群的部署难度,提高k8s集群的部署效率的方法显得尤为重要。


技术实现要素:

12.本发明所要解决的技术问题在于,提供一种基于yaml模板的服务编排管控方法及装置,能够降低k8s集群的部署难度,提高k8s集群的部署效率。
13.为了解决上述技术问题,本发明第一方面公开了一种基于yaml模板的服务编排管控方法,所述方法包括:
14.根据预先确定的集群部署要求,确定待创建集群的至少一种集群参数,所述集群参数包括所述待创建集群对应的集群信息以及集群网络对应的网络信息,所述集群网络用于实现所述待创建集群之间不同节点的通信;
15.对确定出的所有集群参数,按照每种所述集群参数对应的参数分类,对每种所述集群参数执行参数预处理操作,得到每种所述集群参数对应的预处理结果;
16.根据预设的yaml模板结合所有所述集群参数对应的预处理结果,生成与所述待创
建集群对应的集群配置文件及目标执行脚本;
17.根据所述集群配置文件、所述目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群,所述目标集群为与所述集群部署要求匹配的集群。
18.作为一种可选的实施方式,在本发明第一方面中,所述集群信息包括所述待创建集群对应的集群标识、所述待创建集群对应的部署主机、所述待创建集群对应的部署节点的节点信息以及所述待创建集群对应的版本中的至少一种,其中,所述部署节点包括主节点以及子节点,每个所述主节点包括至少一个所述子节点;
19.所述集群网络对应的网络信息包括所述集群网络的网络插件类型,每种所述网络插件类型对应一种节点通信控制方式。
20.作为一种可选的实施方式,在本发明第一方面中,所述对确定出的所有集群参数,按照每种所述集群参数对应的参数分类,对每种所述集群参数执行参数预处理操作,得到每种所述集群参数对应的预处理结果,包括:
21.根据确定出的所述待创建集群对应的版本,确定用于对所述集群参数执行参数预处理的目标版本,所述目标版本包括容器运行时类型及容器运行时版本、所述待创建集群的集群组件版本、存储插件版本、dns版本、监控插件以及容器插件版本中的至少一种,每种所述目标版本存在该目标版本对应的版本分类,作为该目标版本对应的集群参数的参数分类;
22.根据所述目标版本,按照每种按照每种所述集群参数对应的参数分类,对每种所述集群参数执行参数预处理操作,得到每种所述集群参数对应的预处理结果。
23.作为一种可选的实施方式,在本发明第一方面中,所述集群配置文件包括集群初始化文件以及网络插件配置文件,所述网络插件配置文件包括第一网络插件文件以及第二网络插件文件;
24.所述目标执行脚本包括集群执行脚本以及容器安装脚本。
25.作为一种可选的实施方式,在本发明第一方面中,所述根据所述集群配置文件、所述目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群,包括:
26.根据所述集群初始化文件,对该集群初始化文件对应的第一管控参数执行第一配置操作,得到所述第一管控参数对应的第一配置结果,所述第一管控参数包括所述待创建集群的集群版本、所述待创建集群对应的网络地址及端口、容器运行时、镜像仓库地址以及所述待创建集群对外接口版本中的至少一项;
27.根据所述网络配置文件,对所述待创建集群对应的第二管控参数执行第二配置操作,得到所述第二管控参数对应的第二配置结果;
28.根据所述目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到所述集群安装组件对应的第三配置结果,并根据所述第一配置结果、所述第二配置结果以及所述第三配置结果,创建得到目标集群。
29.作为一种可选的实施方式,在本发明第一方面中,所述第二管控参数包括第一插件参数以及第二插件参数,所述第一插件参数为所述第一网络插件文件对应的参数,所述第二插件参数为所述第二网络插件文件对应的文件,所述根据所述网络配置文件,对所述待创建集群对应的第二管控参数执行第二配置操作,得到所述第二管控参数对应的第二配
置结果,包括:
30.根据所述第一网络插件文件,对所述第一插件参数执行一级配置操作,得到所述第一插件参数对应的一级配置结果,所述第一插件参数包括所述待创建集群对应的集群接口版本、集群网络地址及端口、第一网络插件的依赖包版本中的至少一项,所述第一网络插件为所述第一网络插件文件所对应的插件;
31.根据所述第二网络插件文件,对第二网络插件执行二级配置操作,得到所述第二插件对应的二级配置结果,所述第二网络插件为所述第二网络插件文件所对应的插件,所述第二插件用于为所述待创建集群对应的集群系统提供网络服务及网络策略;
32.将所述一级配置结果以及所述二级配置结果确定为所述第二管控参数对应的第二配置结果。
33.作为一种可选的实施方式,在本发明第一方面中,所述根据所述目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到所述集群安装组件对应的第三配置结果,包括:
34.根据所述集群执行脚本结合预先配置的系统环境,对该集群执行脚本所管控第一脚本参数执行安装管控操作,得到所述第一脚本参数对应的安装管控结果,所述第一脚本参数包括所述目标集群对应的集群组件、网络插件以及存储插件;
35.根据所述集群执行脚本,对该集群执行脚本所管控第二脚本参数执行配置管控操作,得到所述第二脚本参数对应的配置管控结果,所述第二脚本参数包括所述待创建集群对应的集群网络;
36.根据所述容器安装脚本,对该容器安装脚本所管控容器安装服务、初始化容器服务执行容器管控操作,得到对应的容器管控结果;
37.将所述安装管控结果、所述配置管控结果以及所述容器管控结果,确定为所述集群安装组件对应的第三配置结果。
38.本发明第二方面公开了一种基于yaml模板的服务编排管控装置,所述装置包括:
39.确定模块,用于根据预先确定的集群部署要求,确定待创建集群的至少一种集群参数,所述集群参数包括所述待创建集群对应的集群信息以及集群网络对应的网络信息,所述集群网络用于实现所述待创建集群之间不同节点的通信;
40.预处理模块,用于对确定出的所有集群参数,按照每种所述集群参数对应的参数分类,对每种所述集群参数执行参数预处理操作,得到每种所述集群参数对应的预处理结果;
41.生成模块,用于根据预设的yaml模板结合所有所述集群参数对应的预处理结果,生成与所述待创建集群对应的集群配置文件及目标执行脚本;
42.创建模块,用于根据所述集群配置文件、所述目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群,所述目标集群为与所述集群部署要求匹配的集群。
43.作为一种可选的实施方式,在本发明第二方面中,所述集群信息包括所述待创建集群对应的集群标识、所述待创建集群对应的部署主机、所述待创建集群对应的部署节点的节点信息以及所述待创建集群对应的版本中的至少一种,其中,所述部署节点包括主节点以及子节点,每个所述主节点包括至少一个所述子节点;
44.所述集群网络对应的网络信息包括所述集群网络的网络插件类型,每种所述网络插件类型对应一种节点通信控制方式。
45.作为一种可选的实施方式,在本发明第二方面中,所述预处理模块对确定出的所有集群参数,按照每种所述集群参数对应的参数分类,对每种所述集群参数执行参数预处理操作,得到每种所述集群参数对应的预处理结果的方式具体包括:
46.根据确定出的所述待创建集群对应的版本,确定用于对所述集群参数执行参数预处理的目标版本,所述目标版本包括容器运行时类型及容器运行时版本、所述待创建集群的集群组件版本、存储插件版本、dns版本、监控插件以及容器插件版本中的至少一种,每种所述目标版本存在该目标版本对应的版本分类,作为该目标版本对应的集群参数的参数分类;
47.根据所述目标版本,按照每种按照每种所述集群参数对应的参数分类,对每种所述集群参数执行参数预处理操作,得到每种所述集群参数对应的预处理结果。
48.作为一种可选的实施方式,在本发明第二方面中,所述集群配置文件包括集群初始化文件以及网络插件配置文件,所述网络插件配置文件包括第一网络插件文件以及第二网络插件文件;
49.所述目标执行脚本包括集群执行脚本以及容器安装脚本。
50.作为一种可选的实施方式,在本发明第二方面中,所述创建模块,包括:
51.第一配置子模块,用于根据所述集群初始化文件,对该集群初始化文件对应的第一管控参数执行第一配置操作,得到所述第一管控参数对应的第一配置结果,所述第一管控参数包括所述待创建集群的集群版本、所述待创建集群对应的网络地址及端口、容器运行时、镜像仓库地址以及所述待创建集群对外接口版本中的至少一项;
52.第二配置子模块,用于根据所述网络配置文件,对所述待创建集群对应的第二管控参数执行第二配置操作,得到所述第二管控参数对应的第二配置结果;
53.第三配置子模块,用于根据所述目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到所述集群安装组件对应的第三配置结果,并根据所述第一配置结果、所述第二配置结果以及所述第三配置结果,创建得到目标集群。
54.作为一种可选的实施方式,在本发明第二方面中,所述第二管控参数包括第一插件参数以及第二插件参数,所述第一插件参数为所述第一网络插件文件对应的参数,所述第二插件参数为所述第二网络插件文件对应的文件,所述第二配置子模块根据所述网络配置文件,对所述待创建集群对应的第二管控参数执行第二配置操作,得到所述第二管控参数对应的第二配置结果的方式具体包括:
55.根据所述第一网络插件文件,对所述第一插件参数执行一级配置操作,得到所述第一插件参数对应的一级配置结果,所述第一插件参数包括所述待创建集群对应的集群接口版本、集群网络地址及端口、第一网络插件的依赖包版本中的至少一项,所述第一网络插件为所述第一网络插件文件所对应的插件;
56.根据所述第二网络插件文件,对第二网络插件执行二级配置操作,得到所述第二插件对应的二级配置结果,所述第二网络插件为所述第二网络插件文件所对应的插件,所述第二插件用于为所述待创建集群对应的集群系统提供网络服务及网络策略;
57.将所述一级配置结果以及所述二级配置结果确定为所述第二管控参数对应的第
二配置结果。
58.作为一种可选的实施方式,在本发明第二方面中,所述第三配置子模块根据所述目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到所述集群安装组件对应的第三配置结果的方式具体包括:
59.根据所述集群执行脚本结合预先配置的系统环境,对该集群执行脚本所管控第一脚本参数执行安装管控操作,得到所述第一脚本参数对应的安装管控结果,所述第一脚本参数包括所述目标集群对应的集群组件、网络插件以及存储插件;
60.根据所述集群执行脚本,对该集群执行脚本所管控第二脚本参数执行配置管控操作,得到所述第二脚本参数对应的配置管控结果,所述第二脚本参数包括所述待创建集群对应的集群网络;
61.根据所述容器安装脚本,对该容器安装脚本所管控容器安装服务、初始化容器服务执行容器管控操作,得到对应的容器管控结果;
62.将所述安装管控结果、所述配置管控结果以及所述容器管控结果,确定为所述集群安装组件对应的第三配置结果。
63.本发明第三方面公开了另一种基于yaml模板的服务编排管控装置,所述装置包括:
64.存储有可执行程序代码的存储器;
65.与所述存储器耦合的处理器;
66.所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的基于yaml模板的服务编排管控方法。
67.本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的基于yaml模板的服务编排管控方法。
68.与现有技术相比,本发明实施例具有以下有益效果:
69.本发明实施例中,提供了一种基于yaml模板的服务编排管控方法,该方法包括:根据预先确定的集群部署要求,确定待创建集群的至少一种集群参数,集群参数包括待创建集群对应的集群信息以及集群网络对应的网络信息,集群网络用于实现待创建集群之间不同节点的通信;对确定出的所有集群参数,按照每种集群参数对应的参数分类,对每种集群参数执行参数预处理操作,得到每种集群参数对应的预处理结果;根据预设的yaml模板结合所有集群参数对应的预处理结果,生成与待创建集群对应的集群配置文件及目标执行脚本;根据集群配置文件、目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群,目标集群为与集群部署要求匹配的集群。可见,实施本发明能够根据集群部署请求,自动确定集群参数,从而基于该集群参数按照参数分类执行参数预处理操作,提高了集群参数的分类效率以及分类准确性;进而基于该所有预处理结果与yaml模板生成集群配置文件及目标执行脚本,再综合系统环境、集群安装组件创建目标集群,提高了目标集群的创建效率、创建准确性以及可靠性,该创建得到的目标集群基于yaml模板,屏蔽了复杂的集群配置、选项,简化了集群部署难度同时还能够提高集群部署效率以及部署准确性。
附图说明
70.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
71.图1是本发明实施例公开的一种基于yaml模板的服务编排管控方法的流程示意图;
72.图2是本发明实施例公开的另一种基于yaml模板的服务编排管控方法的流程示意图;
73.图3是本发明实施例公开的一种基于yaml模板的服务编排管控装置的结构示意图;
74.图4是本发明实施例公开的创建模块的结构示意图;
75.图5是本发明实施例公开的又一种基于yaml模板的服务编排管控装置的结构示意图。
具体实施方式
76.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
77.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
78.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
79.本发明公开了一种基于yaml模板的服务编排管控方法及装置,能够根据集群部署请求,自动确定集群参数,从而基于该集群参数按照参数分类执行参数预处理操作,提高了集群参数的分类效率以及分类准确性;进而基于该所有预处理结果与yaml模板生成集群配置文件及目标执行脚本,再综合系统环境、集群安装组件创建目标集群,提高了目标集群的创建效率、创建准确性以及可靠性,该创建得到的目标集群基于yaml模板,屏蔽了复杂的集群配置、选项,简化了集群部署难度同时还能够提高集群部署效率以及部署准确性。以下分别进行详细说明。
80.实施例一
81.请参阅图1,图1是本发明实施例公开的一种基于yaml模板的服务编排管控方法的流程示意图。其中,图1所描述的基于yaml模板的服务编排管控方法可以应用于基于yaml模
板的服务编排管控装置中,本发明实施例不做限定。如图1所示,该基于yaml模板的服务编排管控方法可以包括以下操作:
82.101、根据预先确定的集群部署要求,确定待创建集群的至少一种集群参数。
83.本发明实施例中,集群参数包括待创建集群对应的集群信息以及集群网络对应的网络信息,集群网络用于实现待创建集群之间不同节点的通信。
84.本发明实施例中,集群信息包括待创建集群对应的集群标识、待创建集群对应的部署主机、待创建集群对应的部署节点的节点信息以及待创建集群对应的版本中的至少一种,其中,部署节点包括主节点以及子节点,每个主节点包括至少一个子节点。
85.本发明实施例中,集群网络对应的网络信息包括集群网络的网络插件类型,每种网络插件类型对应一种节点通信控制方式。
86.102、对确定出的所有集群参数,按照每种集群参数对应的参数分类,对每种集群参数执行参数预处理操作,得到每种集群参数对应的预处理结果。
87.103、根据预设的yaml模板结合所有集群参数对应的预处理结果,生成与待创建集群对应的集群配置文件及目标执行脚本。
88.104、根据集群配置文件、目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群。
89.本发明实施例中,目标集群为与集群部署要求匹配的集群。
90.需要说明的是,创建得到目标集群后,通过可视化界面将该集群的部署参数反馈给用户,其中,该可视化界面支持容器集群展示、集群状态展示、集群的创建更新删除等操作;支持集群变量配置、环境选择、k8s版本选择、网络类型选择、是否部署高可用集群等;支持集群的基本信息展示、集群pod管理、集群部署服务管理、集群发布、集群节点增加删除、集群存储管理、集群监控信息;支持集群部署服务的信息展示,包括服务的命名空间、名称及端口等信息。
91.可见,实施图1所描述的基于yaml模板的服务编排管控方法,能够根据集群部署请求,自动确定集群参数,从而基于该集群参数按照参数分类执行参数预处理操作,提高了集群参数的分类效率以及分类准确性;进而基于该所有预处理结果与yaml模板生成集群配置文件及目标执行脚本,再综合系统环境、集群安装组件创建目标集群,提高了目标集群的创建效率、创建准确性以及可靠性,该创建得到的目标集群基于yaml模板,屏蔽了复杂的集群配置、选项,简化了集群部署难度同时还能够提高集群部署效率以及部署准确性。
92.实施例二
93.请参阅图2,图2是本发明实施例公开的另一种基于yaml模板的服务编排管控方法的流程示意图。其中,图2所描述的基于yaml模板的服务编排管控方法可以应用于基于yaml模板的服务编排管控装置中,本发明实施例不做限定。如图2所示,该基于yaml模板的服务编排管控方法可以包括以下操作:
94.201、根据预先确定的集群部署要求,确定待创建集群的至少一种集群参数。
95.202、根据确定出的待创建集群对应的版本,确定用于对集群参数执行参数预处理的目标版本。
96.本发明实施例中,目标版本包括容器运行时类型及容器运行时版本、待创建集群的集群组件版本、存储插件版本、dns版本、监控插件以及容器插件版本中的至少一种,每种
目标版本存在该目标版本对应的版本分类,作为该目标版本对应的集群参数的参数分类。
97.203、根据目标版本,按照每种按照每种集群参数对应的参数分类,对每种集群参数执行参数预处理操作,得到每种集群参数对应的预处理结果。
98.204、根据预设的yaml模板结合所有集群参数对应的预处理结果,生成与待创建集群对应的集群配置文件及目标执行脚本。
99.205、根据集群配置文件、目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群。
100.本发明实施例中,最终创建、编排得到的目标集群(k8s),实现了完整的容器集群管理,支持k8s容器集群无感知部署、k8s多版本快捷部署、自定义网络插件、支持容器集群扩缩容、支持集群pod管理、支持集群服务管理。
101.本发明实施例中,针对步骤201以及步骤204-步骤205的其他描述请参阅实施例一中针对步骤101、步骤103步骤104的其他具体描述,本发明实施例不再赘述。
102.可见,实施图2所描述的基于yaml模板的服务编排管控方法,能够基于待创建集群对应的版本自动确定预处理集群参数所需的目标版本,从而基于该目标版本,结合每种集群参数对应的参数分类,精准预处理每种集群参数,提高了预处理每种集群参数的预处理效率以及预处理准确性,从而为报障后续流程的可行性,也即一定程度上提高了创建得到的目标集群的准确性。
103.在一个可选的实施例中,集群配置文件包括集群初始化文件以及网络插件配置文件,网络插件配置文件包括第一网络插件文件以及第二网络插件文件;
104.目标执行脚本包括集群执行脚本以及容器安装脚本;
105.可选的,上述根据集群配置文件、目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群的方式具体包括:
106.根据集群初始化文件,对该集群初始化文件对应的第一管控参数执行第一配置操作,得到第一管控参数对应的第一配置结果,第一管控参数包括待创建集群的集群版本、待创建集群对应的网络地址及端口、容器运行时、镜像仓库地址以及待创建集群对外接口版本中的至少一项;
107.根据网络配置文件,对待创建集群对应的第二管控参数执行第二配置操作,得到第二管控参数对应的第二配置结果;
108.根据目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到集群安装组件对应的第三配置结果,并根据第一配置结果、第二配置结果以及第三配置结果,创建得到目标集群。
109.在该可选的实施例中,第二管控参数包括第一插件参数以及第二插件参数,第一插件参数为第一网络插件文件对应的参数,第二插件参数为第二网络插件文件对应的文件,上述根据网络配置文件,对待创建集群对应的第二管控参数执行第二配置操作,得到第二管控参数对应的第二配置结果的方式具体包括:
110.根据第一网络插件文件,对第一插件参数执行一级配置操作,得到第一插件参数对应的一级配置结果,第一插件参数包括待创建集群对应的集群接口版本、集群网络地址及端口、第一网络插件的依赖包版本中的至少一项,第一网络插件为第一网络插件文件所对应的插件,该可以第一网络插件可以为flannel插件;
111.根据第二网络插件文件,对第二网络插件执行二级配置操作,得到第二插件对应的二级配置结果,第二网络插件为第二网络插件文件所对应的插件,第二插件用于为待创建集群对应的集群系统提供网络服务及网络策略,该可以第二网络插件可以为calico插件,可选的,该calico既可以单独为k8s系统提供网络服务及网络策略,也可以与flannel整合在一起由flannel实现网络服务而calico仅提供网络策略;
112.将一级配置结果以及二级配置结果确定为第二管控参数对应的第二配置结果。
113.可选的,上述根据目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到集群安装组件对应的第三配置结果的方式具体包括:
114.根据集群执行脚本结合预先配置的系统环境,对该集群执行脚本所管控第一脚本参数执行安装管控操作,得到第一脚本参数对应的安装管控结果,第一脚本参数包括目标集群对应的集群组件、网络插件以及存储插件;
115.根据集群执行脚本,对该集群执行脚本所管控第二脚本参数执行配置管控操作,得到第二脚本参数对应的配置管控结果,第二脚本参数包括待创建集群对应的集群网络;
116.根据容器安装脚本,对该容器安装脚本所管控容器安装服务、初始化容器服务执行容器管控操作,得到对应的容器管控结果;
117.将安装管控结果、配置管控结果以及容器管控结果,确定为集群安装组件对应的第三配置结果。
118.可见,在该可选的实施例中,以集群配置文件以及目标执行脚本为基础,由该集群配置文件和目标执行脚本有针对性的对第一、第二、第三管控参数分别精准地执行第一、第二、第三配置操作,最终综合三种配置操作各自对应的结果创建目标集群,提高了得到的目标集群的创建可靠性和准确性。
119.实施例三
120.请参阅图3,图3是本发明实施例公开的一种基于yaml模板的服务编排管控装置的结构示意图。其中,该基于yaml模板的服务编排管控装置可以是基于yaml模板的服务编排管控终端、基于yaml模板的服务编排管控设备、基于yaml模板的服务编排管控系统或者基于yaml模板的服务编排管控服务器,基于yaml模板的服务编排管控服务器可以是本地服务器,也可以是远端服务器,还可以是云服务器(又称云端服务器),当基于yaml模板的服务编排管控服务器为非云服务器时,该非云服务器能够与云服务器进行通信连接,本发明实施例不做限定。如图3所示,该基于yaml模板的服务编排管控装置可以包括确定模块301、预处理模块302、生成模块303以及创建模块304,其中:
121.确定模块301,用于根据预先确定的集群部署要求,确定待创建集群的至少一种集群参数,集群参数包括待创建集群对应的集群信息以及集群网络对应的网络信息,集群网络用于实现待创建集群之间不同节点的通信。
122.其中,集群信息包括待创建集群对应的集群标识、待创建集群对应的部署主机、待创建集群对应的部署节点的节点信息以及待创建集群对应的版本中的至少一种,其中,部署节点包括主节点以及子节点,每个主节点包括至少一个子节点;集群网络对应的网络信息包括集群网络的网络插件类型,每种网络插件类型对应一种节点通信控制方式。
123.预处理模块302,用于对确定出的所有集群参数,按照每种集群参数对应的参数分类,对每种集群参数执行参数预处理操作,得到每种集群参数对应的预处理结果。
124.生成模块303,用于根据预设的yaml模板结合所有集群参数对应的预处理结果,生成与待创建集群对应的集群配置文件及目标执行脚本。
125.创建模块304,用于根据集群配置文件、目标执行脚本、预先配置的系统环境结合多个确定出的集群安装组件,创建得到目标集群,目标集群为与集群部署要求匹配的集群。
126.可见,实施图3所描述的基于yaml模板的服务编排管控装置,能够根据集群部署请求,自动确定集群参数,从而基于该集群参数按照参数分类执行参数预处理操作,提高了集群参数的分类效率以及分类准确性;进而基于该所有预处理结果与yaml模板生成集群配置文件及目标执行脚本,再综合系统环境、集群安装组件创建目标集群,提高了目标集群的创建效率、创建准确性以及可靠性,该创建得到的目标集群基于yaml模板,屏蔽了复杂的集群配置、选项,简化了集群部署难度同时还能够提高集群部署效率以及部署准确性。
127.在一个可选的实施例中,预处理模块302对确定出的所有集群参数,按照每种集群参数对应的参数分类,对每种集群参数执行参数预处理操作,得到每种集群参数对应的预处理结果的方式具体包括:
128.根据确定出的待创建集群对应的版本,确定用于对集群参数执行参数预处理的目标版本,目标版本包括容器运行时类型及容器运行时版本、待创建集群的集群组件版本、存储插件版本、dns版本、监控插件以及容器插件版本中的至少一种,每种目标版本存在该目标版本对应的版本分类,作为该目标版本对应的集群参数的参数分类;
129.根据目标版本,按照每种按照每种集群参数对应的参数分类,对每种集群参数执行参数预处理操作,得到每种集群参数对应的预处理结果。
130.可见,在该选可选的实施例中,能够基于待创建集群对应的版本自动确定预处理集群参数所需的目标版本,从而基于该目标版本,结合每种集群参数对应的参数分类,精准预处理每种集群参数,提高了预处理每种集群参数的预处理效率以及预处理准确性,从而为报障后续流程的可行性,也即一定程度上提高了创建得到的目标集群的准确性。
131.在另一个可选的实施例中,集群配置文件包括集群初始化文件以及网络插件配置文件,网络插件配置文件包括第一网络插件文件以及第二网络插件文件;
132.目标执行脚本包括集群执行脚本以及容器安装脚本。
133.可选的,如图4所示,创建模块304可以包括第一配置子模块3041、第二配置子模块3042以及第三配置子模块3043,其中:
134.第一配置子模块3041,用于根据集群初始化文件,对该集群初始化文件对应的第一管控参数执行第一配置操作,得到第一管控参数对应的第一配置结果,第一管控参数包括待创建集群的集群版本、待创建集群对应的网络地址及端口、容器运行时、镜像仓库地址以及待创建集群对外接口版本中的至少一项。
135.第二配置子模块3042,用于根据网络配置文件,对待创建集群对应的第二管控参数执行第二配置操作,得到第二管控参数对应的第二配置结果。
136.第三配置子模块3043,用于根据目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到集群安装组件对应的第三配置结果,并根据第一配置结果、第二配置结果以及第三配置结果,创建得到目标集群。
137.在该可选的实施例中,第二管控参数包括第一插件参数以及第二插件参数,第一插件参数为第一网络插件文件对应的参数,第二插件参数为第二网络插件文件对应的文
件,第二配置子模块3042根据网络配置文件,对待创建集群对应的第二管控参数执行第二配置操作,得到第二管控参数对应的第二配置结果的方式具体包括:
138.根据第一网络插件文件,对第一插件参数执行一级配置操作,得到第一插件参数对应的一级配置结果,第一插件参数包括待创建集群对应的集群接口版本、集群网络地址及端口、第一网络插件的依赖包版本中的至少一项,第一网络插件为第一网络插件文件所对应的插件;
139.根据第二网络插件文件,对第二网络插件执行二级配置操作,得到第二插件对应的二级配置结果,第二网络插件为第二网络插件文件所对应的插件,第二插件用于为待创建集群对应的集群系统提供网络服务及网络策略;
140.将一级配置结果以及二级配置结果确定为第二管控参数对应的第二配置结果。
141.可选的,第三配置子模块3043根据目标执行脚本结合预先配置的系统环境,对确定出的集群安装组件执行第三配置操作,得到集群安装组件对应的第三配置结果的方式具体包括:
142.根据集群执行脚本结合预先配置的系统环境,对该集群执行脚本所管控第一脚本参数执行安装管控操作,得到第一脚本参数对应的安装管控结果,第一脚本参数包括目标集群对应的集群组件、网络插件以及存储插件;
143.根据集群执行脚本,对该集群执行脚本所管控第二脚本参数执行配置管控操作,得到第二脚本参数对应的配置管控结果,第二脚本参数包括待创建集群对应的集群网络;
144.根据容器安装脚本,对该容器安装脚本所管控容器安装服务、初始化容器服务执行容器管控操作,得到对应的容器管控结果;
145.将安装管控结果、配置管控结果以及容器管控结果,确定为集群安装组件对应的第三配置结果。
146.可见,在该可选的实施例中,以集群配置文件以及目标执行脚本为基础,由该集群配置文件和目标执行脚本有针对性的对第一、第二、第三管控参数分别精准地执行第一、第二、第三配置操作,最终综合三种配置操作各自对应的结果创建目标集群,提高了得到的目标集群的创建可靠性和准确性。
147.实施例四
148.请参阅图5,图5是本发明实施例公开的又一种基于yaml模板的服务编排管控装置的结构示意图。如图5所示,该基于yaml模板的服务编排管控装置可以包括:
149.存储有可执行程序代码的存储器401;
150.与存储器401耦合的处理器402;
151.处理器402调用存储器401中存储的可执行程序代码,执行本发明实施例一或本发明实施例二所描述的基于yaml模板的服务编排管控方法中的步骤。
152.实施例五
153.本发明实施例公开了一种计算机存储介质,该计算机存储介质存储有计算机指令,该计算机指令被调用时,用于执行本发明实施例一或本发明实施例二所描述的基于yaml模板的服务编排管控方法中的步骤。
154.实施例六
155.本发明实施例公开了一种计算机程序产品,该计算机程序产品包括存储了计算机
程序的非瞬时性计算机存储介质,且该计算机程序可操作来使计算机执行实施例一或实施例二中所描述的基于yaml模板的服务编排管控方法中的步骤。
156.以上所描述的装置实施例仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
157.通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机存储介质中,存储介质包括只读存储器(read-only memory,rom)、随机存储器(random access memory,ram)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、一次可编程只读存储器(one-time programmable read-only memory,otprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
158.最后应说明的是:本发明实施例公开的一种基于yaml模板的服务编排管控方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1