一种基于k8s环境的应用系统的部署系统和方法与流程

文档序号:37791137发布日期:2024-04-30 17:01阅读:11来源:国知局
一种基于k8s环境的应用系统的部署系统和方法与流程

本发明涉及一种应用系统的部署方法,尤其涉及一种基于k8s环境的应用系统的部署方法、系统、装置及介质,属于物联网。


背景技术:

1、首先,现有技术中,在x86架构下基于k8s环境的应用系统的传统部署流程如下:1、由专业运维人员进行人工检测服务器硬件配置、操作系统版本是否符合既定标准;2、手动安装k8s及依赖;3、手动安装数据库、对象储存、消息队列等中间件;4、手动部署应用系统的各个服务;5、手动部署完成后,对应用系统做业务流程测试。由此可知,传统部署流程不仅需要专业的人员投入较大的精力去完成,并且每个流程都由人工进行操作,不可避免的存在由于人为操作失误导致部署失败的情况。

2、其次,目前it行业中很多公司针对软件系统部署都开发了相应的部署集成工具,但这些部署集成工具只对内部使用,因此能了解到的信息更多的是一种分享,分享其设计的思路及使用的场景,尤其缺少整个部署集成工具的对外分享和实现逻辑,无法从根本上提高应用系统的部署效率,以及释放人力。

3、为此,本发明亟待研发一种基于k8s环境的可快速部署应用系统的部署方案。


技术实现思路

1、针对上述现存的技术问题,本发明提供一种x86架构下基于k8s环境的应用系统的部署系统、方法、装置及介质,目的在于快速部署应用系统,同时提高部署效率和释放人力。

2、为实现上述技术目的,其一,本发明提供一种x86架构下基于k8s环境的应用系统的部署系统,包括部署设置模块,部署启动模块,资源管理模块,日志管理模块,以及系统设置模块;

3、所述部署设置模块包括配置单元,安装项单元,以及快捷设置单元;

4、其中,所述配置单元用于设置需要部署的目标服务器,包括服务器数量、服务器ip地址、服务器ssh端口、服务器主机名、服务器账号密码;

5、所述安装项单元用于展示和勾选需要部署的安装项,包括部署环境校验、docker服务安装、harbor仓库安装、docker镜像推送、mysql数据库安装、postgres数据库安装、minio部署、zk/kafka部署、k8s安装、rancher安装、存储组件安装、gpu插件安装、应用系统部署;

6、所述部署启动模块用于对勾选的安装项进行启动部署,包括部署清单单元和部署信息单元;其中,所述部署清单单元用于通过部署清单展示勾选的安装项、部署状态和部署进度,且每个安装项显示两种部署状态,即未开始和完成;所述部署信息单元用于展示部署清单中的安装项在部署时的前台输出信息;

7、所述快捷设置单元用于指定需要部署的某个安装项,以及对某个安装项单独检测当前环境是否已安装;

8、所述资源管理模块包括版本管理单元和镜像文件单元;其中,所述版本管理单元用于显示和更新当前环境里软件包的名称和版本;所述镜像文件单元用于显示和更新当前环境里镜像包的名称和版本;

9、所述日志管理模块包括部署日志单元和测试日志单元,分别用于查阅部署日志和测试日志;

10、所述系统设置模块包括时间设置单元,用于显示和更改部署主机的时间,同步浏览器时间。

11、其二,本发明提供一种基于k8s环境的应用系统部署方法,利用所述的一种基于k8s环境的应用系统部署系统,包括如下步骤:

12、s1、通过部署主机的web浏览器进入部署系统的使用页面;

13、s2、设置需要部署的目标服务器,勾选需要部署的安装项,以及添加快捷设置;

14、s3、通过部署清单展示勾选的安装项、部署状态和部署进度,先对部署清单中的部署环境校验启动部署;若校验成功,则可以对部署清单中的其余安装项启动部署,否则部署失败;

15、s4、然后通过目标服务器获取安装项的软件包,对部署清单中的其余安装项依序启动部署;若中途取消部署,则部署失败;

16、并且,在其余安装项依序启动部署的过程中:

17、每个安装项在安装前先进行环境检测;若当前环境检测出已有该安装项,则继续下一个安装项的启动部署,否则对该安装项进行安装;

18、每个安装项在安装后再进行结果检测;若检测失败,则部署失败,并打印错误信息展示在部署信息单元的窗口,否则继续下一个安装项的启动部署,直至所有安装项均检测成功,则部署成功。

19、本发明方法进一步的,步骤s1中,所述部署系统以web浏览器的形式提供访问入口,前端页面展示使用开发语言js+css+html,后端逻辑处理使用开发语言python,各个部署动作使用开发语言shell处理,并由前端提供操作指引后转发命令到后端,再由后端调用shell脚本实现部署功能。

20、本发明方法进一步的,步骤s3中,所述部署环境校验的启动部署包括如下步骤:

21、s3-11、部署主机创建ssh密钥,使用sshpass命令配置预设的账号密码对目标服务器推送ssh公钥,实现部署主机和目标服务器的ssh免密登录;

22、s3-12、部署主机使用ssh远程命令,获取如下检测项的值:目标服务器的cpu型号/核数、内存容量、硬盘容量、操作系统版本、显卡型号,并打印展示在部署信息单元的窗口;检测脚本可预设上述检测项的预期值,并判断获取的值是否与预期值匹配,若获取的值与预期值不匹配,则终止部署,并打印不符合预期的检测项和值展示在部署信息单元的窗口;

23、s3-13、部署主机使用ssh远程命令,配置目标服务器的内核转发参数、hosts绑定、主机名、关闭防火墙和禁止防火墙开机启动、关闭selinux、关闭swap、允许ssh的tcp转发、系统可打开的最大文件数;

24、s3-14、部署主机使用scp命令,将系统基础依赖包、应用软件包、配置文件发送到目标服务器,使用ssh远程命令控制目标服务器执行系统基础依赖包的安装,并校验安装结果,若发生安装失败事件,则终止部署,并打印错误信息展示在部署信息单元的窗口;

25、s3-15、部署主机使用ssh远程命令,控制目标服务器执行时间同步命令,时间服务器默认设置为部署主机。

26、本发明方法进一步的,步骤s4中,所述docker服务安装、harbor仓库安装、mysql数据库安装、postgres数据库安装、minio部署、zk/kafka部署、k8s安装、rancher安装、存储组件安装、gpu插件安装、应用系统部署的启动部署均包括如下步骤:

27、首先,部署主机使用ssh远程命令,控制目标服务器检测当前环境是否安装有当前安装项;

28、若已有当前安装项在运行,且版本及运行端口符合预设的值,则跳过当前安装项,继续下一个安装项的启动部署;

29、若已有当前安装项的版本及运行端口不符合预设的值,则执行删除已有当前安装项;

30、若无当前安装项,则将当前安装项的软件包从版本管理单元推送到目标服务器进行安装;

31、然后,对当前安装项的安装结果进行检测;

32、若检测成功,则继续下一个安装项的启动部署;

33、若检测失败,则终止部署,并打印错误信息展示在部署信息单元的窗口。

34、本发明方法进一步的,步骤s4中,所述docker镜像推送的启动部署包括如下步骤:

35、首先,通过harbor仓库安装预设的官方初始账号密码和地址,登录到harbor仓库,使用harbor仓库自带的环境检测功能,并将配置文件里指定的镜像列表清单推送到harbor仓库;

36、然后,对docker镜像的推送结果进行检测;

37、若检测成功,则继续下一个安装项的启动部署;

38、若检测失败,则终止部署,并打印错误信息展示在部署信息单元的窗口。

39、其三,本发明还提供一种x86架构下基于k8s环境的应用系统的部署装置,包括至少一个处理器;以及与至少一个所述处理器连接的存储器;其中,

40、所述的存储器存储有可被所述的处理器执行的指令;

41、所述的指令用于被所述的处理器执行以实现所述的一种x86架构下基于k8s环境的应用系统的部署方法。

42、其四,本发明另提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的一种x86架构下基于k8s环境的应用系统的部署方法。

43、综上,本发明提供了一种在x86架构下基于k8s环境的快速实现应用系统的部署及部署结果检测的方法,该方法包括服务器硬件配置、操作系统版本的基础环境检测,k8s、数据库、对象储存、消息队列等应用系统基础依赖环境安装,以及应用系统服务安装。

44、具体的,基于web页面登录到部署系统;选择要部署的配置项,包括部署前的环境检测、依赖部署、应用部署、部署状态检测;确认部署的配置项,服务器地址信息和服务器数据,开始进行部署;检测被部署的服务器环境,看硬件配置、操作系统版本是否符合既定标准;基于当前环境自动安装k8s及依赖;基于当前环境自动安装数据库、对象储存、消息队列等中间件;基于当前环境自动安装应用系统的服务;对部署完成的应用系统做运行状态的检测,看是否部署成功。

45、并且,相比现有技术,本发明具有如下技术优势:

46、1、操作简洁,简单易行,无需具有专业知识的专业人员进行参与,也可完成应用系统的部署;

47、2、每个安装项在安装前先做环境检测,在安装后再做结果检测,符合预期流转下一步,不符合预期则终止部署,并打印错误信息展示在部署窗口。

48、3、不仅能够快速的部署应用系统,而且提高了部署效率,释放了人力。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1