做一次混沌实验

简介: 要做一次混沌实验,我们只需要做到如下的 4 个步骤:

要做一次混沌实验,我们只需要做到如下的 4 个步骤:

定义系统的稳态,这个稳态就是系统在正常运行的时候一些指标,譬如当前请求的 QPS,latency 这些。
将系统分为实验组以及对照组,做出一个假设,譬如我在实验组引入一个故障,这个稳态仍然能在实验组保持。
执行试验,给实验组引入现实世界中的故障,譬如拔掉网卡。
验证第 2 步的假设是否成立,如果实验组的稳态跟对照组不一样了,证明我们的系统在第 3 步的故障中不能很好的容错,所以我们需要改进。
可以看到,上面的步骤非常的简单,但要在实际从很好的做混沌试验,还是有一些困难的,主要在以下几点:

自动化,我们需要有一套自动化的系统帮我们进行故障注入,进行假设对比等。
尽可能多的引入不同故障。现实环境中可能会出现非常多的故障,仅仅不是拔网线这么简单,所以引入的故障越多越好。
业务方无感知。如果我们每次做混沌试验,都要业务系统去配合,譬如在业务里面写一些混沌相关的代码,让混沌试验调用,或者更改系统的部署逻辑,跟混沌试验配合,这种的就属于紧耦合的。

目录
相关文章
|
11月前
|
网络协议 应用服务中间件 Apache
阶段性实验汇总
5、6号机连通网络后查看是否已经获取到ip
81 0
|
5月前
|
机器学习/深度学习 C++
技术心得:实验33333333
技术心得:实验33333333
17 0
|
Web App开发 存储 C++
C++程序设计实验5
C++程序设计实验5
63 0
|
存储 C++
C++程序设计实验3
C++程序设计实验3
108 0
|
C++
C++程序设计实验6
C++程序设计实验6
91 0
|
监控 数据可视化 开发者
[译]混沌游戏日:混沌的手把手指南
> 原文:Chaos Gamedays: A Step-by-Step Guide to Chaos > [https://dzone.com/articles/chaos-gamedays-a-step-by-step-guide-to-chaos](https://dzone.com/articles/chaos-gamedays-a-step-by-step-guide-to-ch
495 0
|
Devops 测试技术
【混沌工程】混沌工程原理
混沌工程是在系统上进行实验的学科,目的是建立对系统承受生产中动荡条件的能力的信心。 大规模分布式软件系统的进步正在改变软件工程的游戏规则。作为一个行业,我们迅速采用提高开发灵活性和部署速度的做法。紧随这些好处之后的一个紧迫问题是:我们对投入生产的复杂系统有多少信心?
|
存储 数据库 数据安全/隐私保护
GuassDB部署实验
本文讲述了如何将部署GaussDB(for OpenGauss)
589 0
|
Scala
Scala编程实验三
Scala编程实验三
146 0
Scala编程实验三
|
自然语言处理 Kubernetes 监控
ChaosBlade:从混沌工程实验工具到混沌工程平台
ChaosBlade 是阿里巴巴 2019 年开源的混沌工程项目,已加入到 CNCF Sandbox 中。起初包含面向多环境、多语言的混沌工程实验工具 ChaosBlade,到现在发展到面向多集群、多环境、多语言的混沌工程平台 chaosblade-box,平台支持实验工具托管和工具自动化部署,通过统一用户实验界面,将用户的精力聚焦在通过混沌工程解决云原生过程中高可用问题上。本文从混沌实验模型抽象、混沌实验工具开源和混沌工程平台升级项目三阶段出发,详细介绍 ChaosBlade。
671 7
ChaosBlade:从混沌工程实验工具到混沌工程平台