首页 > 解决方案 > 目标不会被普罗米修斯刮掉

问题描述

似乎我无法prometheus通过注释方法或ServiceMonitor解决方法来抓取我的目标。

这是spec我的Service对象公开指标的部分

spec:
  clusterIP: 10.107.228.89
  ports:
  - name: metricsport
    port: 8282
    protocol: TCP
    targetPort: 8282
  selector:
    app: my-app
    release: my-app
  sessionAffinity: None
  type: ClusterIP

确实公开了指标,我curl通过集群内的另一个 pod 对其进行验证

curl http://my-service-metrics:8282/metrics
(...a lot of metrics)

这是我的ServiceMonitor spec

spec:
  endpoints:
  - path: /metrics
    port: metricsport
  namespaceSelector:
    matchNames:
    - default
  selector:
    matchLabels:
      app: my-app
      release: my-app

我还应该做什么/尝试让我的指标被刮掉prometheus

(目标没有出现在我的http://prometheus/targets

标签: kubernetesprometheus

解决方案


在 Slack 中回答,需要确保 ServiceMonitor 对象本身的标签与serviceMonitorSelectorPrometheus 对象上的标签匹配。


推荐阅读