从节点到daemonset / kube-prometheus-exporter-node的标签

时间:2019-02-16 10:30:32

标签: prometheus prometheus-operator prometheus-node-exporter

prometheus-operator包括DaemonSet,可将node-exporter部署到群集中的每个节点。它可以工作,但是我们缺少一些有用的标签信息,例如:

# kubectl get nodes --all-namespaces --show-labels=true
NAME                            STATUS    ROLES     AGE       VERSION    LABELS
ip-1   Ready     master    2d        v1.10.12   ...,kubernetes.io/role=master,...
=
ip-2   Ready     node      2d        v1.10.12   ...,kubernetes.io/role=node,...

所以我们在标签中有有用的信息-ip-1是master,ip-2是worker等。

但是此信息在节点导出器目标上丢失了,因为节点标签没有传播到守护程序节点导出器容器中。

例如,在普罗米修斯,我无法按节点类型对节点进行分组。

也许有一种方法可以实现这一目标?谢谢!

1 个答案:

答案 0 :(得分:0)

似乎您需要使用relabel_config

这是一个示例:https://www.robustperception.io/automatically-monitoring-ec2-instances

P.S。至于特定角色,您也可以在这篇文章中找到有用的信息:How to have labels for machine roles

更新: 要获取其他节点详细信息,可以使用元数据,sidecar或init容器无法提供的其他节点详细信息,例如:init container for node properties example

此外,使节点标签可用于pod:40610

也是一个未解决的问题