jia*_*wei 5 kubernetes prometheus
在阅读 Prometheus 配置文档和一些示例抓取配置时,我发现了一些带有 role service& role endpoints& role的 kubernetes_sd_configspod
- job_name: kube-state-metrics
kubernetes_sd_configs:
- role: endpoints
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_service_label_(.+)
- action: keep
regex: prometheus;kube-state-metrics
source_labels:
- __meta_kubernetes_namespace
- __meta_kubernetes_pod_label_component
Run Code Online (Sandbox Code Playgroud)
- honor_labels: true
job_name: prometheus-pushgateway
kubernetes_sd_configs:
- role: service
relabel_configs:
- action: keep
regex: pushgateway
source_labels:
- __meta_kubernetes_service_annotation_prometheus_io_probe
Run Code Online (Sandbox Code Playgroud)
- job_name: node-exporter
kubernetes_sd_configs:
- role: pod
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_pod_label_(.+)
- action: replace
regex: ([^:]+)(?::\d+)?;(\d+)
replacement: $1:$2
source_labels:
- __address__
- __meta_kubernetes_pod_container_port_number
target_label: __address__
Run Code Online (Sandbox Code Playgroud)
看起来所有这些角色都可以从实例中获取指标,
我们什么时候应该使用端点以及什么时候应该使用 pod?
编辑:我真正的问题是,如果它们都发现了抓取目标,我应该使用哪个角色(端点或 Pod)?
你喜欢哪个?有什么例子吗?
小智 3
Prometheus 中的 Kubernetes SD 有一个所谓的 \xe2\x80\x9croles\xe2\x80\x9d 的集合,它定义了如何收集和显示指标。每个角色都有自己的一组标签,您已经从官方文档中了解了这些标签。您感兴趣的是:
\nservice:将找到并返回每个服务及其端口
pod:将找到 pod 并返回其容器作为从中获取指标的目标
endpoints:将从每个端点为集群中找到的每个服务创建目标
下面是一些示例:
\n\n关于您的其他问题:
\n\n\n\n
\n- \n
角色服务用作黑盒探测。它不会报告此服务背后有多少后端
\n- \n
角色端点用于公开 Web 服务的服务(有一个\n要连接的 http 端点)
\n- \n
一般使用pod
\n
几乎是的。请注意,它pod role会发现所有 Pod 并将其容器公开为目标。
我还强烈建议您查看以下来源:
\n\n请告诉我这是否有帮助。
\n| 归档时间: |
|
| 查看次数: |
5377 次 |
| 最近记录: |