DevOps是什么?
在容器云、微服务、DevOps等快速发展变化的时期,希望借助新技术、新思想提升我们的技术能力和业务能力, 需要更快的学习最新技术并快速落地,最终达到产品的快速交付并不断产生收益。
从概念上说,DevOps 是一种方法论,是一组过程、方法与系统的统称,用于促进应用开发、应用运维和质量保障(QA)部门之间的沟通、协作与整合。概念有了,怎么落地?很多公司在实施容器云时实现CI(Continuous Integration, 持续集成),或者CI/CD(Continuous Integration/Continuous Delivery or Deployment, 持续集成/持续交付 or 持续部署)就叫DevOps。我们觉得这只是实现DevOps的一部分,但不等于DevOps。
CI持续集成是编码、构建的过程。容器云DevOps从CI起步,也是一个很好的切入点。但这仅仅是一个开发构建过程,都在开发端,是实现敏捷开发的一种方式,研发过程自动化,这也是我们考虑采用容器云和DevOps的一个因素。但仅有开发端的敏捷还不等于DevOps。
现在我们也总是听到一天要上线多少次多少次的。是一个应用吗?频繁上线是需求不明确还是代码质量不高?厂商在这里可能有点偷换概念。一天上线几十次几百次,肯定不是一个应用。像阿里等,那么多系统那么多应用,每天那么多的更新次数很正常。持续交付、持续部署的好处是基于自动化的过程支持。也就是开发、测试、交付部署过程工具链集成实现自动化。
但CI/CD依然没有解决开发、运维、质量保证部门之间的协作和整合。职责依然没有划分清楚。而且目前的容器云CI/CD流水线设计,不足以支撑企业生产环境部署要求。更多像是PoC概念验证阶段(英语:Proof of concept,简称