11 月 19 - 20 日 Apache Pulsar 社区年度盛会来啦,立即报名! 了解详情
写点什么

不交“认知税”,混沌工程顶层设计正走向规范

  • 2021-12-03
  • 本文字数:2760 字

    阅读完需:约 9 分钟

不交“认知税”,混沌工程顶层设计正走向规范

在 InfoQ 混沌工程系列访谈中,企业如今对混沌工程普遍的感知是:企业内部不同部门认知不统一,业内对混沌工程没有相对统一的评价标准。随着云基础设施的广泛应用,混沌工程不断与国内大公司碰撞出火花。2020 年初,中国信通院开始组织专家进行混沌工程技术研究,提出应用混沌工程方法来验证云原生系统的韧性架构。


随后在 2021 年 4 月 2 日,混沌工程项目研讨会议在京召开,发布《混沌工程平台能力要求》标准纲要。三个月后,中国信通院在可信云大会上,牵头成立了国内首个混沌工程实验室;2021 年 11 月,中国信通院联合混沌工程实验室成员单位完成国内首个《中国混沌工程调查报告》。中国信通院探索混沌工程在国内各领域典型应用场景中的实践落地,联动云计算上下游企业来共同推进混沌工程概念的快速普及。


InfoQ 就混沌工程采访了中国信通院云大所云计算部副主任陈屹力,以下是 Q&A 报道。

InfoQ:理解是实践的前提,您如何理解混沌工程的?


陈屹力:各个行业都迎来了数字化转型浪潮,随着企业对于云计算的理解和实践不断深入,基于云计算的分布式架构已经越来越多地成为企业应用构建的首选方案。


随着应用云原生化的推进,业务系统的迭代速度会越来越快,后端系统架构变得复杂,服务之间的依赖增多,调用链路增长。利用“混沌工程”技术来保证生产环境的分布式系统在面对失控条件的时候仍然具备较强的韧性,因此我们认为一个数字化的企业应该采用混沌工程技术来提升自身系统的健壮性。


InfoQ:时下混沌工程的话题热度很高,可观测性最近的讨论也很多,请问在您看来,混沌工程与可观测性有什么关系呢?


陈屹力:在我看来,混沌工程与可观测性是相辅相成的。可观测性技术为混沌工程提供了生产系统中发现故障的抓手,同时在准生产系统随机注入故障,通过可观测性探寻系统动作变化,扩宽团队对系统的认识。


反过来,通过实践混沌工程,也可以丰富可观测性的指标,为可观测性提供更精准和更具参考价值的设计方案。随着时间的推移和技术的深入,这两种技术将会相互促进和加强。


InfoQ:理解和实践混沌工程,最需要注意的是什么?


陈屹力:现在混沌工程很热门,尤其是哔哩哔哩持续 3.5 小时的服务器故障事件让大家也进一步认识到在分布式系统中开展混沌工程的必要性。但在混沌工程实施过程中,我觉得首先从理解层面,要分清楚,混沌工程不是简单的测试,它更像是一种试探,实验本身没有明确的输入和预期结果,通过对系统和服务的干预,来观察系统的反应。


另外我们在调研过程中也发现,不同行业用户对混沌工程的接受程度跟自身行业属性相关度极高,比如互联网行业用户就比较容易接受在生产环境中直接实施混沌工程,而稳定性要求更高、监管力度更大的金融行业客户在这方面接受度稍低,一般会在类生产环境中实施。因此用户在实践混沌工程过程中要根据自身情况逐步推进混沌工程的实施深度,逐步由测试向类生产、生产环境推进。


InfoQ:有说法认为,测试不应该仅依靠测试人员,架构师、开发人员和测试人员都应该关注混沌工程,您认为这个说法准确吗?


陈屹力:我认可。混沌工程与 DevOps 理念对企业的影响类似,它不仅仅是一个平台或者技术,而是一种文化,建立一种面向失败和拥抱失败的技术文化,这不是一个团队的事情,而是整个产品团队都应该认可、执行的事情。


为了推广混沌工程的理念,我们也计划开展混沌工程成熟度模型的编写,从技术、管理、文化等多维度指导企业逐步建立自身的混沌工程能力,推动系统稳定性的提升。


InfoQ:一篇文章谈到混沌工程有五个误区:技术能力够强才可使用混沌工程,高度监管行业不能使用混沌工程,混沌工程具有实验性质并不安全,混沌工程会给生产系统带来破坏,混沌工程本质上就是一种测试。您怎么看?


陈屹力:这个问题很大,我来逐个回答。


1)混沌工程一般适用于分布式架构的系统,只要公司采用的 IT 系统是分布式的,就可以采用混沌工程技术来提升系统稳定性,与技术能力是否足够强关系不大。技术能力的强弱只是会影响混沌工程平台功能的完整程度,根据我们编撰的《混沌工程平台能力要求》,我们为建设混沌工程平台分了三个等级,开发者可以根据自身技术能力逐步由基础级到增强级再到先进级建设自身的混沌工程。


2) 高度监管行业当然能实施混沌工程。从我们调研的结果看,高度监管行业一般也是对系统稳定性要求非常高的行业,比如银行、证券,而这两大行业对混沌工程的热情度和接纳度是非常高的,因为混沌工程的成功运用能有效提升系统韧性,更有利于发现系统漏洞,提升监管效果。


3)混沌工程确实具有实验性质,也有可能会导致意料之外的后果。但混沌工程的“爆炸半径”就是为了熔断“预期之外”的后果,把试验的影响范围控制在最小。


4)混沌实验对系统带来的破坏,都可以通过爆炸半径等熔断措施的控制来实现。


5)混沌工程是一种探索性试验,与传统测试有本质上的区别,传统的测试是有固定的输入和预期的输出,但混沌工程是随机注入故障,而系统在故障注入后会产生什么连锁反应我们并不知道。


InfoQ:目前国内混沌工程的探索实践处在什么阶段?


陈屹力:目前混沌工程还处于起步阶段,国内很多厂商都在尝试,我们也在积极普及混沌工程的理念。互联网厂商比如阿里云,阿里云还开源了 ChaosBlade,同时也有自己的商用混沌工程工具;PingCAP 也开源了 ChaosMesh,腾讯云内部也在实施混沌工程,金融行业比如工商银行和华泰证券都做得不错,通信领域的中国移动也在内部积极实践混沌工程,平台能力十分丰富。


InfoQ:目前在关注业内哪些混沌工程实践方向?


陈屹力:首先在技术层面,我们比较关心混沌工程对云原生相关技术的接纳程度。目前云原生技术确实已经被大多数企业采纳,而且随着容器、微服务、服务网格等技术的进一步普及,混沌工程的实施对象将会进一步扩大。通过我们调研发现,当前混沌工程已经逐步接纳了云原生相关组件,比如  ChaosMesh 除了基础的 CPU、Disk、I/O、network 外,还支持 Docker、Dubbo、JVM 的攻击,对 Kubernetes 部署非常友好。


除此之外,我最近比较关注混沌工程的度量,这也是混沌工程实验室下一步要开展的工作,如何去评估一个混沌工程平台建设的成熟度,以及如何度量混沌工程实施的价值。


InfoQ:您对混沌工程的实践,有哪些期待?


陈屹力:我认为混沌工程未来大有可为。随着系统越来越复杂以及用户对系统问题的容忍度越来越低,系统稳定性要求肯定是越来越高的,而混沌工程提供了一个行之有效的解决思路。另外,我也希望更多行业的企业能踊跃尝试混沌工程,参与到混沌工程实验室的共建工作中来,借助信通院的平台来交流技术心得,推动技术发展。


嘉宾介绍:

陈屹力 中国信息通信研究院云大所云计算部副主任,云原生产业联盟秘书长,云计算开源产业联盟可信云工作组组长;主要从事云计算领域产业发展、关键技术研究、标准制定等相关工作,牵头撰写云计算行业 20 余个标准,曾荣获通信学会科技进步奖。

2021-12-03 15:142604

评论

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

Spring 源码学习 08:register 注册配置类

程序员小航

Java spring 源码 源码阅读

什么是工作流?工作流有什么作用?怎样配置工作流程?

Marilyn

敏捷开发 工作流

【架构师训练营 1 期】第十一周作业

诺乐

【架构师训练营 1 期】第十一周学习总结

诺乐

腾讯iOA与绿盟、天融信完成产品互认证,助力零信任市场协同发展

话题讨论 | 未来十年,你认为哪门语言将要脱颖而出

soolaugust

话题讨论

源码深度解析 Handler 机制及应用

vivo互联网技术

android 客户端开发

话题讨论 | 作为开发你是如何阅读源码的?

程序员小航

话题讨论

话题讨论 | 2020就要结束了,你最想对自己说的是什么

soolaugust

话题讨论

腾讯牵头零信任产业标准工作组正式发布零信任联盟标准

我是程序员,我用这种方式铭记历史

kokohuang

Hexo GitHub Pages python 爬虫 中国历史 铭记历史

Seata是什么?一文了解其实现原理

vivo互联网技术

分布式 分布式事务 分布式架构

8张图带你了解大型应用架构演进历程

Silently9527

架构 互联网架构设计

App自动化《元素定位方式、元素操作、混合应用、分层设计、代码方式执行Pytest 命令》

清菡软件测试

App

话题讨论 | 深入浅出Linux内存管理,图解物理内存和虚拟内存

程序员柠檬

话题讨论

ShardingSphere RAW JDBC 分布式事务 Narayana XA 代码示例

Java 数据库 分布式事务 ShardingSphere

话题讨论 | 程序员摸鱼的时候都喜欢干些什么

soolaugust

话题讨论

花火交易所APP软件系统开发(现成)

系统开发

低成本快速上链 智臻链开放联盟网络正式对外开放

京东科技开发者

区块链 京东

架构师训练营第 1 期第 11 周作业

du tiezheng

极客大学架构师训练营

话题讨论 | 遇到的印象最深的开源项目

soolaugust

话题讨论

架构师训练营 11 周作业

郎哲158

CSS flex 排版与动画 — 重学 CSS

三钻

CSS 大前端 排版 Flex

KMP —— 字符串分析算法

三钻

算法 大前端 KMP

探秘密码学:深入了解对称加密与密钥协商技术

京东科技开发者

网络安全 密码学

手撸一个在线css三角形生成器

徐小夕

CSS css3 大前端 CSS小技巧

话题讨论 | 2021要来了,你对未来的一年有什么期待

soolaugust

话题讨论

架构师训练营第 11 周学习笔记

郎哲158

话题讨论 | go、php 、java、python、cpp谁才能成为后端的主流

sinsy

Java c++ php 话题讨论 Go 语言

话题讨论 | 2020年你有什么推荐的书

soolaugust

话题讨论

不交“认知税”,混沌工程顶层设计正走向规范_前端_张俊宝_InfoQ精选文章