sublime Text 不是混沌工程平台,仅可作为编写和管理混沌实验脚本的编辑器;它不执行故障注入,需配合 Chaos Mesh、ChaosBlade 等工具在真实环境中运行,并通过监控验证系统韧性。

sublime text 本身不是混沌工程(Chaos Engineering)平台,它只是一个轻量级代码编辑器,不具备执行系统级故障注入(如杀进程、断网、延迟响应、内存溢出等)的能力。因此,不能直接在 Sublime 中“进行混沌工程”或“编写脚本注入故障”——它不运行脚本、不连接目标环境、也不具备权限控制或可观测性集成能力。
混沌工程需要什么工具链?
真正的混沌工程依赖专用工具和运行时环境,Sublime 只能作为编写、查看、管理相关脚本的辅助编辑器。关键组件包括:
- 故障注入引擎:如 Chaos Mesh(K8s)、LitmusChaos、Gremlin(SaaS)、ChaosBlade(linux/java)、toxiproxy(网络层模拟)
- 可执行脚本/配置:用 YAML(Chaos Mesh)、jsON(Gremlin API)、Shell/python(自定义故障)编写,Sublime 可用来高效编辑这些文件
- 执行环境:需在目标服务器、容器或集群中实际运行注入命令(例如
kubectl apply -f network-delay.yaml或chaosblade create docker delay --time 5000 --container-id xxx) - 监控与验证:配合 prometheus、grafana、日志系统观察系统行为变化,判断韧性是否达标
你可以在 Sublime 做什么?(实用定位)
把 Sublime 当作混沌工程的“脚本工作台”,专注提升编写效率和可维护性:
- 安装插件如 YAML、ShellScript、Python、git Gutter,获得语法高亮、自动补全、diff 提示
- 用 Project 功能组织不同系统的混沌实验目录(如
/chaos/web-api/、/chaos/db/),含 spec、脚本、checklist、结果记录 - 编写可复用的 Shell/Python 封装脚本,例如:
./inject-latency.sh service-a 200ms 10%—— Sublime 编辑后,终端里执行 - 保存常用 YAML 模板片段(如 PodChaos 网络丢包模板),用 Snippets 插件一键插入
一个简单但真实的例子:用 Sublime 编写 + 终端执行
假设你要对本地 Docker 容器模拟网络延迟:
- 在 Sublime 中新建
delay-redis.yaml,输入 ChaosBlade CLI 的 json 配置(或写成 Shell 脚本调用blade create docker network delay) - 保存后打开终端,执行:
blade create docker network delay --time 3000 --Interface eth0 --container-id $(docker ps -qf "name=redis") - 同时在另一窗口用
curl或压测工具观察 Redis 响应变化,用 Grafana 查看指标抖动 - 实验结束,在 Sublime 打开
recover-redis.sh并运行blade destroy ...恢复
基本上就这些。Sublime 是笔,不是锤子;混沌工程是实验过程,不是编辑动作。把脚本写清楚、留好回滚步骤、配好观测手段——故障注入本身,总得交给有权限、有上下文、有反馈通道的运行环境去完成。