一种基于部署规划表自动化部署云原生应用的系统和方法技术方案

技术编号:35757301 阅读:13 留言:0更新日期:2022-11-26 19:04
本发明专利技术公开了一种基于部署规划表自动化部署云原生应用的系统和方法,包括:部署规划表模板模块,用于收集需要部署的管理节点和应用节点的服务器ip地址及公共参数形成规划表;处理规划表模块,用于处理规划表模板中的参数值,并存储,并进行后续的部署服务及配置修改用;部署校验模块,用于判断部署的服务器是否为所需要部署的服务器,已部署过的不再重复部署;还包括云原生组件部署执行模块、应用配置替换模块、应用部署模块、部署节点管理模块和监控模块;通过只修改部署规划表的方式就能部署完平台,解析表中信息进行存储,后续部署中能读取所有存储信息,提供了统一高效地管理,提高了部署效率,节省了部署时间,降低了部署错误率。错误率。错误率。

【技术实现步骤摘要】
一种基于部署规划表自动化部署云原生应用的系统和方法


[0001]本专利技术涉及原生应用部署
,具体涉及一种基于部署规划表自动化部署云原生应用的系统和方法。

技术介绍

[0002]基于云原生部署的系统带来很多方便,但是一个新环境特别是离线的环境在需要搭建基于云原生的系统应用时,需要手工部署较多的组件及配置项,首先需要部署云原生基础环境和各种配置,先下载各种离线包然后按照部署文档一步步执行,完成后再部署应用组件。基于云原始的应用组件需要修改适用于云原生特定的yaml文件,其中包含填写各种环境的配置,如云原生命名空间,nacos命名空间、部署url、账号密码等信息。
[0003]除了上述云原生相关配置,应用组件本身也包含多种配置信息要填写,如数据库地址账号密码,各种中间件的配置信息,镜像地址等等,通常会涉及到几十个组件的几百个配置填写,目前都是采用人工编辑配置文件执行部署命令,耗时耗力。

技术实现思路

[0004]本专利技术的目的在于提供一种基于部署规划表自动化部署云原生应用的系统和方法,解决以下技术问题:云原生涉及十几个组件的部署及配置,应用涉及到几十个组件的yaml文件配置及自身的组件配置项,都采用手动部署工作量较大耗时较长且效率低下,容易出错。
[0005]本专利技术的目的可以通过以下技术方案实现:一种基于部署规划表自动化部署云原生应用的系统和方法,包括:部署规划表模板模块,用于收集需要部署的管理节点和应用节点的服务器ip地址及公共参数形成规划表;处理规划表模块,用于处理规划表模板中的参数值,并存储,并进行后续的部署服务及配置修改用;部署校验模块,用于判断部署的服务器是否为所需要部署的服务器,已部署过的不再重复部署;云原生组件部署执行模块,根据规划表中获取到的要部署的管理节点和应用节点的服务器ip地址,遍历的从管理节点远程到应用节点的服务器去执行部署命令完成部署;应用配置替换模块,根据规划表里获取的公共参数,再遍历所有的组件配置项文件,去替换要修改的配置项。
[0006]进一步的,还包括:应用部署模块,根据规划表里获取的部署应用节点的个数,再遍历所有组件的云原生部署文件,修改所需的配置项,用于云原生部署应用。
[0007]进一步的,应用配置替换模块:提供获取所有组件所需要修改的配置项名称,通过在配置文件中查到需要替换的配置项名进行替换;在管理节点通过循环遍历组件统一的自
动完成所有组件配置文件修改;分别处理不同组件的特殊配置项,找到对应的要修改的配置项名精准替换;自动打包修改完成的所有配置项并上传到指定配置项服务管理地址上。
[0008]进一步的,还包括:部署节点管理模块,根据规划表里获取的部署的管理节点和应用节点的个数,将应用节点的服务器匹配到对应的管理节点。
[0009]进一步的,还包括:监控模块,应用节点在部署时,每间隔一段时间对应用节点的服务器的部署状况进行监控,并提供部署节点管理模块获取应用节点对应的管理节点接口。
[0010]进一步的,所述监控模块每间隔一段时间,对应用节点进行随机排序,从首端应用节点开始每i个节点为一组,最后一组可不足i个节点,依次对每一组应用节点中随机组件的部署状态进行巡查,记录状态异常的应用节点分组,将部署状态异常的应用节点分组记为组A;同时,从末端应用节点开始每i+1个节点为一组,最后一组可不足i+1个节点,依次对每一组应用节点中随机组件的部署状态进行巡查,记录状态异常的应用节点分组,将部署状态异常的应用节点分组记为组B,若异常应用节点组A与异常应用节点组B重合,则对组A与组B重合部分的应用节点分为组C,并对组C进行重点监控,轮询读取组C中应用节点的所有组件的基于云原生部署需要修改的yaml文件的进行状况,对组C中应用节点的部署进程状态异常的节点确定为故障节点,并发送警报至应用节点对应的管理节点。
[0011]一种基于部署规划表自动化部署云原生应用的方法,其特征在于,包括以下步骤:。
[0012]S1:部署规划表放到所有需要部署的管理节点,并在管理节点执行部署脚本;S2:处理规划表模块处理规划表中的参数值,并存储;S3:根据规划表中部署的应用节点ip地址,从管理节点ssh远程登录到部署的应用节点,执行部署命令完成云原生基础组件及中间件部署,并对应用节点的部署状况进行监控,对监控异常的应用节点重新进行部署;S4:修改的配置文件并上传;S5:轮询读取所有组件,判断轮询的组件,是否具有亲和性,若具有亲和性,进入亲和性循环判断,将所有符合亲和性的组件统一替换配置,判断多节点时端口规划、配置文件及部署名称规划,并对yaml文件进行修改;若不具有亲和性,直接修改yaml文件;S6:根据修改完后的yaml文件进行云原生命令部署组件。
[0013]进一步的,所述步骤S1包括:S101、获取部署的脚本包在本地解压;S102、填写解压文件里的部署规划表,包含服务器ip规划、数据库地址、第三方调用地址和公共参数;S103、将填写完成的表格上传到部署包,并将部署包放到所有需要部署的节点。
[0014]进一步的,所述步骤S4修改的配置文件并上传,包括以下步骤:S401、轮询读取存储的参数名,在本地管理节点搜索所有需要修改的组件配置文件,查找参数名,找到后将参数值进行替换;S402、修改完所有组件需要修改的配置文件后,打包,自动上传到配置管理服务器的指定空间,用于组件使用。
[0015]本专利技术的有益效果:本专利技术通过只修改部署规划表的方式就能部署完平台,解析表中信息进行存储,后续部署中能读取所有存储信息,提供了统一高效地管理,提高了部署效率,节省了部署时间,降低了部署错误率,也减少了大部分的手动繁琐工作。为后续新环境部署提供了一套完整、快速的部署方案。
附图说明
[0016]下面结合附图对本专利技术作进一步的说明。
[0017]图1是本专利技术基于部署规划表自动化部署云原生应用方法的流程图;图2是本专利技术基于部署规划表自动化部署云原生应用方法具体实施例步骤S1的流程图;图3是本专利技术基于部署规划表自动化部署云原生应用方法具体实施例步骤S4的流程图。
具体实施方式
[0018]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。
[0019]请参阅图1

3所示,本专利技术为一种基于部署规划表自动化部署云原生应用的系统和方法,包括:部署规划表模板模块,用于收集需要部署的管理节点和应用节点的服务器ip地址及公共参数形成规划表;处理规划表模块,用于处理规划表模板中的参数值,并存储,并进行后续的部署服务及配置修改用;部署校验模块,用于判断部署的服务器是否为所需要部署的服务器,已部署过的不再重复部署;云原生组件部署执行模块,根据规划表中获取到的要部署的管理节点和应用节点的服务器ip地址,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于部署规划表自动化部署云原生应用的系统,其特征在于,包括:部署规划表模板模块,用于收集需要部署的管理节点和应用节点的服务器ip地址及公共参数形成规划表;处理规划表模块,用于处理规划表模板中的参数值,并存储,并进行后续的部署服务及配置修改用;部署校验模块,用于判断部署的服务器是否为所需要部署的服务器,已部署过的不再重复部署;云原生组件部署执行模块,根据规划表中获取到的要部署的管理节点和应用节点的服务器ip地址,遍历的从管理节点远程到应用节点的服务器去执行部署命令完成部署;应用配置替换模块,根据规划表里获取的公共参数,再遍历所有的组件配置项文件,去替换要修改的配置项。2.根据权利要求1所述的一种基于部署规划表自动化部署云原生应用的系统,其特征在于,还包括:应用部署模块,根据规划表里获取的部署应用节点的个数,再遍历所有组件的云原生部署文件,修改所需的配置项,用于云原生部署应用。3.根据权利要求1所述的一种基于部署规划表自动化部署云原生应用的系统,其特征在于,应用配置替换模块:提供获取所有组件所需要修改的配置项名称,通过在配置文件中查到需要替换的配置项名进行替换;在管理节点通过循环遍历组件统一的自动完成所有组件配置文件修改;分别处理不同组件的特殊配置项,找到对应的要修改的配置项名精准替换;自动打包修改完成的所有配置项并上传到指定配置项服务管理地址上。4.根据权利要求1所述的一种基于部署规划表自动化部署云原生应用的系统,其特征在于,还包括:部署节点管理模块,根据规划表里获取的部署的管理节点和应用节点的个数,将应用节点的服务器匹配到对应的管理节点。5.根据权利要求1所述的一种基于部署规划表自动化部署云原生应用的系统,其特征在于,还包括:监控模块,应用节点在部署时,每间隔一段时间对应用节点的服务器的部署状况进行监控,并提供部署节点管理模块获取应用节点对应的管理节点接口。6.根据权利要求5所述的一种基于部署规划表自动化部署云原生应用的系统,其特征在于,所述监控模块每间隔一段时间,对应用节点进行随机排序,从首端应用节点开始每i个节点为一组,最后一组可不足i个节点,依次对每一组应用节点中随机组件的部署状态进行巡查,记录状态异常的应用节点分组,将部署状态异常的应...

【专利技术属性】
技术研发人员:罗汉周伊婉李江辉吴磊
申请(专利权)人:科讯嘉联信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1