知识卡片

未经测试的回滚等于没有回滚

普通读书笔记卡 · 1598

内容

一次主动破坏性测试中,团队试图靠回滚恢复被屏蔽的数据库访问权限,却发现回滚没有成功——这条恢复路径此前从未被真正验证过。最终靠一个此前测试过的方案在灾备系统上恢复了访问。事后,团队把”大型测试前必须先验证回滚机制是否可用”定为强制要求。发散:回滚方案和功能代码一样需要被测试覆盖,不是”以防万一”的心理安慰——只有实际演练过,”有预案”和”预案能用”的鸿沟才能被弥合。

参考来源

- 位置:《SRE:Google运维解密》第13章《紧急事件响应》(源文件:_epub-src/OEBPS/Text/0009_0004.xhtml) - 结论依据:测试导致的紧急事故案例中,团队用回滚恢复访问权限"意外地发现这项操作没有成功",事后总结的"做得不好的地方"明确指出没有在测试环境中测试回滚机制导致事故时长被延长,并要求今后大型测试前先测试回滚。 - 原始内容:我们试着通过回滚来恢复访问权限,但是意外地发现这项操作没有成功。……由于我们没有在测试环境中测试回滚机制,没有发现这些机制其实是无效的,导致了事故总时长被延长了。我们现在要求在大型测试中一定先测试回滚机制。