以线上事故驱动混沌工程更能展现价值
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
混沌工程实践总结与启发
混沌工程的实践旨在提升云生产环境下应对线上事故的时效性和有效性。通过与故障注入测试相结合,混沌工程实验在证实稳态行为假说后,有助于转化为更具体的测试。线上事故驱动的混沌工程实验能更有效地体现混沌工程的价值,特别是当选择的事件是严重级别高且业务影响时间长的线上事故时。
企业混沌工程实践的痛点
尽管许多企业在业务上云后仿效奈飞公司的混沌工程实践,并有工具厂商提供工具支持,但实践中仍然存在缺陷。一些企业缺乏针对性的设计,导致混沌工程实验变成基础设施层面的故障注入探索性测试,而未能充分发现未知的复杂系统失效模式。
混沌工程实验与故障注入测试的互补性
混沌工程实验的目的是证实或证伪稳态假说,并研究系统的运行模式及未知失效模式。与此相辅相成的故障注入测试,是验证稳态假说在代码变更后仍然成立,并确保系统的自愈和监控告警的长期有效性。
设计良好的稳态假说
一个有效的稳态假说应具备全局性、用户价值性和可证实性。尽管有些团队在执行混沌工程实验时忽略了稳态假说的书写,但这增加了实验结果评判的困难,因为缺乏用户视角和具体的可证实性。
度量混沌工程实践的成效
通过以线上事故为驱动,混沌工程的成效可以通过覆盖线上事故的系统缺陷和监控告警改进点后,计算挽回的业务不可用时长和相应的经济损失来度量。成功的度量标准包括所覆盖的线上事故业务不可用时长、单位时长所造成的经济损失金额和实验执行次数。
选择适合的线上事故进行混沌工程实验
不同IT部门可以基于本部门的关注点从以往线上事故中选择适合的事件来驱动混沌工程实践。对于运维部门而言,应优选严重级别高且业务影响时长长的线上事故来设计实验。
总结
由于运维部门与线上事故的紧密关联,以线上事故为驱动的混沌工程实践能够更直观地展示其价值。通过故障注入测试验证基础设施的自愈功能,选择适当的线上事故进行稳态假说的实验证实,并在缺陷修复后执行回归测试,这些步骤能有效度量混沌工程实践的成效。
想要了解更多内容?