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

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

    本文将介绍如何使用混沌工具对 Pod/Node 进行 CPU 负载故障注入,以达到指定的 CPU 负载百分比。 2. /chaos-executor attack --target cpu --action burn --flags "core-list=1,3;duration=100" 4. 实现原理 混沌工具在进行 CPU 负载故障注入时,主要通过以下方式实现: 启动 chaos_burncpu 进程,空跑 for 循环来消耗 CPU 时间片。 通过以上方法,我们可以轻松地对 Pod/Node 进行 CPU 负载故障注入,从而验证系统在不同负载下的表现,以及监控告警、流量调度、弹性伸缩等能力。 使用腾讯云混沌演练平台实施 CPU 高负载。 故障实现原理是预先在混沌演练平台探针管理处安装腾讯自研 Agent 探针。

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

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

    本文将介绍如何使用混沌工具对 Pod/Node 进行内存负载故障注入,以达到指定的内存占用百分比。腾讯云混沌演练平台故障动作:标准集群 Pod/普通节点-内存利用率高。 2. /chaos-executor attack --target mem --action burn --flags "mode=ram;percent=80;duration=100" 4. 实现原理 混沌工具在进行内存负载故障注入时,主要通过以下方式实现: 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++应用、阿里云平台、其他服务。 场景4:Java应用 可注入故障包括代码缓存爆满,内存不足,增加延迟,返回特定值,动态执行脚本,抛异常等。 场景5:C++应用 可注入故障包括增加延迟,运行中修改变量值,返回错误。 案例 国内有金融行业的用户,已经基于ChaosBlade开发了混沌工程工具平台,在测试环境注入故障,检验基础设施和容器平台的稳定性。 你所阅读的文章,来自“吾真本说混沌工程”知乎专栏。

    1.1K00编辑于 2023-08-12
  • 来自专栏猫头虎博客专区

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

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

    52910编辑于 2024-04-09
  • 来自专栏高可用

    混沌工程工具:业务代码注入原理(4)

    他们本质上都是通过修改字节码来实现了故障注入。下面我们来简单梳理下Java的基础知识,方便理解他们具体是怎么实现的。 混沌工程工具系列传送门: 1、 混沌工程工具:Chaos-mesh与Chaosblade技术实现与原理分析(1)-腾讯云开发者社区-腾讯云 2、 混沌工程工具:chaos-mesh注入项原理分析 (2)-腾讯云开发者社区-腾讯云 3、 混沌工程工具:chaosblade在服务器上注入项原理分析(3)-腾讯云开发者社区-腾讯云 4混沌工程工具:业务代码注入原理(4)-腾讯云开发者社区- 混沌工程工具:混沌工程定位及原则梳理(8)-腾讯云开发者社区-腾讯云 8、 混沌工程工具:一个混沌工程设计的例子(9)-腾讯云开发者社区-腾讯云 Java基础知识 Java程序运行概述 如下图, Byteman广泛用于Java应用程序的测试和调试,它能够帮助开发人员快速定位和解决问题,同时也支持在生产环境中进行故障注入和监控。

    1.4K12编辑于 2023-10-10
  • 来自专栏全栈程序员必看

    istio框架(istio故障注入)

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

    61830编辑于 2022-08-01
  • 来自专栏程序员吾真本

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

    雷达从外到内,分为4个环。最外的暂缓环中的技术,是开发人员所远离的。之后从外到内依次是评估环、试点环和采纳环。越往圆心的环中的技术,开发人员越青睐。 在Thoughtworks于2019年4月发布的技术雷达中,混沌工程保持在试点环 技术雷达的评估环,可以对应鸿沟曲线的创新者(Innovators)区间;试点环对应早期采纳者(Early Adopters 能否举一个红蓝军协作开展混沌工程实验(从测试环境到生产环境)的整个过程的例子? 3 你们在实践混沌工程时,遇到了什么阻力?你们是如何应对阻力的? 4 企业内的分布式系统一般会由多个开发团队维护。 2 你们所实践的混沌工程应用,与传统的测试团队的软件测试,以及与运维部门的传统故障演练,有什么区别?差异化优势在哪里? 3 如何保障故障注入后的最小化爆炸半径? 4 你们所开展的故障注入实验,是否主要针对基础设施层或容器平台层?是否有针对应用服务层做故障注入实验?

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

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

    雷达从外到内,分为4个环。最外的暂缓环中的技术,是开发人员所远离的。之后从外到内依次是评估环、试点环和采纳环。越往圆心的环中的技术,开发人员越青睐。 如果是甲方购买了乙方的虚拟机和容器平台,然后再在上面做相关的故障注入实验,本质上是甲方再次花钱为乙方做回归测试。企业一旦在上面两个方面开展混沌工程应用工作,过程就相对固化下来。 能否举一个红蓝军协作开展混沌工程实验(从测试环境到生产环境)的整个过程的例子?3 你们在实践混沌工程时,遇到了什么阻力?你们是如何应对阻力的?4 企业内的分布式系统一般会由多个开发团队维护。 2 你们所实践的混沌工程应用,与传统的测试团队的软件测试,以及与运维部门的传统故障演练,有什么区别?差异化优势在哪里?3 如何保障故障注入后的最小化爆炸半径? 4 你们所开展的故障注入实验,是否主要针对基础设施层或容器平台层?是否有针对应用服务层做故障注入实验?

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

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

    从公开信息看,国内的混沌工程实践比较早的是阿里,阿里的团队分享了一些混沌工程的实践经验,开源了故障注入的代码,阿里云还有一个故障演练的应用(虽然我认为混沌工程与演练是有区别的)。 4、挖掘架构风险与加强应急处置能力 与故障事前管理的“发现潜在问题并修复”、“提升故障处置阶段效率”两个目标价值一致,传递到混沌工程的价值,我觉得混沌工程的价值应该关注:挖掘架构风险与加强应急处置能力 (4)其它:根据应急处理过程 ,查看预案或手册完备度、B岗是否就位…… 5、混沌工程主流方法概括 没有亲身经历过混沌工程,我摘一个阿里同学梳理的混沌工程步骤: 确定初步的实验需求和实验对象; 通过实验可行性评估 :计划管理、自动化/线上化执行、故障观察、事后环境恢复4点。 执行层面,加强故障注入、故障观察、故障恢复的管控能力,控制好故障影响范围,在对生产保持敬畏之心的基础上践行混沌工程,并建立持续优化的闭环协同机制,混沌工程最终是为了解决问题。

    1.8K41发布于 2021-04-26
  • 来自专栏butterfly100

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

    什么是混沌工程? 2. 混沌工程的实践原则 3. 混沌工程的好处 4. 基于上述原则如何落地? 4.1 故障注入能力 4.2 平台化建设 4.3 应用推广 5. :API 调用 Gallery 的 rpc 请求注入中断故障 4、稳态验证:通过 GetGallery 监控指标进行容错假设的验证,预期故障注入后: 控制组:大量 countSuccess(请求成功数) 4、自动化实验以持续运行 混沌实验的初始阶段可以手动执行,快速落地并获得收益,但这是劳动密集型、不可持续的。 以下是两个 star 较多、开源社区较为活跃的混沌工程项目。故障注入都做到了开箱即用、业务无感知,不需要业务配合写一些混沌工程相关的代码,也不需要更改系统的部署逻辑。 4.2 平台化建设 基于故障注入的能力,将混沌实验的流程平台化,让用户更方便的使用。如下图: ? (1)平台产品层 基于上文「3.

    1.7K41发布于 2021-07-16
  • 来自专栏程序员吾真本

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

    与运维团队一起实践了近一年的混沌工程后,获得了以下启发: 混沌工程的价值,就是要提升应对云生产环境线上事故的时效性和有效性 混沌工程实验与故障注入测试相辅相成,在证实稳态假说后,前者可以转化为后者 稳态行为假说 说到了测试,那么混沌工程实验与故障注入测试的区别是什么? 混沌工程实验与故障注入测试相辅相成 混沌工程实验是要证实或证伪复杂云系统在故障注入后的稳态假说是否成立,并研究其间系统的运行模式、未知的失效模式以及监控告警的有效性,以便增强系统稳定性设计。 优化流量管控,对短时高频交易做好熔断处理;调用方优化旁路策略 3 交换机在变更过程中出现网络丢包导致业务功能异常 严重 上百分钟 业务功能异常 交换机在变更过程中出现网络丢包 优化应用的重启机制;优化应用监控 4 因版本控制失误,不该本次上线的配置变更提前上线,导致上千笔交易失败 严重 上千分钟 上千笔交易失败 因版本控制失误,不该本次上线的配置变更提前上线 版本控制;优化应用逻辑;上线前配置检查;完善监控 因为前4个线上事故都是有关磁盘

    1K21编辑于 2022-09-26
  • 来自专栏腾讯云智能顾问

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

    环境准备:首先在测试环境进行预演练,然后在生产环境维护期间进行正式演练; 4. 逻辑层虚拟机、容器集群容灾能力 4. 数据层CDB/CRS/TDSQL容灾能力 上述故障演练均基于腾讯云混沌演练平台(CFG)完成,业务团队在混沌演练平台上完成了实例选取、演练场景动作的编排、可视化故障注入、演练报告等全流程操作。 解决方案:混沌演练平台支持多实例并发故障注入,能够真实有效地模拟可用区级别的故障场景,极大提高了故障演练整体效率。 解决方案:混沌演练平台集成了腾讯云监控各类基础云产品的监控指标体系,用户可以在混沌平台上快捷地集中查看各类云产品实例级别的的指标监控变化,实时观测故障注入效果,并对演练中可能出现的风险进行有效把控。

    1.6K152编辑于 2024-03-13
  • 来自专栏测试开发技术

    推荐一款开源混沌工程测试平台:Chaos Mesh

    1、Chaos Mesh 介绍 Chaos Mesh是一个开源的混沌工程平台,旨在帮助用户在生产环境中测试、验证和优化其应用程序的可靠性和稳定性。 通过引入故障注入混沌工程原则,Chaos Mesh可以模拟各种故障场景,如网络延迟、节点故障、磁盘故障等,以帮助用户发现和解决系统中的潜在问题。 4、Chaos Mesh 使用步骤 1、创建故障注入实验:使用 Chaos Mesh 控制台或命令行工具创建故障注入实验,选择故障类型、目标应用程序、注入时间等参数。 4、分析结果:分析实验运行期间收集的数据和日志,评估系统的表现,并根据需要进行调整和优化。 请确保在生产环境中谨慎使用混沌工程工具,以避免对系统造成不必要的影响。 温馨提醒:2024年最新实战测开专项技能提升训练营开学了!

    1.1K11编辑于 2024-08-27
  • 来自专栏腾讯云智能顾问

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

    上篇 腾讯云Status Page(健康看板)容灾设计与混沌演练实践——上篇 我们讨论架构设计和部署,接下来的内容是关于相应故障演练验证的实践 故障注入主要通过腾讯云混沌演练平台实现,腾讯云有对外服务的版本 通过主源VIP指向Nginx制造异常http状态码返回 server { listen 443; location / { return 400; // 包括不同的 5xx 4xx } } 接下来观察页面访问是否正常,且分析各个可用区部署的请求日志和Nginx的日志 故障注入场景演练实施后请求的示意图: 逻辑层故障演练 主源逻辑层地域所有POD异常 通过腾讯云混沌演练平台 pod Failed注入 主源逻辑层单可用区所有POD异常 通过腾讯云混沌演练平台pod Failed注入 逻辑层地域所有POD异常和单可用区所有POD异常2种故障注入后的请求示意图,都是主源VIP返回异常码后 ,进行备源重试: 主源逻辑层单可用区内部分POD异常 通过腾讯云混沌演练平台pod Failed注入,包括前后端不同场景 故障注入后的K8s平台自动处理示意图 数据层故障演练 通过腾讯云混沌演练平台进行注入

    1.2K81编辑于 2024-03-11
  • 来自专栏深度学习与python

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

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

    1.2K21发布于 2021-06-08
  • 来自专栏k8s技术圈

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

    ,还是只想要底层的远程注入、编排调度等平台能力,甚至是只想要单机故障注入能力,或者对云上/云下的目标进行管理以及注入故障,都有相应的部署方案可以满足 丰富的故障注入能力,云原生混沌工程 由于蚂蚁集团对攻防演练的高度重视 平台功能强大,支撑完整“混沌工程生命周期”,面向自动化 ChaosMeta 覆盖准入检测、流量注入、故障注入、故障度量、故障恢复、恢复度量等多个阶段的平台能力,作为“自动化混沌工程”的技术基础。 故障度量是对故障注入效果的有效性度量,而恢复度量是对防御平台恢复能力的有效性度量。度量能力是实现混沌工程自动化以及智能化的关键能力。 127.0.0.1:8080 # 创建一个实验,给lo网卡注入2s网络延迟,10分钟后自动恢复 chaosmetad inject network delay -i lo -l 2s --uid test-fg3g4 -t 10m # 查看实验信息,测试效果 chaosmetad query curl 127.0.0.1:8080 # 人工恢复实验 chaosmetad recover test-fg3g4 规划

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

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

    混沌工程实验性价比太低了。测试、研发和运维三个部门都投入了大量人力物力,在准生产环境做了不少故障注入实验。但发现的问题还是比较少。”在一次混沌工程实践回顾会上,一位测试人员如是说。 这家银行的这4个部门的协作情况是怎样的呢? 最先响应运维部门实践混沌工程召唤的,是测试部门。测试部门认为混沌工程的故障注入实验,能丰富他们的压力测试和探索性测试的场景,从而发现更多软件缺陷。 他们认为,混沌工程的故障注入实验,其实就是另一种测试而已。 确实,测试部门就是把混沌工程故障注入实验,当作探索性测试来做的。“混沌工程实验,类似于探索性测试。 缺乏明确的稳态行为假说 由于测试人员使用探索性测试的方法,来实践混沌工程故障注入实验,所以在实验结果报告中,找不到“系统稳态行为假说”的字眼。 这些测试人员正在使用一款开源工具,来进行混沌工程故障注入实验。由于这款工具,提供了5种可供注入的原子故障,于是测试人员也就设计了5个实验。

    48620编辑于 2021-12-16
领券