跳至主内容
版本:2.6.7

查看混沌实验的结果

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

本文介绍如何使用 Chaos Mesh 查看混沌实验的运行状态和结果。

混沌实验步骤介绍

在 Chaos Mesh 中,混沌实验的生命周期根据运行流程分为四个阶段:

  • 注入中(Injecting):混沌实验正在进行故障注入。此阶段通常持续时间较短。若"注入中"状态持续过久,可能是实验出现异常,此时可检查Events定位问题原因。

  • 运行中(Running):当故障成功注入所有目标 Pod 后,混沌实验进入运行阶段。

  • 已暂停(Paused):对运行中的混沌实验执行暂停操作时,Chaos Mesh 会恢复所有目标 Pod 中被注入的故障,此时实验状态为暂停。

  • 已完成(Finished):若实验配置了duration参数且运行时间达到设定值,Chaos Mesh 将恢复所有目标 Pod 中被注入的故障,此时实验状态为完成。

使用 Chaos Dashboard 查看结果

通过 Chaos Dashboard 可在以下任意页面查看混沌实验的运行阶段:

  • 混沌实验列表页:

    实验状态
    实验状态

  • 混沌实验详情页:

    实验状态
    实验状态

备注
  • 若**"注入中"阶段持续过久,可能是混沌实验存在异常(例如配置的选择器未匹配到目标 Pod)。此时可检查Events**定位异常原因并验证实验配置。
  • Chaos Dashboard 仅展示混沌实验的主要阶段。如需获取更详细的实验状态信息,请运行kubectl命令。

使用 kubectl 命令查看结果

执行以下kubectl describe命令,通过检查实验对象的StatusEvents确认混沌实验结果:

kubectl describe podchaos pod-failure-tikv -n tidb-cluster

预期输出如下:

...
Status:
Conditions:
Reason:
Status: False
Type: Paused
Reason:
Status: True
Type: Selected
Reason:
Status: True
Type: AllInjected
Reason:
Status: False
Type: AllRecovered
Experiment:
Container Records:
Id: tidb-cluster/basic-tikv-0
Phase: Injected
Selector Key: .
Desired Phase: Run
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal FinalizerInited 39s finalizer Finalizer has been inited
Normal Paused 39s desiredphase Experiment has been paused
Normal Updated 39s finalizer Successfully update finalizer of resource
Normal Updated 39s records Successfully update records of resource
Normal Updated 39s desiredphase Successfully update desiredPhase of resource
Normal Started 17s desiredphase Experiment has started
Normal Updated 17s desiredphase Successfully update desiredPhase of resource
Normal Applied 17s records Successfully apply chaos for tidb-cluster/basic-tikv-0
Normal Updated 17s records Successfully update records of resource

输出内容包含两个部分:

  • Status

    根据混沌实验的运行流程,Status提供四种状态记录:

    • Paused:表示混沌实验处于"已暂停"阶段
    • Selected:表示混沌实验已正确选定待注入故障的目标 Pod
    • AllInjected:表示故障已成功注入所有目标 Pod
    • AllRecoverd:表示注入的故障已从所有目标 Pod 成功恢复

    通过这四种状态的组合可推断当前实验运行状态,例如:

    • PausedSelectedAllRecoverdTrueAllInjectedFalse时,表示当前实验处于暂停状态
    • PausedTrueSelected同时为False时,表示当前实验无法选定待注入故障的目标 Pod
    备注

    需综合状态记录进行分析:例如当PausedTrue表示实验暂停,但若同时SelectedFalse,则说明实验无法选定目标 Pod。

  • Events

    包含混沌实验整个生命周期中的操作记录,可用于检查实验状态及故障排查。