实现 DevOps 的“三方法”原则

阅读数:935 2013 年 10 月 31 日

话题:DevOps

Everything Sysadmin提出了帮助组织采用 DevOps 文化的5 个里程碑

该网站将这 5 个点置于“三方法(The Three Ways)”的语境中,而三方法是由“凤凰项目(The Phoenix Project)推广开来的一套原则。DevOps 社区的重要成员 Jez Humble 以及CFEngine创始人 Mark Burgess 均在 Twitter 上指向了这些里程牌。

遵循“第一方法(The First Way)”意味着思考系统的端到端流程,例如,考虑一次软件变更需要经历的所有步骤,从客户的初始需求一直到生产环境部署。正如 Gene Kim 等人在“凤凰项目”中所说的那样,这有助于避免局部最优和消除工作孤岛。“第二方法(The Second Way)”增加了反馈回路,问题因此可以得到快速识别和纠正。一个典型的例子是使应用程序的生产日志可以随时提供给开发团队。“第三方法(The Third Way)”意在培养一种不断实验以及通过反复实践达到精通的文化。Netflix 的Chaos Monkey服务可以看作第三方法在实践中的一个极端示例。

Everything Sysadmin 的联合创始人 Tom Limoncelli 提出了实现三方法原则的 5 个里程碑。这些里程碑是非正式的检查点,使组织可以评估这些原则在他们的文化中如何的根深蒂固。

第一个里程碑是起点,此时一切都没有文档记录,也没有经过度量或者思考。该里程碑的表现包括不能始终执行系统的现有流程,以及 / 或者奖励个人达到局部优化。组织也处于旅途的起点,无法度量系统的流程,例如弄清系统的平均部署时间有多长。

第二和第三个里程碑标注第一方法的长路径。前者保证流程有文档记录并可重复,后者寻找清晰的流程目标并避免重复工作。除去其它事项外,当组织可以始终遵循定义好的流程并在流程的每个步骤上附加 QA 检查列表时,组织实现了第一方法。第一方法还体现在,流程变更总是讨论并发送到各相关利益方。

如果组织做诸如定期的流程度量、缺陷或重复工作量评估这样的工作,那么它已经达成第四个里程碑和第二方法。在这一阶段,组织会有展示步骤完成时间、缺陷或者周期时间等数据的仪表板。最重要的是,组织利用这些度量来保证流程变更修复了那些导致变更的问题。

当达到第五个里程碑的时候,也就实现了第三方法。这一级别的成熟度具有一些显著的特征,如有规律地改进周期和提前期,或者定期练习应急程序(例如,处理失败的服务器)。通常,一个特定流程的所有步骤已经引发了一次流程变更,或者至少这些步骤都已经分析过而没有发现需要优化的地方。

查看英文原文:Achieving the DevOps’ Three Ways