linux 故障注入_基于chaosblade的故障注入平台小试

本文介绍了在互联网服务中保障服务稳定性的需求,通过混沌工程进行故障注入演练,以提升服务的可靠性。重点介绍了ChaosBlade这款工具,它支持丰富的故障场景,并提供了简单的CPU、内存、磁盘和网卡故障注入示例,建议测试工程师关注服务层的故障注入演练。
摘要由CSDN通过智能技术生成
5be8148cee085530d2f9bdd5d2c6ddb0.png

点击上方关注我们!

当今社会互联网应用越来越广泛,用户量日益剧增。在人们对互联网服务的依赖性增大的同时,也对服务的可用性和体验感有了更高的要求。那么如何保障服务在运营过程中能一直给用户提供稳定的、不间断的、可靠可信的服务呢?

例如一个教育或者加金融系统产品,如果线上出现了故障,那么可能带来巨大的损失。由于金融产品或者教育类系统架构和业务逻辑是相当复杂和链条厂,因此我们测试工程师通过单元测试、接口测试、集成测试、性能测试等来验证服务的稳定性。但尽管如此,也是远远不够的,因为错误可以在任何时间以任何形式发生,尤其是对分布式系统。所以现在很多公司开始引入混沌工程(馄饨工程国内最佳实践公司目前是阿里,大家有兴趣可以去网上看下阿里混沌工程相关实践经验),由于混沌工程需要不断的投入和积累,所以我们测试部门为了模仿和预防线上故障演练,可以先进行故障注入演练,这样成本最小,收益也最大化。

阿里按照优先分析P1和P2故障,按照IaaS、PaaS、SaaS层的角度绘制了故障画像,如下图:

dd178e70fd1334faa296523c4658ac30.png

目前业内模拟故障的工具比较多样化,支持的功能和场景也各有优劣。通过对比来看,chaosblade支持功能和场景比较丰富,同时社区也是比较活跃的,我们可以选择这个尝试一下

154264fbf54ec3227f0e3ee9f05e2ad7.png

chaosblade 所支持的场景,可以参考文档:

https://chaosblade-io.gitbook.io/chaosblade-help-zh-cn/

b3ed26d1807c869f8730e15a3dcf375d.png

下面进行简单的故障模拟

下载路径

https://github.com/chaosblade-io/chaosblade/releases

解压即用,无需安装

tar -zxvf chaosblade-0.9.0.linux-amd64.tar.gz

CPU压力注入:

80e0c9a2ebed8618feef1ad173b93b0c.png

结果如下:

40301af43eb641df64d28807e156def3.png

内存压力注入:

fd66ee55de82efac33475b12c9d84362.png

效果如下:

d097472944869c250e8c7034120ac3ca.png

磁盘压力注入:

84660f38e5c8a993e4a99e1fb29c1642.png

效果如下:

4aebdff14b195d205ef013e54dcc36c8.png

网卡故障注入:

2579c03be1132d897245f6603c46d08c.png

观察接口的话,能看到接口响应时间明显变长

91aa2cfc326d985b814e885efd898450.png

以上只是chaosblade最基本的故障注入演示,其他演练大家可以自行尝试,特别是服务层的故障注入演练作为我们测试同学是应该重点去关注和优先去尝试的,再次强烈建议大家在公司内部尝试服务层故障注入演练~

大家如果对故障演练有什么疑问或者研究的可以添加管理员微信,一起交流探讨。

添加微信

880d9b62c58fc0a1cda608f588f4be37.png

加入讨论

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值