Datadog Cluster Agent是Datadog推出的容器化组件,专为Kubernetes集群设计,以Docker镜像形式分发。作为集群级监控中枢,其核心职责是聚合集群范围的监控数据、协调节点级Datadog Agent、优化资源占用,并为集群管理提供统一的监控视角。
自动采集并聚合集群范围内的关键指标,包括节点资源(CPU/内存/磁盘)使用率、Pod生命周期状态、命名空间资源配额、PV/PVC绑定状态等,支持按集群、命名空间、工作负载等维度过滤分析。
实时捕获Kubernetes API Server事件(如Pod创建/删除、部署失败、节点NotReady等),并转发至Datadog事件流,支持与监控指标联动分析。
通过集中分发配置(如监控规则、过滤策略),减少节点级Agent的重复计算;动态调整节点Agent的采集范围,避免资源浪费。
作为Kubernetes外部指标提供者(External Metrics Provider),支持基于自定义指标(如业务QPS、队列长度)配置HPA,实现按需扩缩容。
检测集群RBAC权限配置、网络策略合规性、镜像拉取策略等安全相关配置,生成合规报告并告警异常项。
支持多副本部署,通过Leader选举机制确保集群故障时监控服务不中断。
Cluster Agent通常通过Kubernetes Deployment部署,示例配置片段如下:
yamlapiVersion: apps/v1 kind: Deployment metadata: name: datadog-cluster-agent namespace: datadog spec: replicas: 1 # 高可用场景可设为2+,配合Leader选举 selector: matchLabels: app: datadog-cluster-agent template: metadata: labels: app: datadog-cluster-agent spec: serviceAccountName: datadog-cluster-agent containers: - name: cluster-agent image: gcr.io/datadoghq/cluster-agent:latest # 或指定版本标签(如7.47.0) resources: limits: cpu: 500m memory: 512Mi requests: cpu: 200m memory: 256Mi env: - name: DD_API_KEY valueFrom: secretKeyRef: name: datadog-secrets key: api-key - name: DD_SITE value: "datadoghq.com" # 国内用户可设为"datadoghq.cn" - name: DD_CLUSTER_AGENT_AUTH_TOKEN valueFrom: secretKeyRef: name: datadog-cluster-agent-auth key: token - name: DD_COLLECT_KUBERNETES_EVENTS value: "true" - name: DD_EXTERNAL_METRICS_PROVIDER_ENABLED value: "true"
Cluster Agent依赖Kubernetes API和节点Agent协同,通常不直接通过docker run部署。若需测试,需挂载Kubernetes配置并配置必要环境变量:
bashdocker run -d \ --name datadog-cluster-agent \ -e DD_API_KEY=<YOUR_API_KEY> \ -e DD_SITE=datadoghq.com \ -e DD_CLUSTER_AGENT_AUTH_TOKEN=<AUTH_TOKEN> \ -e KUBERNETES_SERVICE_HOST=<K8S_API_HOST> \ -e KUBERNETES_SERVICE_PORT=6443 \ -v /var/run/secrets/kubernetes.io/serviceaccount:/var/run/secrets/kubernetes.io/serviceaccount \ gcr.io/datadoghq/cluster-agent:latest
| 环境变量 | 说明 | 必填 | 默认值 |
|---|---|---|---|
DD_API_KEY | Datadog API密钥,用于身份验证和数据上报 | 是 | - |
DD_SITE | Datadog站点,有效值:datadoghq.com(国际)、datadoghq.cn(国内) | 否 | datadoghq.com |
DD_CLUSTER_AGENT_AUTH_TOKEN | 节点Agent与Cluster Agent通信的共享令牌,需与节点Agent配置一致 | 是 | - |
DD_COLLECT_KUBERNETES_EVENTS | 是否收集Kubernetes事件,有效值:true/false | 否 | true |
DD_EXTERNAL_METRICS_PROVIDER_ENABLED | 是否启用外部指标提供(支持HPA),有效值:true/false | 否 | false |
DD_CLUSTER_NAME | 集群名称,用于在Datadog平台区分多集群数据 | 否 | 自动从K8s API获取 |
DD_RESOURCES_LIMITS_ENABLED | 是否上报Pod资源限制/请求指标,有效值:true/false | 否 | true |
更多配置(如指标采集间隔、自定义标签、代理设置)可通过挂载配置文件实现,详细参数见***文档。
详细配置、兼容性矩阵及最佳实践请参考Datadog Cluster Agent***文档。
kubectl logs <cluster-agent-pod> -n datadog查看容器日志;Infrastructure > Kubernetes > Clusters检查集群数据是否上报;来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 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 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429