You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes EKS部署Prometheus和adapter后无法获取custom metrics如何解决

EKS集群Prometheus Adapter无法获取自定义指标排查方案
  • 第一步 检查Prometheus Adapter运行状态
    首先确认Adapter Pod正常运行:
    kubectl get pods -n monitoring -l app.kubernetes.io/name=prometheus-adapter
    若Pod状态非Running,排查Pod启动失败原因;若正常运行,查看Pod日志确认是否存在报错:
    kubectl logs -n monitoring <替换为实际的Adapter Pod名称>
    日志中通常会明确打印Prometheus连接失败、指标规则加载失败等核心问题。
  • 第二步 验证Prometheus连通性
    确认Adapter配置中填写的Prometheus访问地址正确,且网络可达:
    进入Adapter Pod执行连通性测试:
    kubectl exec -it -n monitoring <替换为实际的Adapter Pod名称> -- curl <替换为配置的Prometheus服务地址>/api/v1/status/config
    若无法连通,排查EKS集群网络策略、安全组是否拦截了Adapter到Prometheus的访问请求。
  • 第三步 检查自定义指标转换规则
    Prometheus Adapter不会自动同步所有Prometheus指标,需要显式配置转换规则,才能将Prometheus侧的指标映射为Kubernetes可识别的custom metrics。
    如果你通过Helm安装Adapter,需确认values.yaml中rules字段已配置对应指标的转换逻辑,包含指标匹配规则、关联的Kubernetes资源类型、指标重命名规则等内容。规则配置错误会导致Adapter无法生成任何custom metrics。
  • 第四步 校验RBAC权限
    确认Adapter使用的ServiceAccount已绑定包含对应资源访问权限的ClusterRole,例如需要暴露Pod维度的指标时,ServiceAccount需要拥有pods资源的get、list权限,权限缺失会导致Adapter无法关联指标与Kubernetes资源。

补充说明:你执行的kubectl get --raw /metrics命令本身是错误的,该路径为Kubernetes APIServer自身的指标接口,并非自定义指标查询入口。当Adapter配置正确时,执行kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1会返回所有可用的自定义指标列表。

内容的提问来源于stack exchange,提问作者zxc157

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 23:36:03