我正在使用Prometheus和Grafana来收集和显示Kubernetes集群的指标信息。在本例中,我正在收集内存信息,并发现其中一个工作节点没有出现在某些指标的结果中,而它出现在其他指标的结果中。我能看到的唯一可能与此有关的事情是,该节点应用了污点。
以下是节点污点:
第一个月
其余的工作节点没有(明显的)污点。难道这就是什么都没刮的原因吗?
下面是一个包含此节点(arc-worker-4
)信息的度量示例:
查询:machine_memory_bytes{node="arc-worker-4"}
个
测试结果:
| 价值| value |
| --| ------------ |
| 电话:135090417664| 135090417664 |
如果在另一个指标上运行查询,则没有结果:
查询:node_memory_MemTotal_bytes{node="arc-worker-4"}
个
测试结果:Empty query result
个
在名为node_memory_..._bytes
的指标组(大约有50个)中,没有一个指标包含此节点的任何数据。为什么?我获取所有其他节点的数据,包括主节点。
1条答案
按热度按时间ryoqjall1#
通过在Prometheus(kube-prometheus-stack)配置中添加toleration,可以解决这个问题。这允许Prometheus附带的节点导出器部署到带有该污点的节点上。我现在正在从
node_memory_..._bytes
系列指标中获得结果。做了什么:
在Prometheus Helm chart values.yaml中,添加了以下内容:
字符串
第一个容差是默认值,但需要在这里指定,否则它会消失。我需要它,这样主节点仍然会被刮。