写点什么

ChaosConf 2018:混沌实验的演变

  • 2018-10-14
  • 本文字数:1130 字

    阅读完需:约 4 分钟

在美国旧金山举行的首届 ChaosConf 大会上,Kolton Andrus 做了一个有关混沌实验在过去八年中如何演变的演讲。他认为,与处理故障有关的人力和组织方面的内容不应该被忽略,并建议工具应该支持应用程序和请求级别的故障注入测试,以便最小化潜在的故障影响范围。

Andrus 是 Gremlin 的首席执行官,他通过谈论混沌实验在行业内的演变拉开了活动的帷幕。他将“level 0”实验视为为云端的主机故障做准备。这需要较低的成熟度,而且通常需要使用诸如 Chaos Monkey 之类的工具将主机故障随机地注入到系统中。随着实践的成熟,“level 1”和“level 1.5”实验的实现变得训练有素,并且将额外的重点放在试验网络故障上。这需要网络专业知识和更高级的运营成熟度。

与处理故障有关的人力和组织方面的内容也成为 level 1.5 的一个焦点。这里的实验通常是通过“游戏日”来实现的,这些游戏日提供了训练机会,并模拟故障,以便观察人们在真实情况下的反应。Andrus 警告说,并非所有组织都认识到发展组织应对故障能力和对员工进行适当训练的价值:

我工作过的很多公司在进行轮班待命训练时,摆出一副“这里是你的寻呼机和仪表盘——祝你好运”的姿态。这是不可接受的。

接下来,Andrus 表示,主机测试和基于 OSI Layer 3 和 Layer 4 的网络测试对于很多想要运行混沌实验的组织来说是不够的,因为需要更精细的粒度来限制影响并安全地测试应用程序。他说,“运营人员通常考虑的是请求级别的东西”,为了使用请求级别的数据和元数据来选择性地控制测试和实验,工具需要知道应用级别( Layer 7 )的东西。

在这个时候,Andrus 宣布了 Gremlin 的新应用级故障注入(ALFI)产品。ALFI 支持“level 2”的实验。这是通过在系统中指定“坐标”并匹配针对一组目标运行的实验来实现的。坐标包括应用程序的关注点,例如用户标识符或 A/B 测试,以及平台的关注点,例如服务或地理区域。工程师还可以使用自定义实现来定义自己的坐标。

在演讲结束时,Andrus 总结说,有针对性的坐标可以用来最小化实验的潜在影响范围,并且可以在不干扰整个系统的情况下重现生产环境的中断。应该以迭代的方式安全地扩展实验:

  1. 使用测试用户或设备验证用户体验;
  2. 运行 1%的流量,对影响进行评估;
  3. 运行 10%的流量;
  4. 扩展到 25%、50%、100%。

也可以使用类似的模式来重现中断:

  1. 发生中断时,请假设一个原因;
  2. 创建一个针对单个测试用户的实验;
  3. 以测试用户身份登录并加载页面或应用程序;
  4. 找到日志或证据并验证假设;
  5. 创建拉取请求以修复问题。

有关首届 ChaosConf 的详细信息可以在大会网站上找到,演讲的录像可以在 Gremlin 的 YouTube 频道“ ChaosConf 2018 ”中找到。

查看英文原文 An Evolution of Chaos Experimentation: Kolton Andrus at ChaosConf 2018

2018-10-14 19:001519
用户头像

发布了 731 篇内容, 共 474.8 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

跨文件,跨函数能力是什么?和污点分析能力有什么关系?

编程 软件开发 华为云 华为开发者大会2023 代码检查

如何用好强大的 TDengine 集群 ? 先了解 RAFT 在 3.0 中的应用

爱倒腾的程序员

涛思数据 时序数据库 ​TDengine

全球数字经济大会重磅发布!网心科技入选2023年中国云生态蓝皮书

网心科技

多线程知识:三个线程如何交替打印ABC循环100次

越长大越悲伤

Java 面试 多线程

聚焦信息技术发展,博睿数据受邀出席产业链供需对接深度行北京站活动

博睿数据

可观测性 产业链 信息技术 智能运维 博睿数据

如何利用ChatGPT革新智能合约和区块链

互联网工科生

区块链 ChatGPT

白盒、黑盒、SAST、DAST傻傻分不清?

华为云 华为开发者大会2023 代码检查

千万级学生管理系统的考试试卷存储方案

sandywrh

使用 ChatGPT 辅助程序员进行代码评审 | 社区征文

汪子熙

程序员 AI ChatGPT ChatGPT4 年中技术盘点

CSS 属性选择器,前端开发的效率好物

伤感汤姆布利柏

Linux XArray详解

Linux内核拾遗

数据结构 Linux Kenel

OpenTiny7月8日即将正式发布!

OpenTiny社区

开源 Vue 前端 组件库

AI推理实践丨多路极致性能目标检测最佳实践设计解密

华为云开发者联盟

华秋约定您!7月11-13日慕尼黑上海电子展不见不散~

华秋电子

汽车电子国产化,华秋助力国产电源IC高质量发展

华秋电子

BOM/PCB/Gerber比对功能再升级,华秋DFM新版邀您体验!

华秋电子

数据库领域2023上半年盘点

亚信AntDB数据库

数据库 AntDB AntDB数据库

加速你的业务增长:选择香港云主机的六大理由!

一只扑棱蛾子

香港云主机

国产替代:国有企业数智化转型的挑战与机遇

用友BIP

国产替代

人脸识别技术在智能交通管理中的应用

数据堂

【6.30-7.7】写作社区优秀技术博文一览

InfoQ写作社区官方

热门活动 优质创作周报

Go语言:通过TDD测试驱动开发学习 Mocking (模拟)的思想

不在线第一只蜗牛

TDD Go 语言

那天,我收到了一封钓鱼邮件...

权说安全

ChaosConf 2018:混沌实验的演变_服务革新_Daniel Bryant_InfoQ精选文章