如何快速实现一套完整的CI/CD流程

        在云原生的大时代背景下,CI/CD绝对能在整个大框架下占到一席之地,本文主要介绍了如何用当前流行的各种CI/CD的开源工具,将其串联起来形成一套完整的能应用于生产的CI/CD流程,话不多说咱们进入正题。

        在此流程中CI使用的是Jenkins,CD使用的是ArgoCD,代码管理使用了GitLab,镜像仓库使用的是Harbor,下面是整个流程的流程图介绍。

以上流程图分为9个步骤,完整的流程使用文字版的描述如下:

  1.  研发人员将代码变更提交到GitLab仓库中,在发布时间段提交发布任务。

  2. 运维人员触发对应发布任务对应的Jenkins项目,进行发布。

  3. Jenkins拉取最新的代码,执行打包的CI shell脚本(自行研发,下面称为脚本)。

  4. 脚本将代码拷贝到打包机(为了提升打包速度),将最新的代码打包成镜像

  5. 脚本将打包好的镜像推送到自建的Harbor仓库。

  6. 脚本将最新的镜像ID更新到k8s的配置仓库。

  7. ArgoCD会循环监听配置仓库里面的变化。

  8. ArgoCD将最新的配置文件应用到K8S中。

  9. K8S根据最新的配置拉取最新的配置进行更新应用。

        以上步骤比较繁琐,进行了比较详细的拆解。其中的 CI 脚本主要实现打包和更新配置仓库内容即可,其中主要影响整个流程速度的有以下几点:

  1. 最好都是在同一网络环境下,同一内网最好,打包机,镜像仓库以及K8S集群在同一内网环境。

  2. 打包机性能要求高一些,打包速度快。

  3. git项目尽可能小,不要包含大文件。

       以上是针对CI/CD的一个思路,其中的组件都可以替换成其他流行的开源软件或者是自行开发都可,欢迎各位评论留言讨论。

        本文章来自我自己的公众号 实用运维 ,会不定时更新我实践过的内容,欢迎大家关注讨论。

  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值