快速试用(测试推荐)

本篇文档描述如何在测试环境或本机环境快速试用 Chaos Mesh。

快速试用(测试推荐) - 图1注意

本文档提供的 Chaos Mesh 安装方式为脚本安装,仅供快速试用。

如果需要在生产环境或者是其他严格的非测试场景下安装,推荐使用 Helm,详情请参考使用 Helm 安装(生产推荐)

环境准备

在试用之前,请先确保环境中已经部署 Kubernetes 集群。如果尚未部署 Kubernetes 集群,可以参考以下链接完成部署:

快速安装

要在试用环境中安装 Chaos Mesh,请运行以下脚本:

快速试用(测试推荐) - 图2注意

  • 如果当前环境为 kind,请在脚本后添加 --local kind 参数。

    若需要指定 kind 版本,请在脚本后添加 --kind-version xxx 参数,如:

  • 如果当前环境为 K3s,请在脚本后添加 --k3s 参数。

  • 如果当前环境为 Microk8s,请在脚本后添加 --microk8s 参数。

运行此安装脚本后,Chaos Mesh 将会自动安装与版本相符的 CustomResourceDefinition (CRD)、所有需要的组件、及相关的 Service Account 配置。

如果想了解更多的安装细节,请参考 install.sh 的源代码

验证安装

要查看 Chaos Mesh 的运行情况,请执行以下命令:

  1. kubectl get po -n chaos-testing

以下是预期输出:

  1. NAME READY STATUS RESTARTS AGE
  2. chaos-controller-manager-69fd5c46c8-xlqpc 3/3 Running 0 2d5h
  3. chaos-daemon-jb8xh 1/1 Running 0 2d5h
  4. chaos-dashboard-98c4c5f97-tx5ds 1/1 Running 0 2d5h

如果你的实际输出与预期输出相符,表示 Chaos Mesh 已经成功安装。

快速试用(测试推荐) - 图3注意

如果实际输出的 STATUS 状态不是 Running,则需要运行以下命令查看 Pod 的详细信息,然后依据错误提示排查并解决问题。

  1. # 以 chaos-controller 为例
  2. kubectl describe po -n chaos-testing chaos-controller-manager-69fd5c46c8-xlqpc

快速试用(测试推荐) - 图4注意

如果手动关闭了 leader-electionchaos-controller-manager 应该只有 1 个实例。

  1. NAME READY STATUS RESTARTS AGE
  2. chaos-controller-manager-69fd5c46c8-xlqpc 1/1 Running 0 2d5h
  3. chaos-daemon-jb8xh 1/1 Running 0 2d5h
  4. chaos-dashboard-98c4c5f97-tx5ds 1/1 Running 0 2d5h

运行 Chaos 实验

验证安装完成后,你可以运行一个 Chaos 实验来体验 Chaos Mesh 的功能。

请参考运行试验进行创建。成功创建实验后,你可以通过 Chaos Dashboard 观察实验的运行状态。

卸载 Chaos Mesh

如要卸载 Chaos Mesh,请执行以下命令:

也可以通过删除 chaos-testing 命名空间直接卸载 Chaos Mesh:

  1. kubectl delete ns chaos-testing

常见问题解答

为什么安装后根目录会出现 local 目录

如果当前环境并没有安装 kind 但你在安装命令中使用了 --local kind 参数,install.sh 安装脚本将会自动安装 kind 到根目录下的 local 目录中。