2021-11-17-中国信通院-中国混沌工程调查报告(2021年)_25页_4mb
报告摘要
中国混沌工程调查报告(2021)总结
核心内容概览
本报告由中国混沌工程实验室于2021年11月发布,旨在分析国内混沌工程的应用现状、软件系统稳定性问题及未来发展方向。通过在线调查和线下访谈相结合的方式,共收集有效问卷1016份,访谈企业17家,全面反映了当前混沌工程在国内企业中的实践情况。
主要观点与关键信息
1. 国内软件系统稳定性仍有较大提升空间
- 产品可用性不足:约20%的产品可用性低于2个9(即99%),近半数产品的可用性低于3个9(即99.9%),意味着用户每月可能遭遇超过44分钟的服务故障。
- 故障发现与修复效率低:仅不到一半的故障平均发现时间(MTTD)小于1小时,超过6成故障平均修复时间(MTTR)高于1小时,甚至有20%的故障修复时间超过12小时。
- 事故复盘机制较为成熟:超过半数公司会在故障修复后进行事故复盘,并分享脱敏后的复盘报告,提升透明度和学习价值。
2. 混沌工程是提升系统稳定性的有效手段
- 混沌工程应用效果显著:使用混沌工程后,低可用性产品占比明显下降,高可用性产品占比显著上升,65%的受访者认为混沌工程提升了服务可用性,49.85%的受访者认为其降低了MTTR。
- 主要收益:混沌工程在提升服务可用性、降低故障修复时间方面效果显著,是构建稳定性优先战略的核心技术。
3. 混沌工程普及率偏低,实施阶段较为初级
- 使用频率低:仅3.94%的用户能频繁地(每天)使用混沌工程,超过3成用户从未使用过。
- 实施环境局限:不到20%的用户在生产环境中开展混沌工程演练,大部分集中在研发/测试和预生产环境。
- 技术门槛高:用户普遍缺乏相关经验,担心生产环境注入故障带来的风险,阻碍了混沌工程的深度应用。
4. 混沌工程工具以开源为主,商业产品使用率偏低
- 需求侧偏好:国内开源工具(如ChaosBlade、ChaosMesh)是首选,但仍有33.04%的用户倾向于使用商业产品辅助实施。
- 供给侧倾向:服务供给侧更倾向于内部自研或使用国外开源工具,商业产品的吸引力仅为26.68%。
5. 混沌工程实施依赖技术就绪度
- 前置条件:完善的监控体系(65.59%)、可量化的稳定性评估模型(超60%)和系统具备韧性基础是混沌工程实施的关键前提。
- 团队协作关注度较低:仅48.09%的用户认为团队协作是重要条件。
6. 产品可用性提升策略多样化
- 常用方法:备份(48.72%)、健康性检查(48.43%)、自动扩容(45.28%)、多中心双活模式(43.9%)、数据库复制集(40.06%)是最常采用的策略。
- 云化程度与可用性正相关:上云比例越高的公司,产品可用性越高,上云比例高于75%的公司中,可用性高于99.99%的产品占比达49.23%。
7. 重大事故的主要原因
- 常见诱因:代码错误、网络问题、配置错误、内部依赖是引发重大事故的主要原因。
- 混沌工程可有效规避问题:通过主动注入故障,识别系统脆弱点,提升系统鲁棒性。
8. 产品迭代频繁,稳定性保障需求迫切
- 部署频率高:超过半数系统每周发布新功能,部署频率普遍较快,对稳定性保障提出了更高要求。
发展建议
- 建立稳定性优先战略:企业应优先考虑构建以稳定性为核心的保障体系,确保在采用新技术的同时,系统具备足够的容错与恢复能力。
- 打造以混沌工程为中心的稳定性保障体系:结合可观测性平台、容量管理、全链路压测等工具,构建全面的稳定性保障体系。
- 构建稳定性优先的企业文化:鼓励创新和容错文化,推动混沌工程从测试环境逐步向生产环境渗透。
- 加强技术知识普及与培训:提升用户对混沌工程和相关概念的理解,降低实施门槛和风险顾虑。
- 推动成熟商业产品与咨询服务发展:市场需要更加成熟、可信赖的混沌工程产品和咨询服务,以帮助用户快速落地并避免实施陷阱。
结论
混沌工程作为提升系统稳定性的关键技术,其应用在国内外均呈现快速发展的趋势。然而,国内企业在技术认知、工具选择、实施环境和文化构建等方面仍存在较大差距。报告指出,企业需加快构建稳定性优先的体系,借助开源工具、商业产品和合作伙伴生态,推动混沌工程的广泛应用,提升系统鲁棒性与用户体验。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载