写点什么

混沌实践访谈:混沌工程和系统可观测性密不可分

  • 2019-03-21
  • 本文字数:2964 字

    阅读完需:约 10 分钟

混沌实践访谈:混沌工程和系统可观测性密不可分

在 O’Reilly 的一份新报告“Chaos Engineering Observability: Bringing Chaos Experiments into System Observability”中,Russ Miles 探究了为什么他认为可观测性和混沌工程这两个主题是“密切相关”的。他认为,随着工程师们深入开展混沌实验,他们会提出很多有关系统底层的问题。


在 O’Reilly 最新的一份报告“Chaos Engineering Observability: Bringing Chaos Experiments into System Observability”中,Russ Miles 探究了为什么他认为可观测性和混沌工程这两个主题是“密切相关”的。他认为,随着工程师们深入开展混沌实验,他们会提出很多有关系统底层的问题。观察并理解正在运行的系统是实现这一目标的一个重要的先决条件。因此,报告提供了一个简短的指南,用于收集混沌实验的指标、日志和跟踪信息。


ChaosIQ.io CEO Miles 与 Humio 团队合作,一起产出了这份 32 页的报告。报告主题包括:混沌工程信号(探索如何获得实验进展通知,以及如何针对相关事件采取行动,以便更好地控制实验)、混沌实验日志(需要一种有效的集中式日志解决方案)、跟踪混沌实验(例如发送OpenTracing数据,以便“拼凑出关键的答案,比如发生了什么、事件发生的顺序,以及是谁挑起了整个事件”)。


InfoQ 联系了 Humio 的 CEO Geeta Schmidt,从她那里了解了 Humio 团队如何看待他们与使用日志管理平台和混沌工程所做的工作之间的关系。


借助混沌实验,开发人员、安全团队和运营管理人员可以以故障和威胁注入的形式进行有意的实验,以此来细化、重新校准对系统的理解。对系统的进一步理解为客户和用户带来了更好的体验,并改进了业务结果。


混沌原则”的“混沌实践”一节中提到:“在一开始就定义’稳定状态’,作为系统的可测量输出,用以表明系统的正常行为”。Schmidt 认为,为了“检测系统何时是正常的,以及随着实验的进行它是如何偏离正常状态的”,发展观察系统的能力是非常重要的。她强调,在与 Humio 客户一起工作时,团队已经意识到,访问可定制的、细粒度的、接近实时的度量和日志可以更好地理解实验所带来的影响。


来自 Gremlin 的 SRE 负责人 Tammy Butow 在去年的伦敦 QCon 大会上发表了演讲。他认为,实现有效的混沌工程实践有三个主要先决条件:高严重性事件管理、监控和度量停机影响的能力。最初由 Netflix 赞助,并由 Casey Rosenthal、Lorin Hochstein、Aaron Blohowiak、Nora Jones 和 Ali Basiri 共同撰写的 O’Reilly 混沌工程报告对这个主题进行了广泛的描述,并讨论了识别出需要在实验期间进行观察的指标的重要性。


在最近发布的InfoQ混沌工程电子杂志中,Michael Kehoe 和 Aaron Rinehart 分别在“LinkedIn’s Waterbear: Influencing resilient applications”和“Using Chaos Engineering to Secure Distributed Systems”这两篇文章中讨论了观察故障注入实验和从可控实验结果中获得见解的必要性。Adaptive ability Labs 联合创始人 John Allspaw 表示,“可观测性”一词与之前的含义有所不同,而且与此相关的人为因素不应该被忽视。


InfoQ 最近与 Miles 讨论了混沌工程和可观测性的话题。


InfoQ:感谢你能够加入我们的讨论。如果团队是第一次接触混沌工程和可观测性,他们应该从哪里开始着手?


Russ Miles:可以从“混沌原则”开始。

在此基础上,我们建议使用混沌工具包,学习一些在线教程,然后着手创建自己的一些混沌实验。这样你就会开始质疑系统的可观测性,然后下一步可以参考“Distributed Systems Observability”和“Chaos Engineering”这两本书。

最后,你也可以加入一些很棒的社区,在社区中交换意见,获得免费的建议。可加入的社区有谷歌混沌社区、Gremlin 混沌工程社区 Slack 频道,以及我们的团队和社区 Slack 频道。

混沌工程是构建永不停机系统的一个令人兴奋的旅程。在前进的路上,这些社区可以帮助你,我们都认为混沌工程是一个关键的心态和纪律,可以帮助我们建立更强大、更有弹性、可靠和安全的系统。


InfoQ:在进行混沌实验之前,系统可观测性有多重要?


Miles:这个问题的关键词是“之前”。拥有良好的系统可观测性是非常重要的,但不管是否进行混沌工程实验,这个都很重要,因为它不只是一个先决条件。

混沌工程和可观测性这两者配合得很好。

在某些情况下,在进行混沌实验之前,你可能已经具备了一定的系统可观察性,这在通过混沌工程实验来诊断系统漏洞表面偏差时无疑是有帮助的。当然,在通进行混沌工程实验过程中,这将成为一种“强制性功能”,如果不存在更好的系统可观察性,它将会提出明显的要求。

因此,根据我们的经验,良好的系统可观测性并不是混沌工程的一个强有力的先决条件。更多的时候,在进行混沌实践时,对系统可观测性的需求将会凸显出来。随着时间的推移,这两种技术将会相互促进和加强。

有趣的是,这也是为什么混沌工程会成为其他非功能性或以运营为重点的系统改进的一个很好的“强制性功能”。混沌工程通常会使这种容易被遗忘或被降低优先级的关注点变得完全不可忽视,它帮助每个人意识到这些挑战的存在,并设计和实现系统健壮性和弹性策略来应对这些挑战。

简而言之,混沌工程使每个人都成为一个更好的系统所有者,而系统可观察性是一种几乎立即就能获得极大好处的能力。


InfoQ:混沌工程实践会面临什么特别的挑战吗?理解和观察混沌实验本身有多重要?


Miles:组织实践混沌工程失败的原因有很多。他们可能不理解这种理念,或者混沌工程师限制其他团队进行混沌实验。混沌工程做得不好很容易导致这种理念被拒绝。

ChaosIQ 团队相信,组织中的每个人最终都会加入实践混沌工程的行列。混沌工程并不是专属于少数人的技术,而是一种有用的理念,适用于所有拥有关键任务业务系统的人。这意味着即使对于中等规模的组织来说,也存在大规模的混沌工程挑战。从规模上看,混沌工程失败的几率增加了。

不管对于什么样的规模,将混沌工程实践当作一种惊喜是走向失败的原因之一。也就是说,在运行实验时,如果有人感到惊讶,那么这对每个人来说通常都是一个糟糕的时刻,因为这些大吃一惊的人通常会请求不要再运行实验。

有时候,用混沌实验来给团队一个惊喜也是有用的,比如说作为一个游戏日的一部分。为了探究团队如何应对动荡的环境,比如探究人员/实践/流程的弱点,你可能不会告诉团队接下来将会应用哪些条件,因此对他们来说可能是一个惊喜。然而,游戏日本身并不会令人感到意外,这一点很重要。

在执行混沌实验时,确保这些实验不应该让任何人感到惊讶。每个可能受到混沌实验影响的人都应该知道正在执行什么样的混沌实验、何时执行、针对什么执行以及为什么要执行这些实验。

混沌工具包和平台的实验格式以及可插拔混沌工程可观察性工具的组合使得这种跨团队和跨组织的可见性成为可能,从而避免了意外混沌的危险以及可能会出现的不良反应。

因此,在很多方面,无论团队的大小和混沌工程的能力如何,将混沌实验引入到整个系统的可观察性中对于避免这些陷阱来说都是至关重要的。混沌工程实验也是系统中的公民,它们应该是良好的公民,除了运行时系统的其他方面,它们的活动也需要一起被了解和观察。


Miles 的报告“Chaos Engineering Observability: Bringing Chaos Experiments into System Observability”可通过 Humio 网站下载,下载前需要进行注册。


查看英文原文:


https://www.infoq.com/news/2019/03/chaos-engineering-observability


2019-03-21 10:033856
用户头像

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

关注

评论

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

ios安全加固 ios 加固方案

Device Partner平台合作伙伴认证和数据安全保护

HarmonyOS开发者

Util应用框架快速入门(四)- 集成测试 快速入门

何镇汐

C# 开源 后端 软件开发

KubeBlocks 完成阿里云 PolarDB 数据库产品生态集成认证啦!

小猿姐

数据库 云计算 云原生

矩阵起源加入 OpenCloudOS 操作系统开源社区,完成技术兼容互认证

MatrixOrigin

数据库 分布式 云原生 MatrixOrigin MatrixOne

SideFX Houdini for mac(3D物理模拟和视觉特效软件) v18.5.696永久激活版

mac

苹果mac Windows软件 SideFX Houdini 视觉特效软件

平安人寿基于 Apache Doris 统一 OLAP 技术栈实践

SelectDB

数据库 大数据 数据仓库 数据分析 apache doris

云桌面系统简介与深度解析

青椒云云电脑

桌面云 云桌面 云桌面系统

ChatGPT上新,效果炸裂,知识平台才是大模型的最佳狩猎场

数新网络官方账号

openai ChatGPT

Flink 替换 Logstash 解决日志收集丢失问题

字节跳动云原生计算

大数据 flink 云原生 Logstash

合约交易所开发之永续合约交易所系统开发规则

V\TG【ch3nguang】

浅析KV存储之长尾时延解决办法

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟

文心一言 VS 讯飞星火 VS chatgpt (132)-- 算法导论11.2 4题

福大大架构师每日一题

福大大架构师每日一题

十个使用Spring Cloud和Java创建微服务的实践案例

树上有只程序猿

Java 微服务 SpringCloud

昇腾CANN 7.0 黑科技:大模型推理部署技术解密

华为云开发者联盟

人工智能 华为云 昇腾CANN 华为云开发者联盟 LLM模型

七个优秀微服务跟踪工具

高端章鱼哥

微服务架构

DBeaverUltimate for Mac(数据库管理软件) 终极版下载

iMac小白

DBeaver Ultimate软件 DBeaverUltimate下载 DBeaverUltimate破解版

Go 接口:Go中最强大的魔法,接口应用模式或惯例介绍

不在线第一只蜗牛

Go 接口 编程语言

OpenHarmony创新赛|赋能直播第五期

OpenHarmony开发者

OpenHarmony

arm64 还是 x86-64:Amazon EC2 实例该如何选择?

魏临

百家国企走进云投集团,探索世界500强数智化转型之路

用友BIP

企业数智化

国内首批!华为云云原生中间件DCS&DMS获软件可信“卓越级”认证

华为云PaaS服务小智

云计算 软件开发 华为云

WebSocket魔法师:打造实时应用的无限可能

EquatorCoco

编程 Web Service

Microsoft Remote Desktop for Mac(远程桌面连接工具)激活版

iMac小白

microsoft remote desktop

桌面云一体机有哪些厂家?价格怎么样?

青椒云云电脑

桌面云 云桌面

干货!Why TPM——食品饮料行业知名品牌CIO、CTO访谈会实录

赛博威科技

营销费用管理 赛博威 食品饮料行业数字化转型

使用LLama和ChatGPT为多聊天后端构建微服务

互联网工科生

微服务 ChatGPT

百度搜索深度学习模型业务及优化实践

百度Geek说

人工智能 深度学习 架构 企业号11月PK榜

Sound Control for Mac(mac应用音量控制软件)激活版

iMac小白

sound control下载 sound control mac sound control激活版

混沌实践访谈:混沌工程和系统可观测性密不可分_软件工程_Daniel Bryant_InfoQ精选文章