kubernetes - 从Prometheus抓取时的“no token found”

标签 kubernetes prometheus

我正在使用Promethues监视我的Kubernetes集群。我的所有微服务都可以使用HA代理访问。

我的基本Promethues配置是:

- job_name: 'kubernetes_pods'
  tls_config:
    insecure_skip_verify: true
  kubernetes_sd_configs:
  - api_server: http://172.29.219.102:8080
    role: pod
  relabel_configs:
    - source_labels: [__meta_kubernetes_pod_host_ip]
      target_label: __address__
      regex: (.*)
      replacement: 172.29.219.110:8080

其中172.29.219.110:8080是我的独立HA代理的IP和端口。

我正在尝试使用Prometheus监视的端点是/auth/health

当我从任何地方执行简单的curl命令时,都会看到:
# curl http://172.29.219.110:8080/auth/health
{"status":"UP"}

但是,当Prometheus尝试执行此操作时,日志显示:
level=warn ts=2017-12-15T16:40:48.301741927Z caller=scrape.go:673 component="target manager" scrape_pool=kubernetes_pods target=http://172.29.219.110:8080/auth/health msg="append failed" err="no token found"

该端点是公开暴露的,因此不需要身份验证。那么,为什么Promethues说:

enter image description here

最佳答案

{"status":"UP"}



Prometheus要求数据采用其格式,并且不能处理其他任意数据。因此,您得到的错误是解析错误。

您应该使用client library来检测代码,并以Prometheus文本格式公开数据。

关于kubernetes - 从Prometheus抓取时的“no token found”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47836730/

相关文章:

go - Golang gRPC客户端连接到GKE

sorting - 如何在 Prometheus/Grafana 中按系列名称对图例进行排序

kubernetes - 在哪里可以找到 Prometheus 指标的描述?

amazon-web-services - 是否可以在 Init 容器中加载 AWS SSM ARN 并在主容器中使用

kubernetes - Kubernetes Controller 和 Kubernetes Operator 之间有什么区别?

node.js - API设计——分成不同的子域(微服务)

java - 格拉法纳中的"t.data.data is undefined"

docker - 如何让nginx日志显示在prometheus中?

prometheus - 使用 Prometheus 监控 OOM

docker - 一个简单的单体应用是否需要 Kubernetes 来管理