无法从节点导出器指标中获取正确数量的打开文件描述符

Posted

技术标签:

【中文标题】无法从节点导出器指标中获取正确数量的打开文件描述符【英文标题】:Not able to get correct number of Open File descriptor from node-exporter metrics 【发布时间】:2020-04-10 20:42:02 【问题描述】:

我们使用的是 node_exporter 版本 0.18.0

在 Grafana 节点导出器仪表板中,它仅显示节点导出器进程使用的打开文件描述符的数量,而不是该实例中操作系统使用的 FDS。

我们正在从 root 用户运行 node-exporter。

系统统计:

lsof | wc -l 的输出是446732

打开文件 (-n) 400000

节点导出器指标:

node_filefd_allocated 3232

node_filefd_maximum 1.508219e+06

node_scrape_collector_duration_secondscollector="filefd" 4.4016e-05

process_max_fds 1024

process_open_fds 9

【问题讨论】:

我面临同样的问题,令人惊讶的是 process_max_fds 和 process_open_fds 在每个盒子中都是相同的。如果您找到任何解决方法,请分享。 【参考方案1】:

node_filefd_allocated 是您想要的指标。

并非lsof 列出的所有内容都使用 Linux 上的文件描述符,例如动态链接库。

我们正在从 root 用户运行 node-exporter。

节点导出器不需要root。

【讨论】:

以上是关于无法从节点导出器指标中获取正确数量的打开文件描述符的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 JSON 格式获取 Prometheus 节点导出器指标

查询通过 prometheus 节点导出器文本文件收集器公开的自定义指标失败

如何在节点导出器中设置 --collector.textfile.directory

如何使用 prometheus 节点导出器提取正在运行的进程?

如何在没有节点导出器或 cadvisor 的情况下从目标服务器抓取数据

在 prometheus/grafana 中触发节点导出器的时间戳太旧的警报