我正在使用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
是IP&我的独立HA代理的端口。
我尝试使用Prometheus监控的端点是/auth/health
。
当我从任何地方做一个简单的卷曲命令时,我看到:
# curl http://172.29.219.110:8080/auth/health
{"status":"UP"}
但是当普罗米修斯试图这样做时,日志表明:
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说:
答案 0 :(得分:1)
{"状态":" UP"}
Prometheus要求数据采用其格式,并且无法处理其他任意数据。您得到的错误是由此引起的解析错误。
您应该使用client library检测代码,并让它以Prometheus文本格式显示数据。