【技术实现步骤摘要】
基于jenkins和K3S的软件环境快速部署方法
[0001]本专利技术涉及一种快速部署方法,尤其涉及一种基于jenkins和K3S的软件环境快速部署方法。
技术介绍
[0002]就现有的软件的部署方式阶段来看,其经历了几个阶段的发展,具体如下:
[0003]第一阶段1.代码人工构建、手动部署。部署方式以物理服务器为主,软件基础运行环境、业务代码需要逐个安装。
[0004]第二阶段2.虚拟化技术的发展,逐步由物理机向虚拟机迁移。伴随着一些软件自动化构建和部署形式。
[0005]第三阶段3.随着DevOps的新起、容器化技术发展。逐渐朝自动化构建、流水线编排、容器化部署的方向发展。云计算厂商推出了相应的部署方案。
[0006]在现有的软件部署中,大致有如下的缺点:
[0007]1、基于物理机或虚拟机的传统软件部署方式,机器集约化程度低,需要大量的机器资源和运维人员,需要大量的部署文档支持。无法满足快速交付部署的要求。
[0008]2、基于Kubernetes集群的容器镜像部署方式 ...
【技术保护点】
【技术特征摘要】
1.基于jenkins和K3S的软件环境快速部署方法,其特征在于包括以下步骤:步骤一,基于自动化运维工具,实现K3s、分布式脚本系统GlusterFS的部署;步骤二,通过K3s集群机器,挂载至步骤1部署的分布式脚本系统GlusterFS,定义待部署的软件yaml脚本;步骤三,构建jenkins docker容器镜像,实现jenkins环境的快速部署;步骤四,配置jenkins任务,构建业务代码仓库地址,生成自动生产管理脚本;步骤五,在Pipline中指定软件构建的shell脚本;步骤六,通过shell脚本,将自动生产管理版本描述脚本保存在代码目录中;步骤七,将先前构建完成的业务代码,步骤一部署的分布式脚本系统GlusterFS中,进行共享存储,通过K3s Kubectl控制对应容器进行重启,实现服务的更新。2.根据权利要求1所述的基于jenkins和K3S的软件环境快速部署方法,其特征在于:所述步骤一中,通过基于自动化运维工具部署ansible,编写部署脚本实现K3s、分布式脚本系统GlusterFS快速部署,K3s集群机器挂载至部署的分布式脚本系统,定义待部署的软件yaml脚本,并将容器组件相关路径映射到宿主机。3.根据权利要求1所述的基于jenkins和K3S的软件环境快速部署方法,其特征在于:所述步骤二中,准备K3s部署二进制脚本,定义K3s和GlusterFS部署IP,定义K3s,进行部署K3s server和agent初始化的命令模板j2脚本,定义K3s server和agent端yaml脚本,调用相关模板脚本;定义glusterfs yum源,yaml脚本中定义yum安装命令;定义glusterfs client脚本,使用mount命令将client挂载到glusterfs服务器;在yaml脚本中定义Service类型,指定名称;在yaml脚本中定义Deployment类型,指定名称;在Deployment类型中定义相关规格,包括replicas、selector、template;在Deployment类型spec层级下定义容器name参数、image参数、ports参数,通过volumeMounts参数将容器运行目录映射至宿主机的目录。4.根据权利要求1所述的基于jenkins和K3S的软件环境快速部署方法,其特征在于:所述步骤三的实施过程为,编写dockerfile,构建Jenkins Master镜像;编写dockerfile,构建Jenkins slave镜像,镜像包含软件构建所需的java、node等环境;运行jenkins master镜像,运行任务运行时,自动启动jenkins slave,构建完成slave销毁,保障每次构建环境均相同。5.根据权利要求1所述的基于jenkins和K3S的软件环境快速部署方法,其特征在于:所述步骤四中的配置构建构成为,基于groovy语言编写Pipline脚本驱动构建过程,Pipline托管于Gitea,Jenkins从Gitea获取;设置jenkins任务为参数化,配置“choice parameter”的开...
【专利技术属性】
技术研发人员:封圆,
申请(专利权)人:江苏云坤信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。