可靠性测试-故障注入工具

打印 上一主题 下一主题

主题 918|帖子 918|积分 2754

故障注入是一种模拟故障的技能,用于测试体系在各种异常情况下的反应和恢复能力。Chaos Blade 是阿里巴巴开源的混沌工程工具,用于在云原生环境中举行故障注入。它支持多种故障类型,包罗主机、网络、应用和 Kubernetes 资源等。
本篇第一部分,我们手动执行故障注入,可以直接举行手动可靠性测试,背面再或通过python、java等将可靠性用例制自动化。
1. Chaos Blade下载,安装
  1. wget https://github.com/chaosblade-io/chaosblade/releases/download/v1.0.0/chaosblade-1.0.0-linux-amd64.tar.gz
  2. tar -zxvf chaosblade-1.0.0-linux-amd64.tar.gz
  3. sudo mv blade /usr/local/bin/
  4. # 验证安装
  5. blade -h
复制代码
2. 使用Chaos Blade手动注入故障
1. 主机级故障注入
  1. # CPU 压力测试:模拟 CPU 高负载情况
  2. blade create cpu fullload --cpu-percent 80 --timeout 60
  3. # 内存压力测试:模拟内存高占用情况
  4. blade create mem load --mem-percent 80 --timeout 60
  5. # 磁盘 I/O 压力测试
  6. blade create disk burn --read --path / --timeout 60
复制代码
2. 网络级故障注入
  1. # 在指定的网络接口上注入网络延迟
  2. blade create network delay --interface eth0 --time 3000 --timeout 60
  3. # 在指定的网络接口上注入网络丢包
  4. blade create network loss --interface eth0 --percent 50 --timeout 60
  5. # 在指定的网络接口上限制网络带宽
  6. blade create network loss --interface eth0 --rate 1000kbit --timeout 60
复制代码
3. k8s资源故障注入
  1. # 随机删除一个 Pod
  2. blade create k8s pod --namespace default --labels app=myapp --timeout 60
  3. # 对 Pod 网络注入延迟
  4. blade create k8s network delay --namespace default --labels app=myapp --interface eth0 --time 3000 --timeout 60
复制代码
4. 故障状态检察、故障取消
  1. blade status
  2. blade destroy <experiment-id>
复制代码
5. 通过yaml方法举行故障注入:安装 Chaos Blade Operator,如许可以通过 YAML 文件来管理故障注入实验。
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

去皮卡多

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表