本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

Litmus 是一个 Kubernetes 原生的混沌工程工具集,旨在通过模拟真实世界故障场景,帮助云原生开发者和 SRE 团队验证系统韧性、发现潜在弱点,并提升生产环境中 Kubernetes 部署的稳定性。Litmus 基于 Kubernetes 自定义资源定义(CRD)构建,提供声明式的混沌实验配置与执行能力,实现故障注入、编排与监控的全流程自动化。
ChaosExperiment)、执行引擎(ChaosEngine)和结果监控(ChaosResult),与 Kubernetes 控制平面深度集成,支持声明式配置与生命周期管理。ChaosResult CRD),集成 Prometheus 指标,支持故障影响可视化与结果分析。pod-delete、node-cpu-hog),支持自定义故障场景(通过编写 CRD 或扩展实验镜像)。kubectl 命令行工具(已配置集群访问权限)。# 添加 Litmus 仓库 helm repo add litmuschaos [***] helm repo update # 安装 Litmus 核心组件(混沌控制器、CRD、实验模板) helm install litmus litmuschaos/litmus --namespace litmus --create-namespace
# 应用 Litmus CRD 与控制器部署清单 kubectl apply -f [***]
ChaosExperiment CRD)| 参数路径 | 类型 | 说明 | 示例值 |
|---|---|---|---|
spec.targets.kind | string | 目标资源类型(如 Pod、Node、Deployment) | Pod |
spec.targets.name | string | 目标资源名称(支持通配符或标签选择器) | nginx-deploy-xxxx |
spec.chaosDuration | string | 故障持续时间(如 30s、5m) | 60s |
spec.faults[0].name | string | 故障类型(如 pod-delete、network-latency) | pod-delete |
spec.faults[0].params | map | 故障参数(如网络延迟时长、CPU 压力值) | {"duration": "30s"} |
ChaosEngine CRD)| 参数路径 | 类型 | 说明 | 示例值 |
|---|---|---|---|
spec.appinfo.appns | string | 目标应用命名空间 | default |
spec.appinfo.applabel | string | 目标应用标签(键值对格式) | app=nginx |
spec.experiments[0].name | string | 引用的 ChaosExperiment 名称 | pod-delete |
spec.experiments[0].rank | int | 实验执行优先级(数值越小优先级越高,支持串行执行) | 1 |
Litmus 控制器(litmus-controller)支持通过环境变量调整运行参数,常见配置如下:
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
WATCH_NAMESPACE | 控制器监控的命名空间(* 表示所有) | * |
LOG_LEVEL | 日志级别(info/debug) | info |
METRICS_PORT | 指标暴露端口 | 8080 |
通过 Helm 安装 Litmus 到 litmus 命名空间:
helm install litmus litmuschaos/litmus \ --namespace litmus \ --create-namespace \ --set controller.logLevel=debug # 可选:调整日志级别为 debug
ChaosExperiment CRD(定义故障类型):# pod-delete-experiment.yaml apiVersion: litmuschaos.io/v1alpha1 kind: ChaosExperiment metadata: name: pod-delete namespace: litmus spec: targets: - kind: Pod name: "" # 留空表示通过标签选择 label: "app=nginx" # 目标 Pod 标签 chaosDuration: "60s" # 故障持续 60 秒 faults: - name: pod-delete params: - name: duration value: "30s" # 单次 Pod 驱逐后,30 秒内不再重复驱逐
应用配置:
kubectl apply -f pod-delete-experiment.yaml
ChaosEngine CRD(执行实验):# nginx-pod-delete-engine.yaml apiVersion: litmuschaos.io/v1alpha1 kind: ChaosEngine metadata: name: nginx-pod-delete namespace: default spec: appinfo: appns: "default" # 目标应用命名空间 applabel: "app=nginx" # 目标应用标签 experiments: - name: pod-delete # 引用上述 ChaosExperiment 名称 rank: 1 # 优先级 1(立即执行)
应用配置并启动实验:
kubectl apply -f nginx-pod-delete-engine.yaml
ChaosResult CRD 状态:kubectl get chaosresult nginx-pod-delete -n default -o yaml
结果中 status.verdict 字段为 Pass 表示实验执行成功,status.failureReason 会记录失败原因(如目标 Pod 不存在)。
pod-delete 而非 node-failure)。ClusterRole)以操作节点、网络等资源,生产环境需限制最小权限范围。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429