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

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

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

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

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

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

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

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

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

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

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

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

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

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

    41921编辑于 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
  • 来自专栏k8s技术圈

    蚂蚁开源的云原生混沌工程平台 - ChaosMeta

    ,还是只想要底层的远程注入、编排调度等平台能力,甚至是只想要单机故障注入能力,或者对云上/云下的目标进行管理以及注入故障,都有相应的部署方案可以满足 丰富的故障注入能力,云原生混沌工程 由于蚂蚁集团对攻防演练的高度重视 平台功能强大,支撑完整“混沌工程生命周期”,面向自动化 ChaosMeta 覆盖准入检测、流量注入、故障注入、故障度量、故障恢复、恢复度量等多个阶段的平台能力,作为“自动化混沌工程”的技术基础。 故障度量是对故障注入效果的有效性度量,而恢复度量是对防御平台恢复能力的有效性度量。度量能力是实现混沌工程自动化以及智能化的关键能力。 举个例子,比如一次演练的故障效果预期是某个服务的请求成功量下跌50%,并且预期对应的防御平 台能5分钟内发现并且10分钟内恢复,执行手段是通过CPU打满实现。 分钟后自动恢复 chaosmetad inject network delay -i lo -l 2s --uid test-fg3g4 -t 10m # 查看实验信息,测试效果 chaosmetad

    2.3K10编辑于 2023-11-27
  • 来自专栏程序员吾真本

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

    图片创建者MayaData一句话介绍LitmusChaos 是一个在故障创建与编排方面更胜一筹的K8S混沌工程开源平台,如提供故障注入实验库 ChaosHub,使团队能够以受控方式,引入故障注入实验来识别基础设施中的弱点和潜在停机隐患 混沌工程可观测性可连接数据源(来自任何 Chaos Delegate)并监控故障注入场景。能可视化故障注入场景运行的统计数据和并做数据聚合。可比较两个或多个故障注入场景的观测数据。 这对于刚刚接触混沌工程的团队来说,是一项挑战。 开源许可证Apache-2.0 licenseGitHub点赞数3.8k最近发布日期与版本2023.07: 3.0.0-beta10所属项目CNCF云原生计算基金会项目* * *你还知道有什么好用的开源故障注入工具 你所阅读的文章,来自“吾真本说混沌工程”知乎专栏。

    95070编辑于 2023-08-15
  • 来自专栏腾讯云智能顾问

    【云顾问-混沌演练】精细演练,稳定云端——腾讯云助阵金蝶云,守护小微业务稳定高可用

    改造完成后,业务团队通过腾讯云混沌演练平台进行故障注入,以检验业务系统的容灾效果,从而提升业务系统韧性。 本次演练主要针对金蝶小微业务线(精斗云&KIS云),涉及10大业务故障场景,是财务、新零售、电商等领域行业提高系统可用性的一次最佳实践。 事中演练: ○ 本次演练全程借助云顾问·混沌演练平台进行故障注入,演练开始后,负责人逐个点击执行故障注入和故障恢复; ○ 故障注入后由金蝶各业务负责人观察故障对业务的具体影响,监控数据&告警是否正常触达等 执行故障注入 云顾问·混沌演练平台提供可视化视图,用户在演练过程中可以实时查看故障动作执行状态(成功/失败/执行中)和注入效果: 观测监控指标 在故障注入过程中,通过平台集成的监控面板,对演练对象实例监控指标进行观测 故障注入后部分服务受到影响,收到系统告警提示,故障恢复后告警停止等。

    72510编辑于 2024-03-12
  • 来自专栏猫头虎博客专区

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

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

    52910编辑于 2024-04-09
  • 来自专栏CNCF

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

    之前在定义定期执行的混沌时,仅使用 “cron: @every 10s” 与 “duration: 5s” 描述行为并不能满足大家的需求。 更多的故障类型 Chaos Mesh 已经支持了如 NetworkChaos,IOChaos,StressChaos 等系统层面的故障注入,也支持了如 AWSChaos,GCPChaos 这种云服务类型的故障注入 我们在 Chaos Mesh 2.0 中也加入了应用层的故障注入功能。 目前 Chaos Mesh 借助 chaos-exec-jvm 实现了 JVMChaos,能够进行例如方法延迟,返回值修改,内存溢出,抛出异常等应用级别故障注入。 支持在物理机上进行进程,网络,JVM,压力,磁盘等不同类型的故障注入

    61340发布于 2021-08-26
  • 来自专栏深度学习与python

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

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

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

    如何让混沌工程实验降本增效

    混沌工程实验性价比太低了。测试、研发和运维三个部门都投入了大量人力物力,在准生产环境做了不少故障注入实验。但发现的问题还是比较少。”在一次混沌工程实践回顾会上,一位测试人员如是说。 最先响应运维部门实践混沌工程召唤的,是测试部门。测试部门认为混沌工程的故障注入实验,能丰富他们的压力测试和探索性测试的场景,从而发现更多软件缺陷。 他们认为,混沌工程的故障注入实验,其实就是另一种测试而已。 确实,测试部门就是把混沌工程故障注入实验,当作探索性测试来做的。“混沌工程实验,类似于探索性测试。 缺乏明确的稳态行为假说 由于测试人员使用探索性测试的方法,来实践混沌工程故障注入实验,所以在实验结果报告中,找不到“系统稳态行为假说”的字眼。 作者简介 最近10年,专注辅导国内近20家大中型企业研发团队的工程生产力赋能。曾在社区主持过几十次编程道场,人称“道长”。著《驯服烂代码》,译《发布!》第2版,合译《混沌工程》。

    48620编辑于 2021-12-16
  • 来自专栏PingCAP的专栏

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

    ,仅使用 “cron: @every 10s” 与 “duration: 5s” 描述行为并不能满足大家的需求。 更多的故障类型 Chaos Mesh 已经支持了如 NetworkChaos,IOChaos,StressChaos 等系统层面的故障注入,也支持了如 AWSChaos,GCPChaos 这种云服务类型的故障注入 我们在 Chaos Mesh 2.0 中也加入了应用层的故障注入功能。 目前 Chaos Mesh 借助 chaos-exec-jvm 实现了 JVMChaos,能够进行例如方法延迟,返回值修改,内存溢出,抛出异常等应用级别故障注入。 支持在物理机上进行进程,网络,JVM,压力,磁盘等不同类型的故障注入

    64540发布于 2021-08-03
  • 来自专栏程序员吾真本

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

    Litmus 最初是 OpenEBS(K8S下存储系统) 的测试工具,后来发展成为知名的 Kubernetes 原生混沌工程开源平台。 创建者 MayaData 一句话介绍 LitmusChaos 是一个在故障创建与编排方面更胜一筹的K8S混沌工程开源平台,如提供故障注入实验库 ChaosHub,使团队能够以受控方式,引入故障注入实验来识别基础设施中的弱点和潜在停机隐患 混沌工程可观测性 可连接数据源(来自任何 Chaos Delegate)并监控故障注入场景。能可视化故障注入场景运行的统计数据和并做数据聚合。可比较两个或多个故障注入场景的观测数据。 这对于刚刚接触混沌工程的团队来说,是一项挑战。 开源许可证 Apache-2.0 license GitHub点赞数 3.8k 最近发布日期与版本 2023.07: 3.0.0-beta10 所属项目 CNCF云原生计算基金会项目

    55510编辑于 2023-08-16
  • 银行核心背后的落地工程体系丨混沌测试的场景设计与实战演练

    一个新的业务系统在设计之初,不仅要满足当前的业务需求,还要考虑满足未来的业务发展需求,尤其是在极致稳定性要求下,银行核心系统的设计需要考虑未来 5 年至 10 年以上的业务发展需求。 磁盘:对物理机的磁盘进行故障注入,支持增加读写磁盘负载、填充磁盘等操作。主机:对物理机本身进行故障注入,支持关机等操作。 重新选举)应用连接池重连能力(注意关注并优化连接池配置、负载探活配置)以下故障注入跟踪表供参考(为方便展现,部分信息项简化合并):建议采用分级故障注入策略,实例级故障注入时需要根据不同的实例角色进行, 测试结果表明,单表数据(实测多张相关联业务表等比例增长)从百万级到 10 亿 急速增长的情况下,相关业务的 SQL 时延几乎不受影响,打消了客户的疑虑。 机房级中断类故障分为两种情况:同城 (从) 机房离线(同城网络中断、批量宕机失联等)会导致 TiDB 服务中断,RPO=0,RTO 时间受服务降级参数影响 (通常设置 10s-30s),可自愈,不需要应急预案

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

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

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

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

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

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

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

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

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

    1.8K41发布于 2021-04-26
领券