DevOps 承诺消除开发人员和系统运维工程师之间的障碍,但能否成功却取决于公司的文化和灵活性。
Steve Ropa 是 VersionOne 的敏捷教练,他在近期的博客中解释说,DevOps 是种与众不同的方案,它同时兼顾技术和人的问题。
Steve 说,DevOps 参考了许多技术方案。充分理解大多数这类实践是 DevOps 的基础。像持续集成此类的已经深入人心非常长的时间了,为了确保持续集成值得花时间做下去,它不但需要一台持续集成服务器还需要一致的自动化装置和验收测试。它还需要和版本控制系统紧密地集成在一起,以使所有事都在版本控制之下。
Steve 说,除了这种技术实践之外,为了成功地实施 DevOps,我们还要关注人、协作和理念。
要从事这些实践,我们就需要人。把运维融入团队中需要一种理念,那就是心甘情愿地去做出艰难地调整和改变。这是思维模式的巨大转变。
Rackspace 著有一本电子书,讲得就是DevOps 理念。这本电子书中含有多位不同的DevOps 技术领袖给出的意见。Kevin Behr 是 HedgeServ 的创始人和首席信息官,他说,DevOps 综合了社会体系和技术体系。
没有跨职能和灵活性,根本就干不了 DevOps。你不能把 DevOps 搬过来后就束之高阁了。要运行 DevOps,某些方面就必须要放到应有的位置上,第一要素就是要有红红火火把它执行下去的企业文化。基本上,它即包括社会体系又包括技术体系,也就是说它是一种社会技术系统,而且,与以往相比在社会和技术权衡时会更多地向社会倾斜。
Kevin 说,要使 DevOps 取得成功的某中一个关键要素是,确保它是组织规划的一部分。想要使用 DevOps 取得成功的组织通常都要进行转型,从任务的管理转变成跨职能边界的管理。此外,DevOps 可以成为局部的优化。
ThoughtWorks Studios 的首席顾问 Jez Humble 在接受 VMblog 的采访时谈到了 DevOps 。他说 DevOps 不仅仅是个工具,更是一种理念。
DevOps 是一种使持续交付成为可能的理念,关注于所有人共同协作以改进开发效率方面的衡量(比如生产力),同时增加稳定性并降低平均故障修复时间。
2U Inc 的技术总监 James Kenigsberg 在电子书中描述了 DevOps 几个主要部分的本质:
- 自动化:自动化确保过程的可重复性和稳定性。一直以来,它都是将任务执行予以标准化的最佳方式,避免任何可能产生偏差的风险,从同行评审代码到整个团队的流程改进。
- 透明度:透明度让团队中的每个成员都可以清楚地看到其他人正在做什么,正在改进的沟通机制和业务流程,等等等等。
- 才华:天才雇员把业务需要、效率和自动化放到硬件如何运作之前,在 IT 和开发人员之间不做严格的区分。在解决问题之前,他们到处找有此类经验的同事们交流,问问他们之前是如何解决这种问题的。
查看英文原文: The DevOps Mindset
评论