在 KubeSphere 中部署 Chaos Mesh
Chaos Mesh 是一个开源的云原生混沌工程平台,提供丰富的故障模拟类型,具有强大的故障场景编排能力,方便用户在开发测试中以及生产环境中模拟现实世界中可能出现的各类异常,帮助用户发现系统潜在的问题。
本教程演示了如何在 KubeSphere 上部署 Chaos Mesh 进行混沌实验。
准备工作
- 部署 KubeSphere 应用商店。
- 您需要为本教程创建一个企业空间、一个项目和两个帐户(ws-admin 和 project-regular)。帐户 ws-admin 必须在企业空间中被赋予 workspace-admin 角色,帐户 project-regular 必须被邀请至项目中赋予 operator 角色。若还未创建好,请参考创建企业空间、项目、用户和角色。
开始混沌实验
步骤1: 部署 Chaos Mesh
使用
project-regular
身份登陆,在应用市场中搜索chaos-mesh
,点击搜索结果进入应用。进入应用信息页后,点击右上角安装按钮。
进入应用设置页面,可以设置应用名称(默认会随机一个唯一的名称)和选择安装的位置(对应的 Namespace) 和版本,然后点击右上角下一步。
根据实际需要编辑
values.yaml
文件,也可以直接点击安装使用默认配置。等待 Chaos Mesh 开始正常运行。
访问应用负载, 可以看到 Chaos Mesh 创建的三个部署。
步骤 2: 访问 Chaos Mesh
前往应用负载下服务页面,复制 chaos-dashboard 的 NodePort。
您可以通过
${NodeIP}:${NODEPORT}
方式访问 Chaos Dashboard。并参考管理用户权限文档,生成 Token,并登陆 Chaos Dashboard。
步骤 3: 创建混沌实验
在开始混沌实验之前,需要先确定并部署您的实验目标,比如,测试某应用在网络延时下的工作状态。本文使用了一个 demo 应用
web-show
作为待测试目标,观测系统网络延迟。 你可以使用下面命令部署一个 Demo 应用web-show
:curl -sSL https://mirrors.chaos-mesh.org/latest/web-show/deploy.sh | bash
备注
web-show 应用页面上可以直接观察到自身到 kube-system 命名空间下 Pod 的网络延迟。
访问 web-show 应用程序。从您的网络浏览器,进入
${NodeIP}:8081
。登陆 Chaos Dashboard 创建混沌实验,为了更好的观察混沌实验效果,这里只创建一个独立的混沌实验,混沌实验的类型选择网络攻击,模拟网络延迟的场景:
实验范围设置为 web-show 应用:
提交混沌实验后,查看实验状态:
访问 web-show 应用观察实验结果 :
更多详情参考 Chaos Mesh 使用文档。