持续集成cicd和devops

1,591 阅读1分钟

什么是 cicd,devops

DevOps是一种思想,是一种文化,主要强调软件开发测试运维的一体化,目标是减少各个部门之间的沟通成本从而实现软件的快速高质量的发布。cicd是指持续集成发布部署,是一套流程实现软件的构建测试部署的自动化。

DevOps与cicd紧密相关,是理论与实践的结合,DevOps要实现人员一体化,必须要借助cicd工具来自动化整个流程。

devops

在不同的公司会有不同的人员组织架构,创业公司开发人员可能就涵盖了所有的DevOps任务,在专业的软件公司一般会有专门的团队来负责公司所有产品的DevOps。不管任务谁来做,不管所在公司职位是什么,其实目标都是一致的,所做的事情也是一致的,完成任务所需要的工具也是一致的。 不同公司职位的名称可能但是不限于:

  • BRE(Build Release Engineer)
  • SWI(Software Integrator)
  • SRE(Site reliablity Engineer)
  • DevOps

devops2

devops的发展过程:

  1. 传统瀑布模型(Waterfall Development)
  2. 持续集成(Continuous Integration)
  3. 持续发布(Continuous Delivery)
  4. 持续部署(Continuous Deployment)

devops12

为什么需要 cicd,devops

  • 提高发布的频率
  • 更快地将产品新功能推向市场
  • 避免发布的失败率
  • 快速发布hotfix

怎么实现 cicd,devops

实现自动化的发布,主要需要如下类型的工具:

  • 源代码管理
  • 配置管理
  • 容器编排
  • 构建工具,分布式构建
  • 测试框架
  • 持续集成sever
  • artifact的管理工具
  • 部署分发
  • 监控工具

devops3
devops6
devops9

更多工具, 参考github awesome-ciandcd

欢迎一起讨论

公众号:cicdops

devops9