混沌工程工具:混沌工程实施过程及持久价值(7)

2023-10-10 15:12:16 浏览数 (1)

背景

通过前面对混沌工程工具的详细分析,我们已经对如何进行故障注入有了更明晰的了解。然而,本文将详细介绍混沌工程的具体实施过程,以便提供全面的指导。

混沌工程工具系列传送门:

1、 混沌工程工具:Chaos-mesh与Chaosblade技术实现与原理分析(1)

2、 混沌工程工具:chaos-mesh注入项原理分析(2)

3、 混沌工程工具:chaosblade在服务器上注入项原理分析(3)

4、 混沌工程工具:业务代码注入原理(4)

5、 混沌工程工具:Chaosblade Java业务代码注入原理(5)

6、 混沌工程工具:混沌工程实施过程及持久价值(7)

7、 混沌工程工具:混沌工程定位及原则梳理(8)

8、 混沌工程工具:一个混沌工程设计的例子(9)

混沌工程实施过程

实施过程

一次完整的实验包括实施前准备、实施中管控和实施后复盘提炼,下面是我认为的要点及阶段的目标

阶段

要点

目标

实施前

1、 完成实验点高可用建设 2、 完成实验方案中实验准备工作:稳态可观测性、演练方法、爆炸半径、快速结束实验能力及假说不成立的处理 3、 依据爆炸半径原则,选择合适时间点进行实验 4、 人员协调,落实演练主持人员、执行人员、记录人员

完成实施实验的所有前置条件

实施中

1、 记录好开始时间、稳态指标、结束时间等 2、 应急处理突破稳态的实验,如处理不合格则终止实验 3、 记录好假说失败时的现场日志 4、 记录好对有限条件的冲击,比如实验是否对金融监管造成冲击

可详细还原实验过程

实施后

1、 提炼过程中发现的系统问题,实验结果,输出商业价值 2、 共享混沌工程方案设计、实施记录、结果信息 3、 根据混沌工程原则,进行混沌工程改进

形成可持续的混沌工程文化

实施后详细动作

商业价值评估

我们做系统建设,最终的目标就是取得商业上的成功。那推广混沌的最好方式就是,把混沌的收益和商业价值挂钩。如何评估可以考虑下面信息。

分类

子类

评估内容

稳定性分析

定性分析

比较注入故障时的系统指标和稳态指标的差异

定量分析

➢ 系统性能指标:P=E/E0,E 为实验组性能指标,E0为稳态时性能指标 ➢ 系统恢复率:R = ER/E,ER为移除扰动后系统性能指标,E为 系统稳态性能指标

系统缺陷

各维度原因

➢ 对系统弱点进行分析 ➢ 对故障应对过程中的不足进行分析 ➢ 对系统的故障承受能力分析 ➢ 对监控告警的有效性进行分析 ➢ 对模块间的依赖关系进行分析

商业价值

参与人反应

参与前后调研问卷对比

执行实验结果

从稳定性分析/系统缺陷体现,最好结合已有故障的影响,针对实验遇到问题作出预估的业务侧影响。

缺陷改善

➢ 已发现问题都修复 ➢ 新开发程序都没有发现已知问题

业务结果

长期观察系统运行情况,建立混沌工程与故障时长、频次、恢复速度的关联关系主要依据是故障真的发生时,系统因为做过实验而逃过一劫

开放信息

参与混沌实验活动的仅是部分部门、部分人员,如何让混沌的实施过程,完整的在组织内展示,就需要把实验过程中的信息,做开放公示。具体就是以Wiki的形式呈现系统的实验设计方案、方案执行细节、监控图示、执行过程以及执行结果等相关资料,旨在鼓励更多人积极参与,共享知识。

输出报告

我们详细记录实验的全过程,包括商业价值的收获、开放实验的进展情况以及未来改进方向,并以报告的形式向大家提供详尽的信息、也便于在公司内做价值呈现,获得更广泛的支持。最终提升混沌工程的覆盖度、影响力

混沌工程的持久价值

确保灾备计划的有效性性。通过持续的实验设计、执行以及后续总结等方面的建设,以及根据演练结果不断改进演练方案、做好系统建设,我们能够确保客户可以自主并持续地进行实验。这有助于确保容灾计划的长期有效性。

我正在参与2023腾讯技术创作特训营第二期有奖征文,瓜分万元奖池和键盘手表

0 人点赞