维基百科给出来的关于DevOps的定义:
DevOps是一种重视“软件开发人员”(Dev)和“IT运维人员(Ops)”之间沟通合作的文化、运动或惯例。
我认为DevOps强调的是团队之间高效地协作与沟通,利用自动化的工具来完成软件的生命周期管理,以达到更快地交付更稳定的软件。
DevOps来源于敏捷开发的持续发展,是软件开发管理领域继敏捷开发之后的又一次升级。敏捷开发方法的推广,使得软件交付过程中的开发和测试过程有效的整合,形成整体进行快速有效的迭代交付,但软件交付客户使用之前,还包括集成、部署、运维等环节,需要进一步优化交付效率。故而,DevOps将敏捷的相关理念扩展到运维,即,解决软件交付“最后一公里”的问题。
DevOps的核心即:合作、自动化、文化。
合作:指在打通部门墙实现跨职能部门,使各部门人员的工作交互性更强,提升了人员工作的高效性。
自动化:整个环节通过工具构建全流程流水线,提升研发整体的交付效率和质量,从工具层面优化执行效率和质量。
文化:有合作的基础,有完善的工具,还需要文化的构建,通过流程规范来约束人员,使工具在企业内有效的落地和实施。