说明:收录25万 73个行业的国家标准 支持批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211068740.X (22)申请日 2022.09.02 (71)申请人 上海浪潮云计算 服务有限公司 地址 200072 上海市 静安区江场三路238号 411室 (72)发明人 王超 颜亮 祝乃国  (74)专利代理 机构 济南信达专利事务所有限公 司 37100 专利代理师 姜鹏 (51)Int.Cl. G06F 9/455(2006.01) G06F 9/50(2006.01) G06F 8/71(2018.01) G06F 8/61(2018.01) (54)发明名称 一种容器集群环境下构建云原生应用CICD 流水线的方法 (57)摘要 本发明涉及容器编排技术领域, 具体为一种 容器集群环境下构建云原生应用CICD流水线的 方法, 包括以下步骤: 通过GitLab进行代码管理 及版本控制, 并设置Tag推送事件触发Webhook, Webhook触发Jenkins流水线任务; 在Jenkins中 通过Configure  Clouds配置容器集群, 通过 GitLab的Webhook请求触发, 配置的容器集群可 以自动按需创建Jenkins  Agent流水线执行器, 执行Jenkins流水线任务, 流水线任务执行完毕 后该执行器会自动销 毁; 有益效果为: 本发明提 出的容器集群环境下构建云原生应用CICD流水 线的方法通过应用的容器集群化部署, 实现了应 用镜像的版本化管理、 应用的自动化部署、 应用 的滚动升级、 应用的灵活扩 缩容。 权利要求书2页 说明书7页 附图3页 CN 115480868 A 2022.12.16 CN 115480868 A 1.一种容器集群环境下构建云原生应用CICD流水线的方法, 其特征在于: 所述该方法 包括: 通过GitLab进行代码管理及版本控制, 并设置Tag推送事件触发Webhook, Webhook触发 Jenkins流水线任务; 在Jenkins中通过Configure  Clouds配置容器集群, 通过GitLab的Webhook请求触发, 配置的容器集群可以自动按需创建Jenkins  Agent流水线执行器, 执行Jenkins流水线任 务, 流水线任务执 行完毕后该 执行器会自动销毁; 自定义Jenkins  Pipeline流水线, 拉取GitLab中的业务代码并进行代码打包, 并将打 包后的Jar包发布到 Maven仓库、 归档到Jen kins服务器; 自定义Jenkins  Pipeline流水线, 自动生成打包 “制品发布唯一编号 ”, 将归档到 Jenkins服务器中的制品发布到GitLab仓库版本页, 以供后期下 载使用; 自定义Jenkins  Pipeline流水线, 拉取GitLab中的Docker镜像构建配置代码, 通过 “制 品发布唯一编号 ”作为镜像T ag, 通过Kaniko进行Docker镜像构建, 并将构建的镜像推送到 本地Harbor仓库; 根据Harbor的多种镜像分发能力, 实现镜像在不同仓库间的分发与同步; 自定义Jenkins  Pipeline流水线, 拉取GitLab中容器集群Manifest或Helm  Chart配置 文件, 将配置文件中的Docker镜像T ag修改为本次构建镜像的最新T ag,并推送回GitLab仓 库的固定分支; GitLab仓库通过固定分支的Push事 件触发Webho ok, Webhook触发ArgoCD部署任务; ArgoCD自动同步GitLab中最新的容器集群Manifest或Helm  Chart配置文件, 并根据其 中配置的最新Docker镜像Tag,在本地Docker仓库拉取镜像, 并根据M ainfest或Chart的配 置进行应用的自动部署。 2.根据权利要求1所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: 自动化部署任务触发方式, 进一 步包括: 通过GitLab仓库进行代码管理及版本控制; 代码管理及版本控制就是通过GitLab仓库进行业务代码、 Docker镜像构建配置、 容器 集群Manifest部署配置的代码管理及版本控制; 通过提交代码, 添加并推送Ta g实现流水线任务触发。 3.根据权利要求2所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: Jen kins Pipeline流水线的执 行步骤, 进一 步包括: 在Jenkins配置中通过Co nfigure Clouds进行容器集群 配置; 详细的, 配置容器集群的名称、 API  Server地址、 API  Server登录凭证、 执行器自动创 建所在命名空间、 执 行器启动最大 数量、 Pod选择器标签、 Pod的执 行超时时间等信息 。 4.根据权利要求3所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: Pytho n脚本实现GitLab版本发布操作, 进一 步包括: 在Jenkins中自定义的Pipeline流水线中增加步骤, 通过Python脚本自动生成 “制品发 布唯一编号 ”, 通过Python的GitLab版本发布脚本将归档到本地Jenkins中的制品发布到 GitLab仓库版本页, 以供他人 下载使用。 5.根据权利要求4所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其权 利 要 求 书 1/2 页 2 CN 115480868 A 2特征在于: Pytho n脚本实现Docker镜像打包名称及Ta g组织操作, 进一 步包括: 在Jenkins中自定义的Pipeline流水线中增加步骤, 拉取GitLab中容器集群Manifest 或Helm Chart配置文件, 通过Python脚本自动将配置文件 中的Docker镜像Tag修改为本次 构建的最 新Tag,并推送回GitLab仓库的固定分支。 6.根据权利要求5所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: A rgoCD的Webho ok触发, 进一 步包括: Jenkins Pipeline流水线修改镜像最新Tag并提交GitLab后, GitLab仓库通过配置固 定分支的Push事 件触发Webho ok, Webhook触发ArgoCD部署任务。 7.根据权利要求6所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: GitLab  Webhook触发自动部署任务后, ArgoCD自动同步并拉取GitLab中最新的 容器集群Manifest或H elm Chart配置文件, 并根据Jenkin s Pipeline流水线中修改的最新 Docker镜像Tag,在本地Docker仓库拉取镜像, 并根据Mainfest或Chart配置进行应用自动 部署。 8.根据权利要求7所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: 本地Docker仓库 拉取镜像, 需要通过Jenkins  Pipeline流水线构建镜像 时将镜 像直接推送的本地仓库, 或是通过Harbor镜像分发同步机制分发。 9.根据权利要求8所述的一种容器集群环境下构建云原生应用CICD流水线的方法, 其 特征在于: ArgoCD自动部署, 需要ArgoCD中配置需部署的目的容器集群的API  Server连接 信息。权 利 要 求 书 2/2 页 3 CN 115480868 A 3

.PDF文档 专利 一种容器集群环境下构建云原生应用CICD流水线的方法

文档预览
中文文档 13 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共13页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种容器集群环境下构建云原生应用CICD流水线的方法 第 1 页 专利 一种容器集群环境下构建云原生应用CICD流水线的方法 第 2 页 专利 一种容器集群环境下构建云原生应用CICD流水线的方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:09:20上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。