DevOps,字面意思是Development &Operations的缩写。
DevOps是从实践中逐步总结提炼出的方法论理念。近而创造了DevOps这个词。
2008年敏捷大会上,来自比利时的Patrick Debois发表了题为 《Agile Infrastructure & Operations》 的演讲,以自身项目经历为蓝本介绍开发和运维如何应用敏捷的方式进行沟通协作。
在加州举办的 O’Reilly Velocity 2009 上,Flickr 的工程师 John Allspaw 和 Paul Hammond 发表了题为《10+ Deploys per Day: Dev and Ops Cooperation at Flickr》的演讲,体现了 DevOps 的思想精髓,开发和运维围绕着共同目标紧密合作,实现1天之内完成10次以上的软件发布。这次演讲也成为 DevOps 这一称呼出现的契机。
2009年Patrick Debois发起了名为「DevOpsDays」的活动,这也标志着 DevOps 的正式提出,并开发普及推广。
DevOps来源于敏捷开发的持续发展,是软件开发管理领域继敏捷开发之后的又一次升级。敏捷开发方法的推广和实施,使软件交付过程中的开发和测试过程有效的整合,形成整体进行快速有效的迭代交付,但在软件交付客户使用之前,或者使用过程中,还包括集成、部署、运维等环节,需要进一步优化交付效率。因此,DevOps的产生将敏捷的相关理念逐步扩展到运维侧,俗称解决软件交付“最后一公里”的问题。
DevOps的理想是通过进一步简化软件在构建、验证、部署和交付阶段的移动,扩展了敏捷开发实践,同时授权跨职能团队拥有从设计到生产支持的软件应用程序的全部所有权,形成全流程一站式流水线管道。
DevOps 强调开发人员和运维人员(IT人员)的合作,实现软件交付和基础设施变更的自动化。它旨在建立一种可以快速、频繁、可靠地构建、测试和发布软件的文化。
核心词汇分别为合作、自动化、文化。
从各角色的独立运作不断向上汇报进行跨部门沟通,到打通部门墙实现跨职能团队的建立,以事件触发活动的推进,在跨职能团队层面上进行事情的推进。提升了人员工作的高效性。
从拉取代码、编译构建、验证测试到生产部署,整个环节通过工具构建全流程流水线,自动化触发相关活动,提升研发整体的交付效率和质量。从工具层面优化了执行效率和质量。
有个合作的基础,有个完善的工具,如何让工具在企业内有效的落地和实施,需要文化来构建,通过流程规范来约束人员的行为,使人的行为统一符合组织预期。在企业范围内形成共性的文化
未来的DevOps,不仅打破研发与运维的边界,还将进一步打破业务与IT的边界,构建从业务-IT-运营全链路的Biz DevOps,能够确保应用程序价值链中的所有核心成员都做到按业务价值和目标进行交付。对项目中需求优先级可以达成一致,消除内部相互竞争的挑战和目标。