混沌工程

437 阅读1分钟

混沌工程

混沌工程(Chaos Engineering)是在分布式系统上进行实验的学科,是一种未雨绸缪的心态。由薄弱的环节上,做到自我发现。特点是放置一个炸弹进去,控制爆炸半径评估损伤和自我修复能力。

Netflix提出Chaos Monkey

混沌原则

在开发混沌工程实验时,可遵循以下原则,将有助于实验设计︰

  • 建立稳定状态的假设;
  • 持续自动化运行实验;
  • 多样化现实世界事件;
  • 最小化“爆炸半径”
  • 在生产环境运行实验;

识别业务系统的稳定性指标,并建立观测体系(监控)

最小化爆炸半径

  • 按照影响从小到大进行演练
  • 控制演练业务的故障半径(称为爆炸半径),防止从演练转化为线上事故

在真实生产环境演练

  • 最终要在生产环境中演练,这才是最真实的结果
  • 但可以从非在线开始,逐步进行到线上环境

例行化演练

  • 因为业务系统也是在持续变化的,因此需要例行化、自动化进行演练

模拟现实中真实会发生的故障

图片.png