首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Python自动化测试

    混沌工程实践

    混沌工程的核心需要解决的是模拟现实中可能会出现的不可预知的情况以及本身客观存在的情况,比如网络故障,云服务器大面积出现瘫痪等情况了,那么在这种情况发生后,如何能够使用成熟的技术方案保障产品的可用性以及保存数据的完整性 所以首先需要明确的是混沌工程的思想它是科学实验的方法论,所有的一切都是在系统实验的基础上来寻求系统的平衡性。 所以在公司如果需要开展混沌工程,需要遵守混沌工程的五大原则,这些原则具体为: 首先要定义系统的边界 引入现实世界的真实案例事件。比如数据库超时,内存泄露,网络故障等 在生产环境中运行。 混沌实验毕竟是对系统造成冲击的,而且是在生产环境中进行,所以在实际开展的过程中,要选择影响范围小的,不能因为开展实验而导致系统出现故障,从而给系统带来一些破坏的行为。 混沌实验最好是持续的自动化。 通过混沌工程实践方式,也是能够寻找出系统中可能设计不合理的地方,然后针对这些地方来进行具体的调整和程序的优化,当然它是一个持续推进的过程,很难说一步到位。

    77120编辑于 2022-12-03
  • 来自专栏devops_k8s

    大厂混沌工程实践

    面对线上服务稳定性挑战,最头疼的就是线上故障发生的时间和范围无法预测,故障发生后对系统的影响难以评估,以及面对故障时如何快速定位和修复问题,如何快速应急响应。 3 企业如何落地混沌工程 实施混沌工程需要遵守一些经典原则,主要有如下几点:建立稳定状态的假设(制定合适的目标)多样化现实世界事件(选择合适的场景)在生产环境运行实验(在真实环境运行实验)持续自动化运行实验 这个阶段的特征主要有:实现故障演练创建和执行的自动化;可以自动收集演练的数据,半自动的识别风险和结果分析;有高效的场景管理手段,丰富的故障场景类型和成熟故障熔断措施;可以从业务链路视角开展故障注入,发现并提升感知和修复故障的能力 4 混沌工程的建设演进之路 混沌工程不仅可以提升线上系统的稳定性,还能为业务运营持续提升支撑,同时也可以提升团队的组织协作能力。下面两幅图是阿里和字节的混沌工程演练体系和最佳实践。 图片图片当然,在落地实践混沌工程时,一定要注意这几点前提:实施人员对系统要有深入的了解;混沌工程要面向开发者,提高感知故障、排除故障的能力;大规模推广时候需要结合业务团队特性来量身定做方案,主动推动;控制演练范围

    95951编辑于 2023-06-04
  • 来自专栏CNCF

    混沌工程介绍与实践

    在分布式系统架构下,服务间的依赖日益复杂,很难评估单个服务故障对整个系统的影响,并且请求链路长,监控告警的不完善导致发现问题、定位问题难度增大,同时业务和技术迭代快,如何持续保障系统的稳定性和高可用性受到很大的挑战 所以构建稳定性系统很重要的一环是混沌工程,在可控范围或环境下,通过故障注入,来持续提升系统的稳定性和高可用能力。 本文会着重介绍什么是混沌工程,为什么需要混沌工程以及混沌工程相关工具与实践。 下文重点介绍 ChaosBlade 及其相关实践。 ChaosBlade ChaosBlade 中文名混沌之刃,是一款混沌实验实施工具,支持丰富的实验场景,比如应用、容器、基础资源等。 命令的书写遵循阿里巴巴集团内多年故障测试和演练实践抽象出的故障注入模型,层次清晰,易于阅读和理解,降低了混沌工程实施的门槛。 实验模型介绍可详见:混沌实验模型介绍[4]。 混沌工程实践案例 ? 此拓扑图来自于阿里云 AHAS 产品架构感知功能,可自动感知架构拓扑,并且可以展示进程、网络、节点等数据。

    2.1K41发布于 2021-05-27
  • 来自专栏超级架构师

    混沌工程混沌工程原理

    混沌工程是在系统上进行实验的学科,目的是建立对系统承受生产中动荡条件的能力的信心。 大规模分布式软件系统的进步正在改变软件工程的游戏规则。作为一个行业,我们迅速采用提高开发灵活性和部署速度的做法。 我们称之为混沌工程实践中的混乱 为了专门解决大规模分布式系统的不确定性,混沌工程可以被认为是促进实验以发现系统弱点。 通过在实验期间关注系统行为模式,Chaos 验证系统确实有效,而不是试图验证它是如何工作的。 改变现实世界的事件 混沌变量反映了现实世界的事件。通过潜在影响或估计频率对事件进行优先级排序。 虽然必须考虑一些短期的负面影响,但混沌工程师有责任和义务确保将实验的后果最小化并加以控制。 混沌工程是一种强大的实践,它已经改变了世界上一些最大规模运营中软件的设计和工程方式。 在其他实践涉及速度和灵活性的地方,Chaos 专门解决了这些分布式系统中的系统性不确定性。混沌原则为大规模快速创新提供信心,并为客户提供他们应得的高质量体验。 谢谢大家关注,转发,点赞和点在看。

    1.1K20编辑于 2022-09-28
  • 来自专栏【腾讯云开发者】

    微信支付混沌工程实践

    本文从业务角度介绍微信支付实践混沌工程落地的思考,通过多分区的架构来控制最小爆炸半径,在高价值的基础组件和微信支付核心业务场景上探索,并基于高可用原则、历史故障分析推导故障原子的开发,是一篇全面的混沌工程建设实践 如何检验系统具备应对软硬件异常的容灾能力,我们调研了公司和业界的方法,其中演习和混沌工程最为常见和有效。 其中 Netflix 提出的混沌工程五大原则是业界落地实践的普遍共识: 建立稳定状态的假设; 用多样的现实世界事件做验证; 在生产环境中进行实验; 自动化实验以持续运行; 控制最小化爆炸半径。 这样,微信商户支付落地混沌工程已具备条件和可行性。 02、如何落地 从业界落地混沌工程经验来看,基本是围绕 Netflix 提出的5大原则展开。 2.2 高效、全面的发掘风险 从0到1建设混沌工程系统和业务落地,我们遇到了这两类问题: 工具 业务 零基础,优先做哪些故障原子?先建设故障原子,还是先提升实验效率? 如何优先找出高风险?

    86621编辑于 2024-03-19
  • 来自专栏超级架构师

    混沌工程】2022 混沌工程状态

    我们都欣喜若狂地看到这次实践已经走了多远。社区中的许多人都渴望获得更多关于如何最好地利用这种方法的数据,因此我们很自豪地展示了第一份混沌工程状态报告。 事实上,Gartner 预计,到 2023 年,将混沌工程实践作为 SRE 计划一部分的 80% 的组织将其平均解决时间 (MTTR) 减少 90%。 小时 网络攻击是最常运行的实验,与报告的主要故障一致 虽然仍然是一种新兴实践,但大多数受访者 (60%) 至少运行过一次混沌工程攻击 34% 的受访者在生产环境中进行混沌工程实验 Things break 使用混沌工程的团队的多样性也在增长。 最初的工程实践很快被站点可靠性工程 (SRE) 团队采用,现在许多平台、基础设施、运营和应用程序开发团队正在采用这种实践来提高其应用程序的可靠性。 确实,在实践混沌工程时,我们正在将故障注入系统,但使用遵循科学原理的现代方法,并有条不紊地将实验隔离到单一服务中,我们可以有意识地实践而不破坏客户体验。

    1.1K20编辑于 2022-11-01
  • 来自专栏超级架构师

    混沌工程】什么是混沌工程

    什么是混沌工程混沌工程让您可以将您认为会发生的事情与系统中实际发生的事情进行比较。 您实际上是“故意破坏”以学习如何构建更具弹性的系统。 最终,混沌工程的目标是增强我们系统的稳定性和弹性。 混沌与可靠性工程技术作为构建可靠应用程序的基本学科正迅速获得关注。 在过去的几年里,许多组织——无论大小——都接受了混沌工程。 图片 混沌工程如何帮助测试发展? 验证 更广泛的软件和基础设施场景 发现问题 传统测试无法暴露 安全地进行 并在生产中有效 帮助团队了解 系统在现实世界中的行为方式,而不仅仅是它们如何破坏或它们有什么错误 由于混沌工程可以在运行时测试代码质量 Chaos Engineering 允许工程师在安全和受控的环境中模拟他们的系统如何响应故障,从而帮助企业防范这些故障。

    1.3K30编辑于 2022-11-01
  • 来自专栏超级架构师

    混沌工程】故意破坏和混沌工程

    但是,利用从一个团队到另一个团队的一些经验,并真正开始分享这些最佳实践,也有巨大的优势——尤其是在 RBC 规模的组织中。我猜这就是你现在在当前角色中发挥作用的地方。 亚伦:是的。 现在我已经通过 Tech Talks 完成了几次,包括一些开发人员体验工作,一些云采用工作,我在内部被问到,当我们围绕诸如此类的事情建立新社区时,你如何建立社区现场可靠性工程。我们将如何做到这一点? 所以,关于我们如何教人们自助服务,我们如何让我们的内部系统更加自助服务的很多事情,这些都是我现在所关注的事情。 范围这么大,我该如何管理自己的时间? 因为你提到银行,显然慢了一点,采用更成熟的软件,但是你,对,你站在最前沿,你正在努力收集你可以使用的最佳实践和新技术银行,作为一个没有使用最新、最棒的东西的人,你如何做到这一点? podcast-break-things-purpose-developer-advocacy-and-innersource-aaron-clark 讨论:知识星球【首席架构师圈】或者加微信小号【ca_cto】或者加QQ群【792862318】 公众号 【jiagoushipro】【超级架构师】精彩图文详解架构方法论,架构实践

    77830编辑于 2022-11-01
  • 来自专栏架构之美

    混沌工程

    混沌工程,重在实验,不同于测试。混沌工程,是发现新信息的实践过程;测试,只能让我们通过最终呈现得知这个结果是否我们预期的,要么正确,要么错误。 而混沌工程却是我们想要的这一朵奇花,它能帮助我们获取更多、更接地气的认知维度在系统中如何采用新视角去进行实验。 还有,我们如何衡量稳定状态行为的变化?比如有偏离稳定状态行为发生时,如何去测量这个偏差。当我们定义清楚偏离稳定状态的偏差是否在合理的范围后,就能获得比较靠谱的验证假设的测试集了。 在混沌工程实践中,应该自动进行实验,自动分析实验结果,最好还能自动创建新的实验。如果一个实验不是自动化的,那么就可以将这个实验废弃。 混沌工程实践也非常重要,后头争取联合另一位业内一线大咖,再出落地实战性超强的文章,敬请关注!

    1.8K40发布于 2020-01-15
  • 来自专栏腾讯云智能顾问

    【云顾问-混沌演练】迎难而上,腾讯云混沌工程实践之道揭秘

    又是如何实践落地混沌工程的? 自上而下,成立第三方混沌蓝军进行大规模演习,质量运营强考核,主动出击 首要难点在于业务团队投入混沌工程的驱动力有限。 同时,这些方法不断优化并提高系统的可靠性和稳定性,为混沌工程实践带来更强大的力量。 结合腾讯云自研上云实践,打磨产品体验,提升易用性 最后,在众多演练工具当中,如何降低门槛提高演练效率,是第三个挑战。 四、结合自研实践,打磨产品能力,建设稳定性治理体系 在于腾讯云客户交流的过程中,客户经常会问:腾讯面临这么多业务场景,是如何做稳定性治理的? 混沌工程对稳定性的贡献如何衡量:在腾讯内部,混沌工程对业务稳定性验证是运维和质量团队中最关键的任务之一,尤其在腾讯云,我们的混沌蓝军已经是验证各产品稳定性,容灾能力,故障恢复能力的重要手段。 如何快速实施混沌工程 产品体验:https://cloud.tencent.com/product/cfg 最佳实践:cloud.tencent.com/document/product/1500/90505

    2K110编辑于 2024-03-13
  • 来自专栏PingCAP的专栏

    TiDB 混沌工程实践如何打造健壮的分布式系统?

    本文整理自 ArchSummit 全球架构师峰会(深圳站)2019 峰会演讲,分享了 TiDB 应用混沌工程的方法,介绍基于 K8s 自研的自动化测试平台 Schrodinger,并通过实际例子说明如何在 为什么需要混沌工程? 假设,我们现在开始建造一个系统,无论该系统的具体功能是什么,我们都需要保证系统的稳定性,但是如何知道系统是否处于稳定状态呢? 为了更好地进行混沌工程实践,Netflix 在官网提供了相关原则:第一个原则是构建系统稳态的假设;第二个原则是引入现实环境的变量事件;第三个原则是在生产环境中运行实验,此处需要注意任何在生产环境进行的操作都是有风险的 PingCAP 在 TiDB 实践混沌工程 在 PingCAP,我们主要针对 TiDB 进行混沌工程实践,重点关注两个大方向:一是发现错误;二是注入错误。 云上混沌工程实践 [14.png] 在 TiDB 研发初期,PingCAP 就对其引入了混沌工程

    87600发布于 2019-08-14
  • 来自专栏深度学习与python

    FreeWheel核心业务团队混沌工程实践之路

    作者 | 郭彦梅 策划 | 蔡芳芳 1 引言 近来 FreeWheel 微服务业务团队的业务逐渐扩大,单体服务已经无法胜任,于是我们如火如荼地开展了向微服务迁移的工作,一时间,服务如雨后春笋般冒了出来 混沌工程是帮助解决这一问题的不二选择,本文主要聊一下 FreeWheel 微服务业务团队在混沌工程道路上的实践。 4 混沌工程的原则和成熟度模型 尽管各家公司开发的混沌工程方案不同,但是都遵循了一套被大家认可的原则来指导混沌工程的发生。 如何评判我们的实验做是好是坏,以及如何做得更好呢? 5 FreeWheel 微服务业务团队在混沌工程领域的实践 FreeWheel 微服务业务团队在迁移微服务的过程中,微服务个数达到 30+。 在寻找如何预测系统发生的问题及其影响时,我们发现混沌工程可以解决这个痛点。

    81020发布于 2020-11-23
  • 来自专栏腾讯云混沌工程团队

    【云顾问-混沌混沌工程GameDay

    1 什么是混沌GameDay? GameDay在混沌工程中可以理解为一次有计划的演练实践活动,可以持续一天,也可以持续几个小时,也可以持续几天,持续时间根据具体的目标而定。 GameDay活动旨在对系统如何应对现实世界中的混乱状况进行演习。通常来讲,实施混沌GameDay的团队需要探索下面几个问题: 系统健康监控等系统是否有预期预警? 混沌GameDay的最终目的是按照一定的规划,有序地对目标系统进行混沌演练,收集演练实验证据,以此来验证混沌工程稳态假说。 4 开展混沌GameDay活动 做好GameDay的准备之后,需要在GameDay开始前通知开展GameDay的人员,若有任何一方未就绪,GameDay应当取消或者延迟。 腾讯云的混沌工程 腾讯云混沌演练平台(CFG)也正是基于上述背景而诞生,汇集各行业成功案例和最佳实践,提供宝贵经验,提供模拟IaaS、PaaS、SaaS近百种故障注入场景。

    1.2K100编辑于 2024-03-15
  • 来自专栏超级架构师

    混沌工程】Chaos Mesh:Kubernetes 的混沌工程平台

    Kubernetes 的混沌工程平台。 Chaos Mesh 是云原生计算基金会 (CNCF) 托管的项目。它是一个云原生混沌工程平台,可在 Kubernetes 环境中编排混沌。 在当前阶段,它具有以下组件: Chaos Operator:混沌编排的核心组件。完全开源。 Chaos Dashboard:用于管理、设计、监控混沌实验的 Web UI。 请参阅以下演示视频,快速了解 Chaos Mesh: Chaos Operator Chaos Operator 以可管理的方式将混沌注入应用程序和 Kubernetes 基础设施,为混沌实验和自动编排提供简单的自定义定义 How SpiceDB uses Chaos Mesh to verify protection ByteDance 字节跳动自主研发的混沌工程平台主要用于公司自有技术体系。 由于涉及到云原生部署服务,字节跳动集成了Chaos Mesh作为底层故障注入引擎,是对字节跳动混沌工程平台的重要补充。 To be added.

    2.1K20编辑于 2022-09-28
  • 来自专栏老张的求知思考世界

    混沌工程-初识

    公司新成立了一个稳定性团队,20年的重要目标之一就是开展混沌工程。为了后续更好的开展工作,记录关于“混沌工程”相关的知识以及工程实践。 内容来源:《混沌工程:Netflix系统稳定性之道》摘录以及个人思考总结。 概要 定义:主动发现系统中脆弱点的一整套方法论。 目的:如何让系统在不确定性中获益? ChaosBlade:阿里开源的一款遵循混沌工程原理和混沌实验模型的实验注入工具,是内部MonkeyKing对外开源的项目,结合了阿里各业务的最佳创意和实践。 2、混沌工程解决什么问题? 生产环境下,分布式系统在面对失控条件时是否具备较强的“可观测性”和故障恢复能力。 3、开展混沌工程要考虑的维度有哪些? 开展混沌工程总结的三点经验 1)建立面向失败设计和拥抱失败的技术文化(技术文化) 思想上,引入混沌工程的核心是通过引入一些风险去暴露已有的不易发现的问题,而不是创造问题。

    1K20发布于 2020-02-17
  • 来自专栏软件测试架构师俱乐部

    混沌工程-初识

    公司新成立了一个稳定性团队,20年的重要目标之一就是开展混沌工程。为了后续更好的开展工作,记录关于“混沌工程”相关的知识以及工程实践。 内容来源:《混沌工程:Netflix系统稳定性之道》摘录以及个人思考总结。 概要 定义:主动发现系统中脆弱点的一整套方法论。 目的:如何让系统在不确定性中获益? ChaosBlade:阿里开源的一款遵循混沌工程原理和混沌实验模型的实验注入工具,是内部MonkeyKing对外开源的项目,结合了阿里各业务的最佳创意和实践。 2、混沌工程解决什么问题? 生产环境下,分布式系统在面对失控条件时是否具备较强的“可观测性”和故障恢复能力。 3、开展混沌工程要考虑的维度有哪些? 开展混沌工程总结的三点经验 1)建立面向失败设计和拥抱失败的技术文化(技术文化) 思想上,引入混沌工程的核心是通过引入一些风险去暴露已有的不易发现的问题,而不是创造问题。

    1.1K20发布于 2020-02-19
  • 来自专栏云计算与大数据

    ChaosBlade:混沌工程

    2 混沌工程实验工具:ChaosBlade 阿里巴巴内部从最早引入混沌工程解决微服务的依赖问题,到业务服务、云服务稳态验证,进一步升级到公共云、专有云的业务连续性保障,以及在验证云原生系统的稳定性等方面积累了比较丰富的场景和实践经验 3、工具架构设计 ChaosBlade 依据领域实现封装成各自独立的项目,每个项目根据各领域的最佳实践来实现,不仅能满足各领域使用习惯,而且还可以通过混沌实验模型来建立与 chaosblade cli ,无需新增场景时再做平台开发,使混沌平台更加专注于混沌工程其他部分。 混沌工程平台。 同时简化混沌工程工具部署实施方面,后续会托管更多的混沌实验工具和兼容主流的平台,实现场景推荐,提供业务、系统监控集成,输出实验报告,在易用的基础上完成混沌工程操作闭环。

    1.6K30发布于 2021-08-26
  • 来自专栏云计算与大数据

    去哪儿网基于ChaosBlade的混沌工程实践

    从 2019 年底去哪儿网也结合自身的技术体系开始进行混沌工程相关的探索,下面就来介绍下我们的实践经验。 基于上面的两点,加上社区活跃情况等,选择 ChaosBlade 为故障注入的工具,加上自研的混沌工程控制台(当时还没有 chaosblade-box)作为最终方案。 4 系统演进 去哪儿网这边的混沌工程主要经历了 2 个阶段: 1、故障注入能力的建设。 4.1 故障演练 通过故障注入来模拟故障发生是混沌工程的基础能力。 5 开源贡献 去哪儿网混沌工程实践过程中主要使用的开源项目是 Chaosblade。

    1.5K31发布于 2021-08-26
  • 来自专栏超级架构师

    混沌工程】什么是混沌工程? 介绍、定义及更多

    混沌工程通过在整个应用程序和基础架构堆栈中注入故障,然后允许工程师验证行为并进行调整,从而使故障不会向用户显现,从而帮助解决未知问题。再加上站点可靠性工程实践的兴起,混沌工程试图计算不可能的影响。 与任何科学方法一样,混沌工程专注于实验/假设,然后将结果与对照(稳态)进行比较。分布式系统中典型的混沌工程示例是关闭随机服务,以查看项目如何响应以及对用户旅程的损害表现在哪些方面。 引入变量/实验 与任何科学实验一样,混沌工程在实验中引入变量以查看系统如何响应。这些实验代表了影响应用程序四大支柱中的一个或多个的真实故障场景:计算、网络、存储和应用程序基础设施。 在实施混沌工程实验时,实施混沌工程的原则会导致一些设计注意事项和最佳实践混沌工程最佳实践 在实施混沌工程或任何测试时,有三个支柱。 有了这些最佳实践混沌工程是一门不同于负载测试的学科。 混沌工程和负载测试有什么区别? 当然,负载本身会带来混乱。

    5K21编辑于 2022-09-26
  • 来自专栏高可用

    混沌工程工具:混沌工程定位及原则梳理(8)

    混沌工程定位很多人都会把混沌工程和测试区分不清楚,我从执行时机、执行后是否对系统产生新认知,做了一张图如下。 图片混沌工程工具系列传送门: 1、 混沌工程工具:Chaos-mesh与Chaosblade技术实现与原理分析(1)-腾讯云开发者社区-腾讯云 2、 混沌工程工具:chaos-mesh注入项原理分析 5、 混沌工程工具:Chaosblade Java业务代码注入原理(5)-腾讯云开发者社区-腾讯云 6、 混沌工程工具:混沌工程实施过程及持久价值(7)-腾讯云开发者社区-腾讯云 7、 混沌工程工具 :混沌工程定位及原则梳理(8)-腾讯云开发者社区-腾讯云 8、 混沌工程工具:一个混沌工程设计的例子(9)-腾讯云开发者社区-腾讯云混沌工程原则解读及选择原则混沌工程高级原则,是国外混沌工程专家一起整理的实践指南 原则二:多样化真实世界的事件这个原则主要说的是实验选择的问题,如何选择,可一参考如下思路 1、 最能在日常遇到的故障 -- 该故障模式的风险程度为高 2、 发生实验的故障时,系统是否必出问题。

    1.1K11编辑于 2023-10-10
领券