首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏腾讯云混沌工程团队

    【云顾问-混沌】PodNode CPU 故障注入

    本文将介绍如何使用混沌工具对 Pod/Node 进行 CPU 负载故障注入,以达到指定的 CPU 负载百分比。 2. 参数 在进行 CPU 负载故障注入时,我们可以通过以下参数来控制: nice:指定 CPU 负载进程的 nice 值(静态优先级),取值范围为[-20, 19]。 实现原理 混沌工具在进行 CPU 负载故障注入时,主要通过以下方式实现: 启动 chaos_burncpu 进程,空跑 for 循环来消耗 CPU 时间片。 通过以上方法,我们可以轻松地对 Pod/Node 进行 CPU 负载故障注入,从而验证系统在不同负载下的表现,以及监控告警、流量调度、弹性伸缩等能力。 使用腾讯云混沌演练平台实施 CPU 高负载。 故障实现原理是预先在混沌演练平台探针管理处安装腾讯自研 Agent 探针。

    90310编辑于 2024-03-15
  • 来自专栏腾讯云混沌工程团队

    【云顾问-混沌】PodNode 内存高负载故障注入

    本文将介绍如何使用混沌工具对 Pod/Node 进行内存负载故障注入,以达到指定的内存占用百分比。腾讯云混沌演练平台故障动作:标准集群 Pod/普通节点-内存利用率高。 2. 参数 在进行内存负载故障注入时,我们可以通过以下参数来控制: percent:内存使用率,取值是 0 到 100 的整数,默认值为 100。此参数为可选。 实现原理 混沌工具在进行内存负载故障注入时,主要通过以下方式实现: ram 模式:启动进程 chaos_burnmem 不断申请内存,模拟主机/容器内存负载升高。 为了保护该进程在故障注入期间一直存在,不被杀死,可以打开 oomGuard 保护,降低该进程 oom-kill 权重,优先杀死其他进程。 设置高负载的内存故障注入后,可能会使得机器无法登入与控制,请谨慎使用。 cache 模式:通过挂载 tmpfs 来实现内存占用。

    56410编辑于 2024-03-15
  • 来自专栏程序员吾真本

    K8S故障注入混沌工程开源平台ChaosMesh

    Chaos Mesh 是针对K8S的云原生混沌工程开源平台。 可以用它方便地模拟开发、测试、生产环境中可能出现的各种异常情况,发现系统中潜在的问题。 实验工作流 实验工作流,包括编排顺序或并行执行的故障注入实验,查看实验状态和结果,暂停实验,支持用YAML或Web UI定义和管理实验。 可视化操作 可视化操作,包括可以在Web UI上点击鼠标,定义实验的范围、故障注入类型和调度规则,最后能展示实验结果。 安全控制 安全控制,包括使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。还可以通过设置命名空间注解,来指定允许进行混沌实验的命名空间,进一步保障对混沌实验的控制。 使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。 劣势 只能在K8S集群上使用。否则,就只能使用针对节点进行故障注入实验的附带工具chaosd。 临时执行的实验会无限期地运行。

    59530编辑于 2023-08-16
  • 来自专栏程序员吾真本

    K8S故障注入混沌工程开源平台ChaosMesh

    实验工作流 实验工作流,包括编排顺序或并行执行的故障注入实验,查看实验状态和结果,暂停实验,支持用YAML或Web UI定义和管理实验。 可视化操作 可视化操作,包括可以在Web UI上点击鼠标,定义实验的范围、故障注入类型和调度规则,最后能展示实验结果。 安全控制 安全控制,包括使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。还可以通过设置命名空间注解,来指定允许进行混沌实验的命名空间,进一步保障对混沌实验的控制。 使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。 劣势 只能在K8S集群上使用。否则,就只能使用针对节点进行故障注入实验的附带工具chaosd。 临时执行的实验会无限期地运行。 你还希望我聊有关混沌工程的其他什么新话题?欢迎在评论区留言。我会仔细阅读每一条留言。期待听到你的声音。 企业生意好,系统运行稳。你所阅读的文章,来自“吾真本说混沌工程”专栏。

    59620编辑于 2023-08-15
  • 云顾问混沌演练平台:如何精准实现容器负载类故障注入

    腾讯云云顾问混沌演练平台应运而生,通过精准的负载类故障注入,帮助企业提前发现并解决问题,提升系统稳定性。1. 什么是负载类故障注入? 云顾问混沌演练平台如何精准实现负载类故障注入?腾讯云云顾问混沌演练平台利用创新的技术,通过创建稳定的辅助执行环境(称为chaos-helper-pod),实现容器故障的精准注入。 具体步骤如下:动态部署混沌辅助执行Pod: 混沌工程控制平台接收到用户的故障注入请求后,会在目标业务容器所在的节点动态启动一个chaos-helper-pod,这个Pod内置了各种故障注入工具,如CPU 注入前云顾问混沌演练平台容器监控注入后云顾问混沌演练平台容器监控4. 对操作系统的要求腾讯云云顾问混沌演练平台在执行此类故障注入时并不直接依赖目标容器内的操作系统环境,因此对操作系统本身无特殊要求。 小结腾讯云云顾问混沌演练平台通过其创新的PID迁移机制和独立的辅助执行环境,实现了容器负载类故障注入的精确控制,确保故障注入的效果真实、准确,同时保障了混沌平台自身运行的稳定性,成为企业提升容器应用弹性和可靠性的重要利器

    41521编辑于 2025-05-20
  • 来自专栏程序员吾真本

    7个检验软件系统稳定性场景的混沌工程故障注入开源工具ChaosBlade

    ChaosBlade可针对多达7个场景开展故障注入实验,但网上官方的中英文文档质量欠佳,内容缺失,真心没有站在一般用户的角度来写,只能通过运行blade命令的help了解究竟有什么功能。 图片 一句话介绍 ChaosBlade是阿里巴巴开源的针对7个检验软件系统稳定性场景的混沌工程故障注入开源工具:主机基础资源、CRI容器、K8S平台、Java应用、C++应用、阿里云平台、其他服务。 优势 支持多达7个故障注入场景。 劣势 网上的中英文文档描述过于简略。每个功能往往就一句话。只能把工具装上,运行起来,通过help参数,逆向工程来发现有什么功能。 案例 国内有金融行业的用户,已经基于ChaosBlade开发了混沌工程工具平台,在测试环境注入故障,检验基础设施和容器平台的稳定性。 你所阅读的文章,来自“吾真本说混沌工程”知乎专栏。

    1.1K00编辑于 2023-08-12
  • 来自专栏全栈程序员必看

    istio框架(istio故障注入)

    注:它们Pod标签都有app: nginx,service服务发现根据这个标签选择,version是为后面定义版本设置的

    61830编辑于 2022-08-01
  • 来自专栏猫头虎博客专区

    故障注入实验:了解如何使用Chaos Engineering的方法,在服务网格中进行故障注入实验

    在这篇博文中,我将带领大家探索如何在服务网格中进行故障注入实验,分享Chaos Engineering的最佳实践,并深入研究服务网格如Istio中的故障注入功能。 对于关心系统健壮性、微服务稳定性和混沌工程 的读者,这篇文章将为你提供丰富的实践知识! 引言 混沌工程不仅仅是故意制造故障,而是一种科学的方法,通过故障注入来发现系统中的潜在问题,并验证系统的弹性。 服务网格,作为微服务架构的通信层,为我们提供了强大的故障注入工具,帮助我们更好地进行混沌实验。 正文 1. 什么是混沌工程? 混沌工程是一种通过主动注入故障来验证系统健壮性的方法。 2.1 Istio的故障注入功能 Istio允许我们在服务间的通信中注入故障,如延迟、错误等。 总结 混沌工程为我们提供了一种验证系统健壮性的强大工具。通过服务网格,我们可以更加方便地进行故障注入实验,验证微服务架构的弹性。正如混沌工程的创始人所说,要“通过混沌来建立信心”。

    52510编辑于 2024-04-09
  • 来自专栏深度学习与python

    混沌工程在工商银行的探索实践 | Q推荐

    ,帮助大家了解混沌工程故障注入的流程,以及在开源框架上的选型策略。 那业界混沌工程实施的工具这么多,那在工行进行混沌工程故障演练平台建设的时候,就要思考是选择自研故障注入工具,还是直接引用开源的故障注入工具。如果引用开源的故障注入工具,引入哪款开源工具。 最终,混沌工程故障注入介质将会安装在这些基础设施上实施各类的故障。 在基础实施层之上,基于 ChaosBlade 进行二次开发的混沌工具故障注入介质。 ,此外我们也开发了故障注入任务解析模块,该模块可将混沌工程故障演练管理平台下发的故障演练任务解析成多个故障注入事件,然后根据各个故障注入事件的开始和结束时间分别调用 ChaosBlade 故障注入工具实施故障注入和撤销操作 故障注入介质之上的是任务调度模块,负责平台和故障注入介质之间的交互,核心功能是实现混沌实验任务的批量下发和调度,该模块可以快速批量下发各种类型的混沌实验,支持失败重发、超时重发、高并发等机制。

    1.2K21发布于 2021-06-08
  • 来自专栏程序员吾真本

    混沌工程和软件系统稳定性实践在技术大会上没啥可讲的?

    具体来说,根据我在之前所参与的相关咨询项目中的观察,大部分企业实践混沌工程,主要集中在两个方面。第一,构建工具平台。包括工具平台的建设过程,以及相关的系统架构。第二,故障注入实验。 包括故障库、故障注入编排和故障注入演练。其中故障库中的原子故障,主要是针对基础设施层和容器平台层的虚拟机、容器、pod和node。 如果是甲方购买了乙方的虚拟机和容器平台,然后再在上面做相关的故障注入实验,本质上是甲方再次花钱为乙方做回归测试。企业一旦在上面两个方面开展混沌工程应用工作,过程就相对固化下来。 2 你们所实践的混沌工程应用,与传统的测试团队的软件测试,以及与运维部门的传统故障演练,有什么区别?差异化优势在哪里?3 如何保障故障注入后的最小化爆炸半径? 4 你们所开展的故障注入实验,是否主要针对基础设施层或容器平台层?是否有针对应用服务层做故障注入实验?

    49630编辑于 2023-07-22
  • 来自专栏运维之路

    3.3.2 混沌工程:提升未知故障下应急管理能力

    为此,Netflix启动了Chaos Monkey,通过随机性的故障注入,了解在故障注入后相关联服务的健壮性、弹性,发现故障产生后的风险。 从公开信息看,国内的混沌工程实践比较早的是阿里,阿里的团队分享了一些混沌工程的实践经验,开源了故障注入的代码,阿里云还有一个故障演练的应用(虽然我认为混沌工程与演练是有区别的)。 核心/基本功能异常风险:从功能角度进行故障注入,挖掘系统核心或基本功能,发现依赖影响,评估应急方案。 (2)依赖环境 上下游链路风险:通过故障注入,发现上下游系统影响,梳理影响链路。 我尝试抽象下我理解混沌工程工具需要具备的主要功能: (1)实验计划管理 模板管理 流水线编排 演练方案设计 审批流程(技术方案评审) (2)自动化执行 执行控制与风险管控 故障注入工具 应急恢复工具 执行层面,加强故障注入、故障观察、故障恢复的管控能力,控制好故障影响范围,在对生产保持敬畏之心的基础上践行混沌工程,并建立持续优化的闭环协同机制,混沌工程最终是为了解决问题。

    1.8K41发布于 2021-04-26
  • 来自专栏腾讯云智能顾问

    【云顾问-混沌演练】容灾演练Game Day最佳实践——moomoo

    数据层CDB/CRS/TDSQL容灾能力 上述故障演练均基于腾讯云混沌演练平台(CFG)完成,业务团队在混沌演练平台上完成了实例选取、演练场景动作的编排、可视化故障注入、演练报告等全流程操作。 3.3 演练结果观测 在演练过程中,实施人员可通过对系统稳态监控指标在故障注入后的表现来判断故障注入是否成功、系统稳态指标是否符合预期来观察演练的效果,评估系统的可用性和可靠性。 演练前,用户可以在混沌演练平台上轻松完成多种资源类型的可故障注入动作组合编排;演练后,系统可以帮助自动化执行故障恢复流程,减少了人为干预的风险。 解决方案:混沌演练平台支持多实例并发故障注入,能够真实有效地模拟可用区级别的故障场景,极大提高了故障演练整体效率。 解决方案:混沌演练平台集成了腾讯云监控各类基础云产品的监控指标体系,用户可以在混沌平台上快捷地集中查看各类云产品实例级别的的指标监控变化,实时观测故障注入效果,并对演练中可能出现的风险进行有效把控。

    1.6K152编辑于 2024-03-13
  • 来自专栏butterfly100

    混沌工程:通过试错的方法来提升稳定性

    什么是混沌工程? 2. 混沌工程的实践原则 3. 混沌工程的好处 4. 基于上述原则如何落地? 4.1 故障注入能力 4.2 平台化建设 4.3 应用推广 5. 以下是我的一些想法 4.1 故障注入能力 首先我们需要引入真实场景下可能出现的故障,然后才可进行混沌实验。 按 SaaS 类、PaaS 类、IaaS 类的故障全景图: ? 以下是两个 star 较多、开源社区较为活跃的混沌工程项目。故障注入都做到了开箱即用、业务无感知,不需要业务配合写一些混沌工程相关的代码,也不需要更改系统的部署逻辑。 4.2 平台化建设 基于故障注入的能力,将混沌实验的流程平台化,让用户更方便的使用。如下图: ? (1)平台产品层 基于上文「3. 、串行/并行、手动/自动的执行「故障注入、稳态验证、故障清除」等动作 观测大盘:混沌实验期间,实时清晰的观测「稳态指标、故障指标、止损指标」。

    1.7K41发布于 2021-07-16
  • 来自专栏超级架构师

    混沌工程】混沌工程原理

    我们称之为混沌工程。 实践中的混乱 为了专门解决大规模分布式系统的不确定性,混沌工程可以被认为是促进实验以发现系统弱点。 改变现实世界的事件 混沌变量反映了现实世界的事件。通过潜在影响或估计频率对事件进行优先级排序。 混沌工程将自动化构建到系统中,以驱动编排和分析。 最小化爆炸半径 在生产中进行试验有可能导致不必要的客户痛苦。 虽然必须考虑一些短期的负面影响,但混沌工程师有责任和义务确保将实验的后果最小化并加以控制。 混沌工程是一种强大的实践,它已经改变了世界上一些最大规模运营中软件的设计和工程方式。 混沌原则为大规模快速创新提供信心,并为客户提供他们应得的高质量体验。 谢谢大家关注,转发,点赞和点在看。

    1.1K20编辑于 2022-09-28
  • 来自专栏腾讯云智能顾问

    腾讯云Status Page(健康看板)容灾设计与混沌演练实践——下篇

    上篇 腾讯云Status Page(健康看板)容灾设计与混沌演练实践——上篇 我们讨论架构设计和部署,接下来的内容是关于相应故障演练验证的实践 故障注入主要通过腾讯云混沌演练平台实现,腾讯云有对外服务的版本 ,可以前往混沌演练平台进行了解。 : 逻辑层故障演练 主源逻辑层地域所有POD异常 通过腾讯云混沌演练平台pod Failed注入 主源逻辑层单可用区所有POD异常 通过腾讯云混沌演练平台pod Failed注入 逻辑层地域所有POD异常和单可用区所有 POD异常2种故障注入后的请求示意图,都是主源VIP返回异常码后,进行备源重试: 主源逻辑层单可用区内部分POD异常 通过腾讯云混沌演练平台pod Failed注入,包括前后端不同场景 故障注入后的K8s ——上篇 腾讯云Status Page(健康看板)容灾设计与混沌演练实践——下篇

    1.2K81编辑于 2024-03-11
  • 来自专栏FunTester

    故障测试——微软工程手册

    故障注入 vs. 混沌工程 故障注入测试和混沌工程有相似之处,但侧重点不同。前者主要是验证特定的故障场景,后者则更像是“随性破坏”,故意制造混乱,观察系统能否自行恢复。 混沌工程的核心理念是:真正稳定的系统,不是避免错误,而是能在错误发生时,快速恢复并保持服务可用。 Kubernetes 下的故障注入 随着 Kubernetes 成为云时代的主流平台,如何在 K8s 上进行故障注入测试,成了一个重要课题。 混沌工程工具 Azure Chaos Studio——微软 Azure 资源的故障注入工具。 Chaos Toolkit——模块化的混沌测试平台,支持 Kubernetes、AWS、Azure。 Chaos Monkey(Netflix)——开创混沌工程的工具,可以随机终止生产实例。 Litmus——CNCF 旗下的 Kubernetes 混沌测试工具,适用于云原生应用。

    38810编辑于 2025-03-12
  • 来自专栏程序员吾真本

    以线上事故驱动混沌工程更能展现价值

    与运维团队一起实践了近一年的混沌工程后,获得了以下启发: 混沌工程的价值,就是要提升应对云生产环境线上事故的时效性和有效性 混沌工程实验与故障注入测试相辅相成,在证实稳态假说后,前者可以转化为后者 稳态行为假说 但有些企业的运维部门在实践混沌工程时,主要是用工具厂商所提供的工具,或使用自研的工具,进行故障注入探索性测试。其间缺乏针对该企业以前所发生的生产环境线上事故设计混沌工程实验。 说到了测试,那么混沌工程实验与故障注入测试的区别是什么? 混沌工程实验与故障注入测试相辅相成 混沌工程实验是要证实或证伪复杂云系统在故障注入后的稳态假说是否成立,并研究其间系统的运行模式、未知的失效模式以及监控告警的有效性,以便增强系统稳定性设计。 当然,这里说到的“覆盖”,发生在我们已经修复了混沌工程实验所发现的漏洞之后。只有在此时,度量成效才有意义。 可以使用下面公式来计算混沌工程实验与故障注入测试的成效。

    99921编辑于 2022-09-26
  • 来自专栏程序员吾真本

    混沌工程和软件系统稳定性实践在技术大会上没啥可讲的?

    具体来说,根据我在之前所参与的相关咨询项目中的观察,大部分企业实践混沌工程,主要集中在两个方面。 第一,构建工具平台。包括工具平台的建设过程,以及相关的系统架构。 第二,故障注入实验。 包括故障库、故障注入编排和故障注入演练。其中故障库中的原子故障,主要是针对基础设施层和容器平台层的虚拟机、容器、pod和node。 如果是甲方购买了乙方的虚拟机和容器平台,然后再在上面做相关的故障注入实验,本质上是甲方再次花钱为乙方做回归测试。 企业一旦在上面两个方面开展混沌工程应用工作,过程就相对固化下来。 2 你们所实践的混沌工程应用,与传统的测试团队的软件测试,以及与运维部门的传统故障演练,有什么区别?差异化优势在哪里? 3 如何保障故障注入后的最小化爆炸半径? 4 你们所开展的故障注入实验,是否主要针对基础设施层或容器平台层?是否有针对应用服务层做故障注入实验?

    28020编辑于 2023-07-24
  • 来自专栏程序员吾真本

    故障创建与编排更胜一筹的K8S混沌工程开源平台Litmus

    Litmus 最初是 OpenEBS(K8S下存储系统) 的测试工具,后来发展成为知名的 Kubernetes 原生混沌工程开源平台。 图片创建者MayaData一句话介绍LitmusChaos 是一个在故障创建与编排方面更胜一筹的K8S混沌工程开源平台,如提供故障注入实验库 ChaosHub,使团队能够以受控方式,引入故障注入实验来识别基础设施中的弱点和潜在停机隐患 混沌工程可观测性可连接数据源(来自任何 Chaos Delegate)并监控故障注入场景。能可视化故障注入场景运行的统计数据和并做数据聚合。可比较两个或多个故障注入场景的观测数据。 这对于刚刚接触混沌工程的团队来说,是一项挑战。 你所阅读的文章,来自“吾真本说混沌工程”知乎专栏。

    93970编辑于 2023-08-15
  • 来自专栏CNCF

    迈向混沌工程闭环生态的 Chaos Mesh® 2.0

    混沌工程变得更简单一直是 Chaos Mesh 坚定不移的目标,构建混沌工程闭环生态是帮助我们达成目的的关键步骤。 更多的故障类型 Chaos Mesh 已经支持了如 NetworkChaos,IOChaos,StressChaos 等系统层面的故障注入,也支持了如 AWSChaos,GCPChaos 这种云服务类型的故障注入 我们在 Chaos Mesh 2.0 中也加入了应用层的故障注入功能。 目前 Chaos Mesh 借助 chaos-exec-jvm 实现了 JVMChaos,能够进行例如方法延迟,返回值修改,内存溢出,抛出异常等应用级别故障注入。 支持在物理机上进行进程,网络,JVM,压力,磁盘等不同类型的故障注入

    61240发布于 2021-08-26
领券