混沌实验
chaos-experiment
/chaos-experiment
使用 chaos-engineering 技能逐步设计混沌工程实验。该流程将生成方案、计算爆炸半径、验证终止条件,并输出一份可供同行评审的 Markdown 计划书。
用法
code
/chaos-experiment
/chaos-experiment --target checkout-svc --attack latency实现
bash
SKILL=engineering/chaos-engineering/skills/chaos-engineering
步骤 1:交互式收集输入(目标、假设、攻击方式、幅度...)
步骤 2:运行 experiment_designer.py 生成方案
python "$SKILL/scripts/experiment_designer.py" \
--target "$TARGET" --hypothesis "$HYPOTHESIS" \
--attack "$ATTACK" --magnitude "$MAGNITUDE" \
--duration-min "$DURATION" \
--abort-if "$ABORT" --owner "$OWNER" \
--format json > .chaos-plan.json
步骤 3:针对团队的错误预算计算爆炸半径
python "$SKILL/scripts/blast_radius_calculator.py" \
--traffic-share "$TRAFFIC_SHARE" \
--user-pop "$USER_POP" \
--duration-min "$DURATION" \
--baseline-availability "$BASELINE_AVAIL" \
--expected-impact-availability "$IMPACT_AVAIL"
步骤 4:渲染 Markdown 方案以供同行评审
python "$SKILL/scripts/experiment_designer.py" \
--target "$TARGET" --hypothesis "$HYPOTHESIS" \
--attack "$ATTACK" --abort-if "$ABORT" --owner "$OWNER"输出
一份包含以下内容的 Markdown 方案:
- 假设、稳态指标、攻击方式、幅度、持续时间
- 爆炸半径(计算得出)及风险评分(绿色/黄色/红色)
- 从
--abort-if解析出的终止条件
- 回滚步骤
- 监控仪表盘链接
- 学习问题
前置条件
- 已安装
chaos-engineering技能
- 已确定目标
- 稳态指标和仪表盘可用
- On-call 团队在岗
- 已知错误预算(或使用默认值)
后置条件
- 写入
.chaos-plan.json文件,以便后续由experiment_postmortem.py使用
- 输出 Markdown 方案以供评审
- 打印建议:PROCEED(执行)/ REDUCE(缩减)/ ABORT(终止)