使用 Chaos Mesh 创建物理机故障
本文档介绍如何在 Chaos Mesh 中创建 PhysicalMachineChaos 混沌实验,以模拟物理机或虚拟机中的网络、磁盘、压力、JVM、时间等故障。
PhysicalMachineChaos 介绍
PhysicalMachineChaos 用于在物理机或虚拟机中模拟网络、磁盘、压力、JVM、时间等故障。在使用 Chaos Mesh 的 PhysicalMachineChaos 功能之前,你需要在物理机或虚拟机上部署 Chaosd。Chaos Mesh 与 Chaosd 的版本对应关系如下:
Chaos Mesh 版本 | Chaosd 版本 |
---|---|
v2.1.x | v1.1.x |
v2.2.x | v1.2.x |
运行 Chaosd Server
在使用 Chaos Mesh 创建 PhysicalMachineChaos 混沌实验前,你需要在待注入故障的所有物理机或虚拟机中部署服务模式的 Chaosd。部署 Chaosd 后运行 Chaosd Server 的方式如下:
- 部署 Chaosd 后,生成 TLS 证书,并创建
PhysicalMachine
:
- 有关部署的具体方法,请参考 Chaosd 的下载和部署。
- 完成部署后,在运行 Chaosd Server 前,需要先生成 TLS 证书,并在 Kubernetes 集群内创建
PhysicalMachine
。有关 TLS 证书的生成方式,请参考 Chaosctl 为 Chaosd 生成证书。
- 运行 Chaosd:
-
使用 Chaosctl 生成了 TSL 证书文件后,可以运行以下命令,启动服务模式的 Chaosd:
chaosd server --https-port 31768 --CA=/etc/chaosd/pki/ca.crt --cert=/etc/chaosd/pki/chaosd.crt --key=/etc/chaosd/pki/chaosd.key
注意使用 Chaosctl 生成的 TLS 证书文件的 保存路径为 Chaosctl 的默认输出路径。如果在生成证书时手动指定了其他路径,请手动将命令中的路径替换为对应的文件路径。
-
如果没有通过 Chaosctl 配置 TLS 证书,可以运行以下命令,启动服务模式的 Chaosd。但考虑到集群的安全性,不推荐使用这个方式:
chaosd server --port 31767
使用 Dashboard 方式创建实验
-
打开 Chaos Dashboard 面板,单击实验页面中的新的实验按钮创建实验: