本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Cluster Agent for Kubernetes 是一款专为 Kubernetes 集群设计的监控与管理代理程序,通过 Docker 镜像形式分发。该 Agent 深度集成 Kubernetes API,旨在提供集群级别的全面观测能力,包括节点与工作负载状态监控、资源使用率采集、事件日志聚合、健康检查及告警等核心功能,帮助用户实现对 Kubernetes 集群的可视化管理、故障排查与资源优化。
从 Docker Registry 拉取最新版本镜像:
docker pull example/cluster-agent:latest # 示例镜像地址,实际请替换为官方地址
Agent 需在每个节点运行以采集完整数据,推荐使用 DaemonSet 部署:
# cluster-agent-daemonset.yaml apiVersion: apps/v1 kind: DaemonSet metadata: name: cluster-agent namespace: monitoring # 建议部署在独立命名空间 spec: selector: matchLabels: app: cluster-agent template: metadata: labels: app: cluster-agent spec: hostNetwork: true # 需访问节点网络信息 containers: - name: cluster-agent image: example/cluster-agent:latest resources: limits: cpu: 500m memory: 512Mi requests: cpu: 200m memory: 256Mi env: - name: CLUSTER_NAME value: "prod-cluster-01" # 集群名称,用于多集群区分 - name: METRICS_INTERVAL value: "30s" # 指标采集间隔 - name: LOG_LEVEL value: "info" # 日志级别:debug/info/warn/error volumeMounts: - name: var-log mountPath: /var/log # 挂载节点日志目录(可选,用于日志采集) - name: var-lib-kubelet mountPath: /var/lib/kubelet # 挂载 kubelet 目录(可选,用于节点状态采集) volumes: - name: var-log hostPath: path: /var/log - name: var-lib-kubelet hostPath: path: /var/lib/kubelet
应用部署:
kubectl apply -f cluster-agent-daemonset.yaml
本地测试时,可通过 Docker 直接运行(需挂载 kubeconfig 以访问集群):
docker run -d \ --name cluster-agent-test \ -v $HOME/.kube/config:/root/.kube/config:ro \ # 挂载本地 kubeconfig -e CLUSTER_NAME="local-test-cluster" \ -e METRICS_INTERVAL="10s" \ -e LOG_LEVEL="debug" \ example/cluster-agent:latest
本地开发调试时,使用 docker-compose 管理配置:
# docker-compose.yml version: "3" services: cluster-agent: image: example/cluster-agent:latest volumes: - $HOME/.kube/config:/root/.kube/config:ro environment: - CLUSTER_NAME=local-dev-cluster - METRICS_INTERVAL=5s - LOG_LEVEL=debug - ALERT_WEBHOOK_URL=[***] # 本地告警接收服务 network_mode: host # 共享主机网络,便于访问本地 Kubernetes 集群
启动服务:
docker-compose up -d
| 参数名 | 描述 | 默认值 | 可选值/示例 |
|---|---|---|---|
CLUSTER_NAME | 集群唯一标识,用于多集群数据区分 | default | prod-eks-01, staging-gke |
METRICS_INTERVAL | 指标采集时间间隔 | 30s | 10s, 1m |
LOG_LEVEL | 日志输出级别 | info | debug, warn, error |
KUBERNETES_API_URL | Kubernetes API Server 地址(自动检测) | 自动从 kubeconfig 或环境变量获取 | [***] |
ALERT_THRESHOLDS | 资源告警阈值(JSON 格式) | {"cpu": 80, "memory": 85} | {"cpu": 90, "memory": 95} |
PLUGINS_ENABLED | 启用的插件列表(逗号分隔) | metrics,events | metrics,events,security |
支持通过命令行参数覆盖环境变量配置,格式:--参数名=值。例如:
docker run example/cluster-agent:latest --log-level=debug --metrics-interval=5s
复杂配置可通过挂载配置文件(如 config.yaml)实现,挂载路径需通过 CONFIG_FILE 环境变量指定:
# config.yaml 示例 cluster_name: "prod-cluster-01" metrics: interval: "30s" include: ["pods", "nodes", "services"] # 仅采集指定资源类型指标 alert: thresholds: cpu: 80 memory: 85 webhooks: - url: "[***]" timeout: "5s" plugins: enabled: ["metrics", "events", "cost-analyzer"]
挂载配置文件运行:
docker run -d \ -v $(pwd)/config.yaml:/etc/cluster-agent/config.yaml \ -e CONFIG_FILE=/etc/cluster-agent/config.yaml \ example/cluster-agent:latest
kubectl get pods -n monitoring -l app=cluster-agent # 检查 Pod 运行状态 kubectl logs -n monitoring <pod-name> # 查看日志
docker ps | grep cluster-agent # 检查容器状态 docker logs <container-id> # 查看日志
image 字段后重新应用 YAML,或使用 kubectl set image:
kubectl set image daemonset/cluster-agent cluster-agent=example/cluster-agent:v1.2.0 -n monitoring
kubectl rollout undo 回滚到上一版本:
kubectl rollout undo daemonset/cluster-agent -n monitoring
根据集群规模调整资源限制(如 100 节点集群建议 CPU 500m/内存 1Gi):
kubectl edit daemonset/cluster-agent -n monitoring # 修改 resources.limits/requests
A:确保 DaemonSet 挂载了节点磁盘目录(如 /var/lib/kubelet 或 /proc/mounts),并检查容器是否有足够权限(可添加 securityContext: privileged: true,生产环境谨慎使用)。
A:通过 CLUSTER_NAME 环境变量为每个集群设置唯一名称,后端存储(如 Prometheus)可基于该标签聚合数据。
A:修改 PLUGINS_ENABLED 环境变量,仅保留所需插件(如 PLUGINS_ENABLED=metrics,events)。
免费版仅支持 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