1.注册账号
进入ChaosBlade-Box平台 http://127.0.0.1:7001/ 并注册账号
2.平台概览
演练空间是对演练进行的管理与统计,并且可以进行一个演练的编排和故障的注入。
演练场景会在这一块会列出来所有支持的一个演练场景是什么。
演练经验是把之前演练的那些场景保存为演练经验,以便重复演练。
应用管理会对探针上报的一些数据,上报数据上的所有的应用,在应用管理这块进行一个统一的管理。
探针管理会对探针进行一个自动的安装和卸载以及管理的一些功能,这里面也是支持主机和k8s的环境。
3.演练场景和经验库
演练场景会展示混沌工程执行工具支持的所有场景,并按不同环境进行区分展示。平台支持将编排后的演练沉淀为经验,并提供演练经验库进行管理,方便其他用户直接进行演练。
4.演练编排
平台支持两种流程编排类型,分别是:“顺序执行”和“阶段执行”,其中“顺序执行”就是多种故障依次生效,“阶段执行”就是多种故障同时生效后再同时恢复。
5.演练结果 & 安全防控
在演练结果页面中能查看到演练的整体进度,并能进行单个机器的结果、错误信息、执行日志和参数配置等查询。为保障演练一定能得到恢复,提供了自动停止和手动触发两种方式来终止演练的保护策略,下发超时参数,即便平台侧和 Agent 失联,无法下发恢复命令,也能超时恢复,避免系统问题导致演练之外的意外故障
6.执行演练步骤(主机)
(1) 在目标机器上安装探针
wget https://chaosblade.oss-cn-hangzhou.aliyuncs.com/platform/release/1.0.2/chaosagent.tar.gz -O chaos.tar.gz
然后执行以下命令:
tar -zxvf chaos.tar.gz -C /opt/ && sudo sh /opt/chaos/chaosctl.sh install -k a22803fc8*4d9553fc3 -p [应用名] -g [应用分组] -t 172.20.70.121:7001
其中 -k 后的license替换为自己账号的license,此license可以在 探针管理-手动安装探针-主机 页面中找到
执行后看到如下结果表示探针安装成功
2023-11-02 15:51:39 [INFO] [+stop] chaos is stopped.
2023-11-02 15:51:39 [INFO] [+crontab] add crontab cmd
2023-11-02 15:51:39 [INFO] [+starting] chaos is starting...
2023-11-02 15:51:40 [INFO] success
此时在刷新探针管理页面,即可看到目标主机已成功添加进来
(2) 创建演练
-
控制台左侧导航栏中选择 我的空间。
-
在我的空间页面左上角单击新建演练,然后单击新建空白演练。
-
在演练配置页面,填写演练名称、演练描述和演练标签。
-
在配置页签的演练对象区域完成以下配置。
-
在演练对象页面设置分组名称、资源类型和机器列表等。
**说明:**机器列表中可以选择一台或多台机器。 -
单击 + 添加演练内容,然后选择需要演练的内容,此处选择主机内 CPU 满载,然后单击确定。单击演练中的卡片可以进行配置。
-
单击保存,然后单击下一步。
• 在全局配置页面完成以下配置。
-
选择演练流程为顺序执行。(顺序执行和阶段执行的区别在第四节演练编排有说明)
-
设置自动恢复时间为 15 分钟。
• 单击下一步。
(3) 执行演练
- 在左侧导航栏中选择故障演练 > 我的空间。
- 在我的空间中单击目标演练任务右侧操作列的演练,然后在开始执行演练对话框中单击确认。可以看出故障开始注入之后,在目标机器上执行 top 命令,可以看到 CPU 指标开始增加,说明故障已经生效。
(4) 停止或推进演练
• 自动停止:当演练时间超过自动恢复时间,即可自动停止。可在演练页面保护策略区域查看自动恢复时间,本示例为 15 分钟。
• 手动停止或推进演练:在演练执行情况区域观察主机内Cpu满载卡片,卡片中显示"待手动推进节点"信息,则单"击待手动推进节点"右侧的继续图标进行下一步骤的演练。若需直接停止演练,则单击停止图标。
(5) 查看演练信息
演练结束后,您可以在演练详情页查看演练时长、演练参数等信息。
• 单击机器信息区域的参数,即可查看脚本方式制造 CPU 满载节点执行参数信息。
• 单击页面右上角的查看详情,可查看该演练任务的配置和演练日志信息。
7.演练示例(主机)
(1) Cpu满载演练
(2) 内存负载演练
(3) 网络丢包演练
(4) 故障并发演练(阶段执行)
添加多个演练内容
选择阶段执行
开始演练后点击 继续 依次实施所有演练内容
查看
8.使用命令行的方式模拟故障(主机)
-
wget https://chaosblade.oss-cn-hangzhou.aliyuncs.com/platform/release/1.0.2/chaosagent.tar.gz -O chaos.tar.gz
此压缩包中\chaosblade目录
或 使用
wget https://github.com/chaosblade-io/chaosblade/releases/download/v1.7.2/chaosblade-1.7.2-linux-amd64.tar.gz
查看是否可用:blade v
-
对主机环境进行校验,判断其是否满足 chaosblade 实验环境
blade check os
失败代表无法在此环境进行对应类型的演练
-
创建Cpu满载实验
blade create cpu fullload
/blade create cpu load --cpu-percent 100
-
销毁实验
blade destroy [uid]
uid 为创建实验时的result , 可以通过blade status --type create
查询
注:
详细命令使用说明请查看官方文档:
https://chaosblade.io/docs/getting-started/chaosblade-tool-quick-start/cli-mode-user-guide/