Linux内核版本
Linux 系统内核必须为 4.1 及以上版本。
不然会一直失败,可以从Chaos Mesh dashboard前端看到。
对native方法注入故障无效
实测对Thread.sleep(Long) 注入故障无效,猜测是因为对native方法无效,大概因为是由其它语言实现?
定义抛出异常的格式
抛出的自定义异常,例如:‘java.io.IOException(“BOOM”)’
格式看起来相当于Java new后面的部分。
注意即使没有参数也要有括号,否则Chaos Mesh dashboard前端看起来正常,实际不会生效,从k8s pod的日志能看到错误。
总体上按官方文档即可。
Chaos Mesh dashboard前端
虽然make
也会生成dashboard的镜像,但UI=1 make
才实际构建前端。
安装时设置tag和容器运行时
参考helm安装和离线安装。
可以设置镜像tag选择对应的ChaosMesh版本。
因为ChaosMesh需要指定容器运行时,helm/chaos-mesh默认的容器运行时是Docker,其它容器运行时需要特别指定。
比如安装tag为$YOUR_DOCKER_IMAGE_TAG 的镜像,k8s容器运行时为containerd:
helm install chaos-mesh helm/chaos-mesh -n=chaos-mesh --set images.registry=$DOCKER_REGISTRY --set images.tag=$YOUR_DOCKER_IMAGE_TAG --set chaosDaemon.runtime=containerd --set chaosDaemon.socketPath=/run/containerd/containerd.sock