System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于DevOps的可多选组件便捷部署方法技术_技高网

基于DevOps的可多选组件便捷部署方法技术

技术编号:44436123 阅读:0 留言:0更新日期:2025-02-28 18:46
本发明专利技术公开了基于DevOps的可多选组件便捷部署方法,通过交互式的从用户获取集群配置项,包括集群的基础参数配置和集群可选组件的启用参数配置,以生成主配置文件,并对主配置文件进行解析得到集群部署的安装文件,执行安装文件,一体化便捷部署集群环境和可选组件;对于开发者对可选组件的修改,是为代码仓库配置触发机制,开发者推送更新代码到代码仓库,触发自动化工具的流水线任务,对可选组件代码进行自动化代码编译、镜像构建,并自动推送镜像到镜像仓库中,通过自动化工具执行可选组件的镜像更新,以完成可选组件的自动化部署,从而提高集群管理与组件更新部署的效率,提升软件系统的交付效率和质量。

【技术实现步骤摘要】

本专利技术属于集群自动化部署,具体涉及基于devops的可多选组件便捷部署方法。


技术介绍

1、随着云计算和容器化技术的发展,kubernetes(简称k8s,开源的容器编排平台,主要用于自动化部署、扩展和管理容器化应用程序)已成为管理容器化应用的标准平台。然而,kubernetes的部署和管理过程通常复杂,需要精确的配置和操作步骤,而传统的手动部署方法存在诸多弊端,如需要手动编写大量的配置脚本费时费力、易出错,并且在安装完基础的kubernetes集群后,用户还需依据具体需求,再次安装集群相关的其他组件,步骤繁琐且效率低下,影响系统的稳定性和可靠性。

2、公开号为cn115981669a的专利技术专利公开了一种基于多架构的devops(一种强调开发development与运维operations协作的文化和实践方法,旨在通过自动化流程和持续集成、持续交付(ci/cd)来提高软件开发和交付的效率和质量)平台部署方法,基于k8s架构和ansible架构实现离线自动化部署基础的kubernetes集群,但是仍然需要人工手动创建目录并手动编写集群主机的host列表信息,并且对于用户的所需的集群相关的其他组件没有实现统一的安装部署。


技术实现思路

1、为解决现有技术的不足,实现交互式参数配置及可选组件便捷部署的目的,本专利技术采用如下的技术方案:

2、基于devops的可多选组件便捷部署方法,具体如下:

3、交互式的从用户获取集群配置项,包括集群的基础参数配置和集群可选组件的启用参数配置,以生成主配置文件,并对主配置文件进行解析得到集群部署的安装文件,执行安装文件,一体化便捷部署集群环境和可选组件,通过交互式集群配置项的选择,能够降低用户的使用门槛,大大降低工作时间,也能够减少人为输入的错误率;

4、对于开发者对可选组件的修改,是为代码仓库配置触发机制,开发者推送更新代码到代码仓库,触发自动化工具的流水线任务,对可选组件代码进行自动化代码编译、镜像构建,并自动推送镜像到镜像仓库中,通过自动化工具执行可选组件的镜像更新,以完成可选组件的自动化部署,通过自动执行整个代码编译、镜像构建、组件部署流程,从而在对可选组件进行升级或更新时,消除了人工执行所带来的操作失误,提高了效率以提升开发效率和交付频率,开发者可以在短时间内获取部署的反馈信息,及时发现并修复问题,从而缩短开发周期,实现持续交付和应用程序的快速迭代。

5、进一步地,所述基础参数配置包括主机信息、集群配置信息,通过主机信息以确认集群类型、集群节点的角色、镜像仓库节点信息,基于集群类型和节点角色以确认主控节点和工作节点信息,用于配置地址信息、密码、主机名,这些配置对集群的正常运行和管理至关重要,不进行这些配置将导致集群无法正确部署或运行,基于镜像仓库节点信息,确认集群获取对应的容器镜像,从而确保k8s集群能够正确拉取所需的镜像;通过集群配置信息以确认集群的网络模式,用于集群的网络设置,以避免网络冲突,并正确设置网络;

6、解析主配置文件,提取所述容器相关的配置信息,解析并配置到容器的守护进程中,将读取的配置项写入daemon.json文件供安装容器docker使用;基于主机信息中生成自动化运维ansible配置文件,用于设置负载均衡和代理服务,以提升应用程序和服务的性能和可靠性,以及配置管理虚拟地址分配的keepalived文件,以设置虚拟ip地址和网络接口,从而实现高可用性,以自动化集群配置过程,通过动态修改配置文件来适应不同的集群设置要求;基于集群配置信息,处理k8s集群网络存储配置,正确配置它们可以扩展k8s集群的功能,否则,集群可能缺少必要的功能或服务,影响系统的完整性和功能;提取容器的所述镜像仓库的宿主机ip地址,并将配置字典中的主机名hostname更新为指定的宿主机ip地址,这样可以确保harbor使用正确的ip地址进行配置,生成harbor.yaml配置文件用于镜像仓库的设置,否则会导致容器镜像的存储和管理将受到影响,可能导致镜像不可用或管理困难;提取集群类型、集群节点的角色,以配置集群各节点,确保集群的各节点能够正确配置和正常工作,为集群提供稳定的控制平面和业务负载支持。

7、进一步地,所述安装文件基于解析的主配置文件和默认配置文件,对集群部署管理的kubeadm配置文件,进行初始化配置、集群配置、代理配置和节点管理和运行的kubelet配置提取,节点为集群最基本的调度单元,代表一个或多个所述容器的组,这些容器共享存储、网络和运行环境,生成对应的集群部署管理配置yaml文件,用于k8s集群初始化;

8、集群安装阶段,基于所述集群部署管理配置yaml文件,分别进行集群初始化、所述镜像仓库及所述容器的安装、集群网络的创建和集群存储,以及根据所述集群类型和所述集群节点的角色,在各个节点上安装和配置相应的组件。

9、进一步地,所述初始化配置,用于设置k8s集群的基本参数,从主配置文件和默认配置文件中提取初始化配置,并生成相应的集群部署管理的kubeadm初始化配置文件,包括集群的控制平面设置、认证和加密配置等,以确保集群能够正常启动并进行初步配置;

10、所述集群配置,用于定义集群的网络、存储设置,提取集群配置和默认集群配置,以生成集群部署管理的kubeadm集群配置文件;

11、所述代理配置,是通过配置代理服务,以处理集群内网络流量路由,以确保网络流量的正确转发,服务和负载均衡的正确工作,提取代理配置和默认代理配置,生成集群部署管理的kubeadm代理配置文件;

12、所述节点管理和运行的kubelet配置,用于管理节点的容器运行,提取节点管理和运行的kubelet配置生成节点管理和运行的kubelet配置文件。

13、进一步地,自动化运维ansible配置文件包括配置全局变量,获取镜像仓库harbor的ip地址,读取并检查主控master节点是否也作为工作节点的设置,更新全局变量配置文件,包括镜像仓库harborip地址和主控master节点的工作状态,并重新生成全局变量配置文件;

14、集群安装阶段,对指定镜像仓库harbor的ip地址和主控节点的ip地址进行网络连接检查,确保网络通信没有问题,这是保证集群稳定性和服务正常运行的重要步骤。

15、进一步地,所述集群类型包括三主控集群,集群中有三个主控节点,三主控集群包括控初始化节点、主控加入节点、工作节点,获取的用户交互信息包括:主控初始化节点、工作节点和主控加入节点,其中,主控初始化节点用于集群初始化,输入三个主控节点的ip地址和ssh root用户密码;配置虚拟ip地址和与其绑定的网卡名称,用于keepalived配置;工作节点用于输入获取工作节点的ip地址和主机名;主控加入节点用于加入现有集群,输入主控初始化节点的ip地址;

16、自动化运维ansible配置文件包括配置ansible主机文件,对于三个主控节点,更新三本文档来自技高网...

【技术保护点】

1.基于DevOps的可多选组件便捷部署方法,其特征在于具体如下:

2.根据权利要求1所述的基于DevOps的可多选组件便捷部署方法,其特征在于:所述基础参数配置包括主机信息、集群配置信息,通过主机信息以确认集群类型、集群节点的角色、镜像仓库节点信息,基于集群类型和节点角色以确认主控节点和工作节点信息,基于镜像仓库节点信息,确认集群获取对应的容器镜像;通过集群配置信息以确认集群的网络模式,用于集群的网络设置;

3.根据权利要求2所述的基于DevOps的可多选组件便捷部署方法,其特征在于:所述安装文件基于解析的主配置文件和默认配置文件,对集群部署管理的配置文件,进行初始化配置、集群配置、代理配置和节点管理和运行配置提取,节点为集群最基本的调度单元,代表一个或多个所述容器的组,生成对应的集群部署管理配置文件,用于集群初始化;

4.根据权利要求3所述的基于DevOps的可多选组件便捷部署方法,其特征在于:

5.根据权利要求2所述的基于DevOps的可多选组件便捷部署方法,其特征在于:自动化运维配置文件包括配置全局变量,获取镜像仓库的地址,读取并检查主控节点是否也作为工作节点的设置,更新全局变量配置文件,包括镜像仓库地址和主控节点的工作状态,并重新生成全局变量配置文件;

6.根据权利要求2所述的基于DevOps的可多选组件便捷部署方法,其特征在于:所述集群类型包括三主控集群,集群中有三个主控节点,三主控集群包括控初始化节点、主控加入节点、工作节点,获取的用户交互信息包括:主控初始化节点、工作节点和主控加入节点,其中,主控初始化节点用于集群初始化,输入三个主控节点的地址和用户密码;配置虚拟地址和与其绑定的网卡名称,用于Keepalived配置;工作节点用于输入获取工作节点的地址和主机名;主控加入节点用于加入现有集群,输入主控初始化节点的地址;

7.根据权利要求2所述的基于DevOps的可多选组件便捷部署方法,其特征在于:所述集群类型包括单主控集群,集群中只有一个主控节点,用于集群的所有控制和管理任务,单主控集群包括主控节点、工作节点,获取的用户交互信息包括:

8.根据权利要求2所述的基于DevOps的可多选组件便捷部署方法,其特征在于:通过主机信息获取NTP节点信息,以确认时间同步的时间源;

9.根据权利要求1所述的基于DevOps的可多选组件便捷部署方法,其特征在于:所述启用参数配置为可选组件的相关信息配置,包括集群管理可视化组件、集群监控可视化组件、集群日志可视化组件的配置信息;

10.根据权利要求1所述的基于DevOps的可多选组件便捷部署方法,其特征在于:所述可选组件的自动化部署,是在代码仓库中,通过定位标识指向自动化工具的代码仓库插件,在自动化工具中构建流水线,以设定不同阶段的一系列任务;所述不同阶段包括拉取代码仓库的代码、构建项目、通过容器制作镜像、将镜像推送到镜像仓库、执行可选组件的文件;

...

【技术特征摘要】

1.基于devops的可多选组件便捷部署方法,其特征在于具体如下:

2.根据权利要求1所述的基于devops的可多选组件便捷部署方法,其特征在于:所述基础参数配置包括主机信息、集群配置信息,通过主机信息以确认集群类型、集群节点的角色、镜像仓库节点信息,基于集群类型和节点角色以确认主控节点和工作节点信息,基于镜像仓库节点信息,确认集群获取对应的容器镜像;通过集群配置信息以确认集群的网络模式,用于集群的网络设置;

3.根据权利要求2所述的基于devops的可多选组件便捷部署方法,其特征在于:所述安装文件基于解析的主配置文件和默认配置文件,对集群部署管理的配置文件,进行初始化配置、集群配置、代理配置和节点管理和运行配置提取,节点为集群最基本的调度单元,代表一个或多个所述容器的组,生成对应的集群部署管理配置文件,用于集群初始化;

4.根据权利要求3所述的基于devops的可多选组件便捷部署方法,其特征在于:

5.根据权利要求2所述的基于devops的可多选组件便捷部署方法,其特征在于:自动化运维配置文件包括配置全局变量,获取镜像仓库的地址,读取并检查主控节点是否也作为工作节点的设置,更新全局变量配置文件,包括镜像仓库地址和主控节点的工作状态,并重新生成全局变量配置文件;

6.根据权利要求2所述的基于devops的可多选组件便捷部署方法,其特征在于:所述集群类型包括三主控集群,集群中有三个主控节点,三主...

【专利技术属性】
技术研发人员:周峰崔洪岩费颖超吴昌泰徐万腾沈家瑜
申请(专利权)人:东方通信股份有限公司
类型:发明
国别省市:

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

1