首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    istio框架(istio故障注入)

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

    61830编辑于 2022-08-01
  • 来自专栏腾讯云混沌工程团队

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

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

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

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

    在这篇博文中,我将带领大家探索如何在服务网格中进行故障注入实验,分享Chaos Engineering的最佳实践,并深入研究服务网格如Istio中的故障注入功能。 引言 混沌工程不仅仅是故意制造故障,而是一种科学的方法,通过故障注入来发现系统中的潜在问题,并验证系统的弹性。 服务网格,作为微服务架构的通信层,为我们提供了强大的故障注入工具,帮助我们更好地进行混沌实验。 正文 1. 什么是混沌工程? 混沌工程是一种通过主动注入故障来验证系统健壮性的方法。 2.1 Istio的故障注入功能 Istio允许我们在服务间的通信中注入故障,如延迟、错误等。 3.3 运行实验 使用服务网格的工具,如Istio,进行故障注入。 3.4 分析实验结果 收集实验数据,分析系统在故障下的表现,找出潜在的问题。 4.

    52910编辑于 2024-04-09
  • 故障注入在软件测试中实际应用

    一、为什么需要故障注入? 二、故障注入的四大应用场景场景 目标 典型故障类型 1. 用户体验保障 确保前端在后端异常时友好提示 接口超时、CDN失效、图片加载失败 三、故障注入分类与工具选型 1. k8s pod-network delay \ --names payment-pod-xxx \ --namespace prod \ --time 6000 \ # 延迟6秒 ❌ 无监控盲目注入 不知道系统是否真受影响 注入前建立基线,注入中实时看板❌ 一次性演练无闭环 问题重复发生 建立“发现→修复→验证”跟踪机制七、进阶:自动化故障注入流水线将故障注入融入

    86510编辑于 2025-09-17
  • 来自专栏腾讯云混沌工程团队

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

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

    57310编辑于 2024-03-15
  • DeepSeek 3FS源码分析(1) 故障注入

    CI/CD 动态性 支持运行时动态调整 需要重新编译 复杂度 高(分布式同步、持久化) 低(内存状态、线程局部) 故障类型 多样(失败、延迟、损坏等) 主要模拟操作失败 • Ceph 风格:用“命名的故障注入点 • 3FS 的故障注入框架基于 概率触发 + 作用域管理 的设计,通过 folly::RequestContext 实现跨协程的配置传递。 3fs设计特点 1 声明式 API: 通过 FAULT_INJECTION_SET(概率, 次数) 声明故障注入范围,具体故障类型由业务代码决定 2 RAII 自动管理: 利用 C++ 的 RAII 模式 FAULT_INJECTION_SET(10, 5) 是一个用于故障注入测试的宏,它会在当前代码作用域内设置故障注入参数: FaultInjection.h:16 • 第一个参数 (10): 表示故障注入的概率为 , 它本身不指定具体的故障类型(网络、服务或其) 具体注入什么故障取决于使用它的代码位置: 虽然 Rename.cc 本身不直接调用 FAULT_INJECTION(),但在实际运行中,故障注入会影响:

    27510编辑于 2025-11-20
  • 来自专栏Godev

    外包精通--Istio流量管理之故障注入(二)

    本小节演示如何通过故障注入来测试应用的弹性。 1. 创建一个故障注入的规则来延迟来自jason用户的流量。 然而,在productpage页面和reviews服务之间也有一个硬编码超时,编码为3s + 1次重试,共6s。因此,调用productpage来检查超时时间过早,并在6s之后抛出错误。 Istio的故障注入规则可以帮助您在不影响最终用户的情况下识别这些异常。 4. 确认创建的规则 $ kubectl get virtualservice ratings -o yaml 6.

    82270编辑于 2023-07-31
  • 来自专栏CNCF

    使用服务网格接口和Linkerd进行故障注入

    传统上,你需要在服务代码中添加某种类型的故障注入库,以便进行应用程序故障注入。值得庆幸的是,服务网格为我们提供了一种注入应用程序故障的方法,而无需修改或重新构建我们的服务。 这允许我们以一种与实现无关、跨服务网格工作的方式进行故障注入。 为此,我们首先部署一个只返回错误的新服务。 TCP_CONN authors 1/1 100.00% 6.6rps 3ms 58ms 92ms 6 books 1/1 100.00% 8.0rps 4ms 81ms 119ms 6 traffic 当然,故障注入是一个广泛的主题,还有许多更复杂的方法来注入故障,包括某些路由故障、只匹配特定条件的请求故障或在整个应用程序拓扑中传播单个“毒丸”请求。

    1.5K20发布于 2019-12-04
  • 来自专栏程序员吾真本

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

    实验工作流 实验工作流,包括编排顺序或并行执行的故障注入实验,查看实验状态和结果,暂停实验,支持用YAML或Web UI定义和管理实验。 可视化操作 可视化操作,包括可以在Web UI上点击鼠标,定义实验的范围、故障注入类型和调度规则,最后能展示实验结果。 安全控制 安全控制,包括使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。还可以通过设置命名空间注解,来指定允许进行混沌实验的命名空间,进一步保障对混沌实验的控制。 使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。 劣势 只能在K8S集群上使用。否则,就只能使用针对节点进行故障注入实验的附带工具chaosd。 临时执行的实验会无限期地运行。 Apache-2.0 license GitHub点赞数 5.9k 最近发布日期与版本 2023.06: v2.6.1 所属项目 CNCF云原生计算基金会孵化项目 * * * 你还知道有什么好用的开源故障注入工具

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

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

    实验工作流 实验工作流,包括编排顺序或并行执行的故障注入实验,查看实验状态和结果,暂停实验,支持用YAML或Web UI定义和管理实验。 可视化操作 可视化操作,包括可以在Web UI上点击鼠标,定义实验的范围、故障注入类型和调度规则,最后能展示实验结果。 安全控制 安全控制,包括使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。还可以通过设置命名空间注解,来指定允许进行混沌实验的命名空间,进一步保障对混沌实验的控制。 使用K8S原生提供的基于角色的访问控制功能,来管理故障注入的使用权限。 劣势 只能在K8S集群上使用。否则,就只能使用针对节点进行故障注入实验的附带工具chaosd。 临时执行的实验会无限期地运行。

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

    腾讯云云顾问混沌演练平台应运而生,通过精准的负载类故障注入,帮助企业提前发现并解决问题,提升系统稳定性。1. 什么是负载类故障注入? 负载类故障注入主要模拟系统在极端资源消耗情况下的表现,例如CPU满载、内存耗尽、IO压力过大等情况。这类故障注入帮助企业验证容器在资源紧张情况下的响应能力和弹性扩展机制。2. 具体步骤如下:动态部署混沌辅助执行Pod: 混沌工程控制平台接收到用户的故障注入请求后,会在目标业务容器所在的节点动态启动一个chaos-helper-pod,这个Pod内置了各种故障注入工具,如CPU 对操作系统的要求腾讯云云顾问混沌演练平台在执行此类故障注入时并不直接依赖目标容器内的操作系统环境,因此对操作系统本身无特殊要求。 小结腾讯云云顾问混沌演练平台通过其创新的PID迁移机制和独立的辅助执行环境,实现了容器负载类故障注入的精确控制,确保故障注入的效果真实、准确,同时保障了混沌平台自身运行的稳定性,成为企业提升容器应用弹性和可靠性的重要利器

    41921编辑于 2025-05-20
  • 来自专栏陈冠男的游戏人生

    开箱PowerShorter:给国内安全爱好者的故障注入设备

    PowerShorter 是为电压短路故障注入定制的一款专用设备,可实现被测设备的瞬时短路,干扰设备正常运行 戳这里了解什么是故障注入 设备已经上架淘宝啦,直接在淘宝搜索 PowerShorter 就能购买嗷 如果想要控制电磁继电器的话可以使用 RELAY2,执行这两条语句后会听到啪嗒啪嗒的声音,这就是电磁继电器吸合的响动 控制固态继电器通断只需要修改为 RELAY1 即可 同理,控制 GPIO 的方式是: 接下来介绍一下故障注入最重要的参数控制 10ns,然后执行短接 200 * 10ns,最后保持断开 1 * 10ns,如果后续不再操作将一直保持断开状态 这背后实际是控制 MOS 管对 E1 的 + 和 - 进行断开或短接,从而实现电压短路故障注入 然后将 GPIO1 拉高提供一个上升沿将毛刺触发,再看毛刺的状态就已经是 glitched 表示已经毛刺已经打出去了,E1 的 + 和 - 做了一次 200 * 10ns 的短路,红灯也又亮了起来 对于故障注入来说

    57720编辑于 2024-09-25
  • 来自专栏程序员吾真本

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

    ChaosBlade可针对多达7个场景开展故障注入实验,但网上官方的中英文文档质量欠佳,内容缺失,真心没有站在一般用户的角度来写,只能通过运行blade命令的help了解究竟有什么功能。 图片 一句话介绍 ChaosBlade是阿里巴巴开源的针对7个检验软件系统稳定性场景的混沌工程故障注入开源工具:主机基础资源、CRI容器、K8S平台、Java应用、C++应用、阿里云平台、其他服务。 场景6:阿里云平台 可注入故障包括卸载磁盘,挂载或卸载网络接口等。 优势 支持多达7个故障注入场景。 劣势 网上的中英文文档描述过于简略。每个功能往往就一句话。只能把工具装上,运行起来,通过help参数,逆向工程来发现有什么功能。 Apache-2.0 license Github点赞数 5.4k 最近发布日期与版本 2023.05: v1.7.2 所属项目 CNCF云原生计算基金会沙箱项目 * * * 你还知道有什么好用的开源故障注入工具

    1.1K00编辑于 2023-08-12
  • 来自专栏喵了个咪的博客空间

    三, 跨语言微服务框架 - Istio官方示例(自动注入.请求路由.流量控制.故障注入)

    基础的Istio环境已经搭建完成,我们需要开始了解Istio提供作为微服务网格的各种机制,也就是本文标题的自动注入.请求路由.故障注入.流量切换,官方很给力的准备的实例项目也不需要大家自己编写demo来进行测试 但是,出现了一个问题,Reviews 部分显示了错误消息,页面实际上用了大约 6s。 在 productpage 和 reviews 服务之间超时时间是 6s - 编码 3s + 1 次重试总共 6s ,reviews 和 ratings 服务之间的硬编码连接超时为 10s 。 Istio 的故障注入规则可帮助您识别此类异常,而不会影响最终用户。 PS : 请注意,这里仅限制用户 “jason” 的失败影响。如果您以任何其他用户身份登录,则不会遇到任何延迟。 4.2 HTTP abort进行故障注入 测试微服务弹性的另一种方法是引入 HTTP abort 故障,如果异常中断那么需要做出对应的处理。

    1K10发布于 2019-05-26
  • 来自专栏golang算法架构leetcode技术php

    mac 上学习k8s系列(36)istio part IV 内外路由和故障注入

    networking/virtual-service-reviews-test-v2.yaml virtualservice.networking.istio.io/reviews created 或者进行故障注入 destination: host: reviews subset: v1 如何headers的end-user 字段匹配了jason就走v2的reviews 接着我们看下如何做故障注入

    51520编辑于 2022-08-02
  • 来自专栏测试开发技术

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

    : Chaos Mesh支持多种故障注入方式,包括网络故障、节点故障、磁盘故障等,用户可以根据需求选择合适的故障注入方式进行测试。 可观测性和监控: Chaos Mesh提供了丰富的监控和可观测性功能,用户可以实时监控故障注入的效果,了解系统的稳定性和可靠性情况。 灵活的调度策略: 用户可以根据自己的需求定义故障注入的调度策略,包括定时触发、周期性触发等,以便更好地控制故障注入的时机和频率。 4、Chaos Mesh 使用步骤 1、创建故障注入实验:使用 Chaos Mesh 控制台或命令行工具创建故障注入实验,选择故障类型、目标应用程序、注入时间等参数。 6、结束实验:在实验持续时间结束后,可以使用以下命令结束实验: chaosctl stop my-network-delay 通过以上步骤,您可以安装和使用 Chaos Mesh 进行混沌工程实验,帮助提高系统的可靠性和稳定性

    1.1K11编辑于 2024-08-27
  • 来自专栏云计算与大数据

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

    4 系统演进 去哪儿网这边的混沌工程主要经历了 2 个阶段: 1、故障注入能力的建设。 4.1 故障演练 通过故障注入来模拟故障发生是混沌工程的基础能力。 在这个阶段主要提供 3 种场景的故障注入,机器关机,OS 层的故障,以及 Java 应用的故障注入,在此基础之上我们还做了场景化的功能。 于是我们中间件的同学进行了二次开发,增加了 AsyncHttpClient, QRedis 故障注入相关的插件,同时也针对 HTTP DUBBO 增加了基于调用点的故障注入功能。 6 未来规划 当前我们的故障演练平台已经支持80+次模拟机房断电演练,同时也已经有500+次日常演练,涉及核心应用50+,机器4000+,业务线也形成了按季度周期演练及上线前验证的良好文化氛围。

    1.5K31发布于 2021-08-26
  • 来自专栏程序员吾真本

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

    说到了测试,那么混沌工程实验与故障注入测试的区别是什么? 混沌工程实验与故障注入测试相辅相成 混沌工程实验是要证实或证伪复杂云系统在故障注入后的稳态假说是否成立,并研究其间系统的运行模式、未知的失效模式以及监控告警的有效性,以便增强系统稳定性设计。 可以使用下面公式来计算混沌工程实验与故障注入测试的成效。 下表包含了6个“严重级别”高且“业务影响时长”长的线上事故。哪些是适合运维部门来进行混沌工程实验的事件? CPU和IO耗尽,业务出现异常 严重 几百分钟 业务出现异常 因sql语句在对大表进行查询时未使用索引,造成服务器CPU和IO耗尽 优化SQL语句,增加索引;优化监控算法;落实数据库性能容量问题整改机制 6

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

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

    制定计划和流程:制定 Game-Day 整体流程,包括故障注入实验环节、应急响应SOP流程、恢复流程等,以确保演练顺利进行; 6. 3.3 演练结果观测 在演练过程中,实施人员可通过对系统稳态监控指标在故障注入后的表现来判断故障注入是否成功、系统稳态指标是否符合预期来观察演练的效果,评估系统的可用性和可靠性。 演练前,用户可以在混沌演练平台上轻松完成多种资源类型的可故障注入动作组合编排;演练后,系统可以帮助自动化执行故障恢复流程,减少了人为干预的风险。 挑战2: 演练涉及对象实例多 本次演练为了模拟真实单可用区出现故障的场景,需要一次性完成最多数百台实例的故障注入,操作难度大。 解决方案:混沌演练平台支持多实例并发故障注入,能够真实有效地模拟可用区级别的故障场景,极大提高了故障演练整体效率。

    1.6K152编辑于 2024-03-13
  • 来自专栏程序员吾真本

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

    Litmus 2.0关键特性 故障注入实验场景创建与编排 可用以下方式创建实验:实验模板,使用ChaosHub的实验从头自定义,预先创建的 YAML实验。支持故障注入实验调度(并行和顺序执行步骤)。 可安排单次或 Cron定时故障注入场景。可以用例优先级标注故障注入实验。 ChaosHub故障注入实验市场 Litmus拥有ChaosHub这个开源故障注入实验市场,托管 Litmus 所提供的各种故障注入实验。 这些实验是声明性的,并且可以根据需要进行调整。 混沌工程可观测性 可连接数据源(来自任何 Chaos Delegate)并监控故障注入场景。能可视化故障注入场景运行的统计数据和并做数据聚合。可比较两个或多个故障注入场景的观测数据。 故障注入场景管理 支持使用基础设施即代码的 GitOps 实现故障自动注入。允许从自定义镜像服务器(公共和私有)添加镜像。可测量并分析每个故障注入场景的韧性分数。

    55410编辑于 2023-08-16
领券