查找和恢复 Chaosd 实验

    本章节介绍了如何使用命令行模式和服务模式查找 Chaosd 实验。

    运行以下命令可查看搜索命令 () 所支持的配置:

    参数说明

    示例

    1. ./chaosd search --kind network --status destroyed --limit 1

    通过该命令,你可以查找类型为 network 且状态为 destroyed(表示实验已恢复)的实验。

    运行命令后,结果中仅会输出一行数据。

    输出结果如下:

    1. --------------------------------------- --------- -------- ----------- --------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    2. 1f6c1253-522a-43d9-83f8-42607102b3b9 network delay destroyed 2021-11-02T15:14:07+08:00 {"schedule":"","duration":"","action":"delay","kind":"network","uid":"1f6c1253-522a-43d9-83f8-42607102b3b9","latency":"2s","jitter":"0ms","correlation":"0","device":"eth0","ip-address":"220.181.38.251","ip-protocol":"all"}

    目前,服务模式只支持查找出所有的实验。你可以通过访问 Chaosd 服务的 /api/experiments/ 路径来获取数据。

    示例

      恢复 Chaosd 实验

      在创建完实验后,如果想撤销实验造成的影响,可以使用实验的恢复功能。

      你可以通过使用 Chaosd recover UID 的方式恢复实验。

      以下为在命令行模式下通过该方式恢复实验的示例。

      1. 使用 Chaosd 创建一个 CPU 压力实验:

        1. chaosd attack stress cpu --workers 2 --load 10

        输出如下所示:

        请注意保存输出中的实验 UID 信息,以便在下一步操作中使用。

        1. chaosd recover 4f33b2d4-aee6-43ca-9c43-0f12867e5c9c

      你可以通过向 Chaosd 服务的 /api/attack/{uid} 路径发送 DELETE HTTP 请求的方式来恢复实验。

      以下为在服务模式下通过该方式恢复实验的示例。

      1. 向 Chaosd 服务发送 POST HTTP 请求,创建一个 CPU 压力实验:

        输出如下所示:

        请注意保存输出中的实验 UID 信息,以便在下一步操作中使用。