你不能解决一个没有衡量指标的问题。 重要的是选定合适的指标,基于此指标做改进。
传统 IT 组织里,平均故障间隔(Mean Time Between Failures, MTBF)是关键指标。 服务器正常运行时间至关重要,于是成了首先优化的目标。 这会导致变更不乐意被接受,因为每次变更都有可能导致故障。 此外,配置由系统管理员手工更改。导致很多已经长时间运行的服务几乎不可复制。 事故不可避免的发生后,对于恢复服务可用性,这些都是可恶的挑战。
IT 部件的故障也意味着整个组织损失金钱。 然而故障必然会发生。 原生云的世界里,我们转换思路来解决这个问题。 DevOps 组织不是试图避免故障,而是承认故障是生活的一部分,重新设计程序让它能够优雅地恢复,从而减小故障的影响。 为实现这一点,用平均恢复时间(Mean Time To Recovery, MTTR)作为关键指标。 通过最小化从故障中恢复所需的时间,从将每次故障的影响降至最低。 优化 MTTR 需要流程自动化。 恢复的流程必须一致且可靠。