
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
ChaosBlade Operator 镜像是 ChaosBlade 混沌工程工具的 Kubernetes 部署组件,基于操作器(Operator)模式实现,用于在 Kubernetes 集群中声明式管理和执行混沌实验。该镜像提供了与 Kubernetes API 深度集成的能力,支持通过自定义资源(CRD)定义混沌实验,帮助用户模拟各类故障场景,验证系统在异常条件下的稳定性和弹性。
ChaosBlade 声明实验,支持 Kubernetes 标准操作流程(如 kubectl apply 创建实验)。kubectl 命令行工具1. 部署 ChaosBlade Operator
通过 kubectl 应用官方部署清单(以 v1.7.1 版本为例):
bashkubectl apply -f https://raw.githubusercontent.com/chaosblade-io/chaosblade-operator/v1.7.1/deploy/chaosblade-operator.yaml
验证部署状态:
bashkubectl get pods -n chaosblade # 预期输出:chaosblade-operator-xxxx 状态为 Running
2. 创建混沌实验
通过创建 ChaosBlade 自定义资源定义实验,以下为常见场景示例:
示例 1:Pod 故障注入(删除指定命名空间下的随机 Pod)
yamlapiVersion: chaosblade.io/v1alpha1 kind: ChaosBlade metadata: name: delete-pod-example namespace: chaosblade spec: experiments: - scope: pod target: pod action: delete desc: "delete pod in default namespace" matchers: - name: namespace value: ["default"] - name: label-selector value: ["app=demo"] # 目标 Pod 的标签 - name: count value: ["1"] # 随机删除 1 个 Pod
应用实验配置:
bashkubectl apply -f delete-pod-experiment.yaml
示例 2:网络延迟注入(对目标 Pod 增加网络延迟)
yamlapiVersion: chaosblade.io/v1alpha1 kind: ChaosBlade metadata: name: network-delay-example namespace: chaosblade spec: experiments: - scope: pod target: network action: delay desc: "add network delay to pod" matchers: - name: namespace value: ["default"] - name: label-selector value: ["app=demo"] - name: duration value: ["30s"] # 延迟持续时间 - name: latency value: ["500ms"] # 延迟时间 - name: jitter value: ["100ms"] # 延迟抖动范围
3. 查看实验状态
bashkubectl get chaosblade -n chaosblade # 输出示例: # NAME CREATED AT # delete-pod-example 2024-05-20T08:30:00Z
查看实验详情:
bashkubectl describe chaosblade delete-pod-example -n chaosblade
4. 停止实验
删除 ChaosBlade 资源即可终止实验:
bashkubectl delete chaosblade delete-pod-example -n chaosblade
| 参数路径 | 说明 | 示例值 |
|---|---|---|
spec.experiments.scope | 实验作用域,支持 pod、node、container、network 等 | pod |
spec.experiments.target | 实验目标类型,如 pod(Pod 资源)、network(网络)、cpu(CPU资源) | network |
spec.experiments.action | 实验动作,如 delete(删除)、delay(延迟)、stress(压力) | delay |
spec.experiments.matchers | 目标匹配器,用于定位实验对象,如命名空间、标签等 | [{name: "namespace", value: ["default"]}] |
ChaosBlade Operator 支持通过环境变量调整行为,部署时可在 Operator Deployment 中配置:
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
CHAOSBLADE_LOG_LEVEL | 日志级别(debug/info/warn/error) | info |
CHAOSBLADE_METRICS_PORT | 指标暴露端口 | 8080 |
CHAOSBLADE_WORKER_IMAGE | 混沌实验执行器镜像 | chaosblade/chaosblade-tool:latest |
duration 参数,避免资源持续占用。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务