You need to enable JavaScript to run this app.
导航

添加故障

最近更新时间2024.01.25 15:42:10

首次发布时间2023.09.28 11:46:23

创建完成实验场景或演练场景后,即可添加故障。本文以在演练场景添加故障为例,为您介绍应用韧性增强服务所支持的故障类型和添加故障的方法。

背景信息

云原生 Kubernetes 场景和单机场景所支持的的故障类型有所不同。例如,Kubernetes Pod 维度支持 Pod 故障和 HTTP 故障,不支持主机故障和磁盘故障,具体的区别参见故障说明。

前提条件

  • 已创建实验场景或演练场景。

  • 如果需要配置中间件故障,需满足以下条件。

    中间件支持版本其他限制
    Redis6.0.0 及其子版本Redis 账户的 ACL 列表中包含 admin 类别命令,详情参见 Redis 官网文档
    MongoDB6.0.0 及其子版本MongoDB 账号具备全局权限。
    ES8.0.0 及其子版本ES 账号具备全局权限。
    RabbitMQ3.0.0 及其子版本
    RocketMQ4.5.0 及其子版本
    Kafka
    • kafka 7.0.01
    • zookeeper 7.0.1

操作步骤

  1. 登录演练场景页面。

    1. 登录 应用韧性增强服务控制台

    2. 在左侧导航栏,单击 实验管理 > 实验流程

    3. 实验流程 页面,单击目标实验流程。

    4. 实验详情 页面,单击页面右上角的 编辑

  2. 选中目标演练场景,在右侧画布单击 添加故障

  3. 选择故障类型,完成后单击 下一步

    说明

    不同故障目标所支持的故障类型可能不同,详细的故障类型说明参见 故障类型 文档中的说明。

    alt

  4. 配置故障参数。

    说明

    不同故障对应的故障配置可能不同,详细的故障配置参见 故障配置参数 文档中的说明。

    alt

  5. 配置故障插件。支持在故障前、故障中、故障后执行自定义脚本,例如,故障执行前可能会需要设置环境变量;故障执行中增加其他故障策略;故障运行后清理环境,满足用户自定义需求。

    • 是否忽略错误:仅对 故障前 插件生效,选择 则代表脚本出现错误会自动忽略继续执行。

    • 超时时间:超过一定的时间还未完成,即结束执行。

  6. 添加观测配置。混沌工程的一个重要原则是围绕稳态行为进行假设。通过对比实验结果和稳态假设条件,可以量化实验结果。

    支持 HTTP自定义 配置方式。

    • HTTP
    参数说明
    URL填写需要调用的 URL 链接。
    超时时间最长等待时长。
    方法名选择 HTTP 请求的 Method。
    Headers输入 HTTP 请求的 Header。
    稳态假设根据 RespCode 或 RespBody,设置稳态假设的阈值。
    智能暂停开启后,稳态假设没通过则自动停止故障。
    • 自定义
    参数说明
    命令输入自定义的稳态配置命令。
    执行超时时间设置稳态配置命令执行超时的时长。
    稳态假设根据命令执行结果,设置稳态假设的阈值。
    智能暂停开启后,稳态假设没通过则自动停止故障。
  7. 添加延迟执行。支持添加指定的时长,滞后故障的执行。

  8. 单击 确定,完成故障添加。