DevOps是软件开发 (Development) 和运营 (Operations) 的结合。代表着重视「软件开发人员(Dev)」和「IT 运维技术人员(Ops)」之间沟通合作的文化;旨在透过自动化「软件交付」和「架构变更」的流程,使得构建、 测试、发布软件的过程能够更加地快捷、频繁和可靠。Gartner 咨询公司认为 DevOps 代表了 IT 文化的变化趋势。DevOps 可以最好地解释为人们一起工作以最快的速度构思、构建和交付安全软件。DevOps 实践使软件开发 (dev) 和运营 (ops) 团队能够通过自动化、协作、快速反馈和迭代改进来加速交付。
源于软件开发的敏捷方法,DevOps 流程扩展了以更快、更迭代的方式构建和交付应用程序的跨职能方法。在采用 DevOps 开发流程时,您正在决定通过在开发周期的所有阶段鼓励更具协作性的环境来改进应用程序的流程和价值交付。
DevOps 方法包括指导应用程序开发和部署的有效性和效率的四个关键原则。下面列出的这些原则以现代软件开发的最佳方面为中心。
软件开发生命周期的自动化。这包括自动化测试、构建、发布、开发环境的配置以及其他可能减慢软件交付过程或将人为错误引入软件交付过程的手动任务。
协作与沟通。一个好的 DevOps 团队有自动化,但一个伟大的 DevOps 团队也有有效的协作和沟通。
持续改进和减少浪费。从自动化重复性任务到观察性能指标以寻找减少发布时间或平均恢复时间的方法,高绩效 DevOps 团队经常寻找可以改进的领域。
通过简短的反馈循环高度关注用户需求。通过自动化、改进的沟通和协作以及持续改进,DevOps 团队可以花点时间专注于真正的用户真正想要什么,以及如何将其提供给他们。
通过采用这些原则,组织可以提高代码质量、缩短上市时间并进行更好的应用程序规划。
随着 DevOps 的发展,它的复杂性也随之增加。这种复杂性是由两个因素驱动的:
组织正在从单体架构转向微服务架构。随着 DevOps 的成熟,组织每个项目需要越来越多的 DevOps 工具。
更多项目和每个项目更多工具的结果是项目工具集成数量呈指数级增长。这需要改变组织采用 DevOps 工具的方式。
这种演变经历了以下四个阶段:
第 1 阶段:自带 DevOps
在 Bring Your Own DevOps 阶段,每个团队都选择了自己的工具。当团队因为不熟悉其他团队的工具而试图一起工作时,这种方法会导致问题。
第 2 阶段:一流的 DevOps
为了应对使用不同工具的挑战,组织进入了第二阶段,即一流的 DevOps。在此阶段,组织对同一组工具进行标准化,并为 DevOps 生命周期的每个阶段使用一个首选工具。它帮助团队彼此协作,但问题随后变成了通过每个阶段的工具移动软件更改。
第 3 阶段:自己动手 DevOps
为了解决这个问题,组织采用了自己动手 (DIY) DevOps,在他们的工具之上和之间构建。他们执行了大量定制工作以将他们的 DevOps 单点解决方案集成在一起。然而,由于这些工具是独立开发的,没有考虑到集成,因此它们永远不会很合适。对于许多组织而言,维护 DIY DevOps 是一项重大工作,会导致更高的成本,因为工程师需要维护工具集成,而不是致力于核心软件产品。
阶段 4:DevOps 平台
单一应用程序平台方法可改善团队体验和业务效率。DevOps 平台取代了 DIY DevOps,允许在整个 DevOps 生命周期的所有阶段实现可见性和控制。
通过授权所有团队(开发、运营、IT、安全和业务)跨端到端统一系统协作规划、构建、保护和部署软件,DevOps 平台代表了实现完整DevOps 的潜力。