
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Rancher Fleet Controller是Rancher生态系统中的核心GitOps组件,专为跨多Kubernetes集群的应用部署与生命周期管理设计。作为声明式配置控制器,它通过监控Git仓库中的应用定义,自动同步配置至目标Kubernetes集群,实现"以Git为单一真实来源"的应用管理模式,简化大规模集群环境下的部署复杂度。
适用于拥有数十至数百Kubernetes集群的企业,通过统一Git仓库管理所有集群的应用配置,避免"集群孤岛"问题。
作为CI/CD流程的最终部署环节,接收CI构建产物(如容器镜像、Helm Chart),自动同步至目标集群,实现完整DevOps闭环。
为微服务架构或分布式应用提供标准化部署模板,确保所有集群使用一致的配置基线,降低配置漂移风险。
在边缘计算环境中,通过低带宽优化的同步机制,管理边缘节点上的轻量化应用,支持断网重连后自动恢复同步。
Fleet Controller通常通过Helm Chart部署至Kubernetes集群:
bash# 添加Rancher Fleet Helm仓库 helm repo add rancher-fleet https://rancher.github.io/fleet-helm-charts/ helm repo update # 创建命名空间 kubectl create namespace fleet-system # 部署Fleet Controller(默认包含CRD、RBAC配置) helm install fleet-controller rancher-fleet/fleet-controller \ --namespace fleet-system \ --set replicaCount=2 \ # 生产环境建议2-3副本 --set logLevel=info \ # 日志级别:debug/info/warn/error --set gitPollInterval=30s # Git仓库轮询间隔
通过Helm values.yaml或环境变量调整控制器行为,关键参数说明:
| 参数名 | 环境变量对应 | 描述 | 默认值 |
|---|---|---|---|
replicaCount | - | 控制器副本数,用于高可用部署 | 1 |
logLevel | FLEET_LOG_LEVEL | 日志输出级别 | info |
gitPollInterval | FLEET_GIT_POLL_INTERVAL | Git仓库变更检查间隔(格式:30s、5m) | 30s |
agentPollInterval | FLEET_AGENT_POLL_INTERVAL | 与Fleet Agent的通信间隔 | 10s |
maxConcurrentReconciles | FLEET_MAX_CONCURRENT_RECONCILES | 并发同步任务数,调整以适应集群规模 | 10 |
metrics.enabled | - | 是否暴露Prometheus指标 | true |
metrics.service.port | - | 指标暴露端口 | 9090 |
1. 创建GitRepo资源(声明应用配置源)
在控制器所在集群创建GitRepo自定义资源,定义Git仓库信息:
yamlapiVersion: fleet.cattle.io/v1alpha1 kind: GitRepo metadata: name: backend-services namespace: fleet-default # Fleet默认工作命名空间 spec: # Git仓库地址(支持HTTPS/SSH) repo: https://github.com/example/backend-services.git # 分支或标签(支持branch:main、tag:v1.0.0、commit:abc123) branch: main # 同步路径(仅同步仓库中指定目录) paths: - ./overlays/production # 目标集群选择器(按标签筛选集群) targets: - name: prod-clusters clusterSelector: matchLabels: environment: production # 同步策略(如失败重试次数、超时时间) syncOptions: retryLimit: 5 timeout: 5m
2. 查看同步状态
通过kubectl查看GitRepo同步状态:
bash# 查看GitRepo资源 kubectl get gitrepo -n fleet-default # 查看详细同步状态 kubectl describe gitrepo backend-services -n fleet-default
3. 调整同步配置
如需修改同步策略(如调整轮询间隔),可通过Helm升级控制器配置:
bashhelm upgrade fleet-controller rancher-fleet/fleet-controller \ --namespace fleet-system \ --set gitPollInterval=1m # 调整为1分钟轮询一次
除Helm参数外,可通过环境变量直接配置控制器(适用于非Helm部署场景):
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
FLEET_NAMESPACE | 控制器工作命名空间 | fleet-system |
FLEET_CLUSTER_NAME | 控制器所在集群名称 | local |
FLEET_GIT_TLS_VERIFY | 是否验证Git仓库TLS证书 | true |
FLEET_AGENT_IMAGE | Fleet Agent镜像地址 | rancher/fleet-agent |
FLEET_CONTROLLER_IMAGE | 控制器自身镜像地址 | rancher/fleet-controller |
kubectl logs -n fleet-system -l app=fleet-controller -f/healthz端点(默认端口8080),可配置Kubernetes liveness/readiness探针http://<pod-ip>:9090/metrics,关键指标包括:
fleet_git_sync_total:Git仓库同步总次数fleet_cluster_sync_duration_seconds:集群同步耗时fleet_resource_reconcile_errors:资源同步错误数maxConcurrentReconciles参数,避免API Server过载您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务