阿里开源混沌工程工具 ChaosBlade
近日,阿里开源了混沌工程工具 ChaosBlade。该项目是遵循混沌工程(Chaos Engineering)原理的实验工具,用于模拟常见的故障场景,帮助提升分布式系统的可恢复性和对故障的容错性。
高可用架构是保障服务稳定性的核心。ChaosBlade 经历了 6 年时间的改进和实践,累计在线上执行演练场景达数万次,阿里官方将阿里巴巴在故障演练领域的创意和实践,浓缩成了一个混沌工程工具,并将其开源。
阿里巴巴集团在混沌工程领域已经实践多年,将混沌实验工具 ChaosBlade 开源目的,目的是:
-
让更多人了解并加入到混沌工程领域;
-
缩短构建混沌工程的路径;
-
同时依靠社区的力量,完善更多的混沌实验场景,共同推进混沌工程领域的发展。
ChaosBlade 能解决哪些问题
△ ChaosBlade 的组件架构
衡量微服务的容错能力
通过模拟调用延迟、服务不可用、机器资源满载等,查看发生故障的节点或实例是否被自动隔离、下线,流量调度是否正确,预案是否有效,同时观察系统整体的 QPS 或 RT 是否受影响。在此基础上可以缓慢增加故障节点范围,验证上游服务限流降级、熔断等是否有效。最终故障节点增加到请求服务超时,估算系统容错红线,衡量系统容错能力。
验证容器编排配置是否合理
通过模拟杀服务 Pod、杀节点、增大 Pod 资源负载,观察系统服务可用性,验证副本配置、资源限制配置以及 Pod 下部署的容器是否合理。
测试 PaaS 层是否健壮
通过模拟上层资源负载,验证调度系统的有效性;模拟依赖的分布式存储不可用,验证系统的容错能力;模拟调度节点不可用,测试调度任务是否自动迁移到可用节点;模拟主备节点故障,测试主备切换是否正常。
验证监控告警的时效性
通过对系统注入故障,验证监控指标是否准确,监控维度是否完善,告警阈值是否合理,告警是否快速,告警接收人是否正确,通知渠道是否可用等,提升监控告警的准确和时效性。
定位与解决问题的应急能力
通过故障突袭,随机对系统注入故障,考察相关人员对问题的应急能力,以及问题上报、处理流程是否合理,达到以战养战,锻炼人定位与解决问题的能力。
功能和特点
场景丰富度高
ChaosBlade 支持的混沌实验场景不仅覆盖基础资源,如 CPU 满载、磁盘 IO 高、网络延迟等,还包括运行在 JVM 上的应用实验场景,如 Dubbo 调用超时和调用异常、指定方法延迟或抛异常以及返回特定值等,同时涉及容器相关的实验,如杀容器、杀 Pod。后续会持续的增加实验场景。
使用简洁,易于理解
ChaosBlade 通过 CLI 方式执行,具有友好的命令提示功能,可以简单快速的上手使用。命令的书写遵循阿里巴巴集团内多年故障测试和演练实践抽象出的故障注入模型,层次清晰,易于阅读和理解,降低了混沌工程实施的门槛。
场景扩展方便
所有的 ChaosBlade 实验执行器同样遵循上述提到的故障注入模型,使实验场景模型统一,便于开发和维护。模型本身通俗易懂,学习成本低,可以依据模型方便快捷的扩展更多的混沌实验场景。
△ ChaosBlade 场景覆盖图
近期规划
主要是功能迭代,包括:
-
增强 JVM 演练场景,支持更多的 Java 主流框架,如 Redis,GRPC;
-
增强 Kubernetes 演练场景;
-
-
增加对 C++、Node.js 等应用的支持。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Facebook 用户数据泄露,来源指向第三方应用
Facebook 的隐私问题受许多人关注。近日有安全人员发现两个 Facebook 集成应用的数据集,这些应用不受保护地在 Amazon S3 服务器上存储。 其中一个应用来自名为 Cultura Colectiva 的墨西哥公司,该公司存储了 146 GB 大小的用户数据,总计超过 5.4 亿条记录,其中包括喜欢、评论、反应、Facebook ID 等。研究人员通知了 Cultura Colectiva 和亚马逊网络服务部门,让他们知道数据公开曝光这件事。第一封电子邮件通知在今年 1 月 10 日发出,然而直到今天,数据库才得到了保障。 另一个 Facebook 应用名为 At the Pool,是一个小型应用,却存在着更大的安全隐患。该应用泄露的数据在用户、事件、书籍等项之外,还包含着以纯文本格式存储的 22,000 个密码。这个数据库配置为允许公共下载文件,因此可能比前个应用更危险。 好消息是这家应用背后的公司更快地解决了用户数据泄露的问题,甚至在安全人员通知开发者之前,数据就得到了保护。目前尚不清楚数据暴露了多长时间,可以确定的是该应用实际上在 2014 年就关闭了,其母公司网...
- 下一篇
Unomi 成为 Apache 软件基金会顶级项目
3 月 21 日,Apache 软件基金会宣布 Apache Unomi 成为顶级项目。 Apache Unomi 是一个基于标准的客户数据平台(CDP,Customer Data Platform),用于管理在线客户和访客等信息,以提供符合访客隐私规则的个性化体验,比如 GDPR 和“不跟踪”偏好设置。其最初于Jahia 开发,2015 年 10 月提交给了 Apache 孵化器。 Apache Unomi 具有隐私管理、用户/事件/目标跟踪、报告、访客资料管理、细分、角色、A/B 测试等功能,它可以作为: Web CMS 个性化服务 原生移动应用的分析服务 具有分段功能的集中配置文件管理系统 授权管理中心 Apache 基金会发布的公告中介绍了更多相关内容,点击查看。
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果