首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Docker中解析Prometheus Node Exporter `node_filesystem_device_error`并收集文件系统指标?

如何在Docker中解析Prometheus Node Exporter `node_filesystem_device_error`并收集文件系统指标?
EN

Stack Overflow用户
提问于 2021-02-05 17:40:46
回答 1查看 1.8K关注 0票数 1

我在Docker容器中运行Prometheus Node Exporter,并希望它报告Docker容器主机上文件系统的文件系统空间使用信息。

对于我的大多数文件系统,除了表示度量收集失败的node_filesystem_device_error度量之外,大多数文件系统度量都不存在。

这可以通过直接在主机上运行node_exporter二进制文件来解决,但我希望通过Docker运行我的整个可观察性基础设施。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-05 17:40:46

要从节点导出器Docker容器中发出主机文件系统指标,容器需要将主机的/路径绑定挂载到容器路径,如/rootfs。然后,需要使用命令行参数--path.rootfs=/rootfs启动节点导出器,以便它知道在哪里可以找到文件系统。

下面是Prometheus node-exporter的完整Docker Compose / Docker Swarm配置。它还配置为报告有关主机网络配置的统计信息。

代码语言:javascript
复制
version: "3.9"

services:
  node_exporter:
    image: prom/node-exporter:v1.0.1
    ports:
      - target: 9100
        published: 9100
        protocol: tcp
        mode: host
    volumes:
      # Remember to use read-only bind mounts.
      - /proc:/host/proc:ro
      - /sys:/host/sys:ro
      - /:/rootfs:ro
    command:
      - "--web.listen-address=:9100"
      - "--path.procfs=/host/proc"
      - "--path.sysfs=/host/sys"
      - "--path.rootfs=/rootfs" # Necessary for collecting host filesystem metrics.
      - "--collector.filesystem.ignored-mount-points='^/(sys|proc|dev|host|etc|rootfs/var/lib/docker/containers|rootfs/var/lib/docker/overlay2|rootfs/run/docker/netns|rootfs/var/lib/docker/aufs)($$|/)'"
    deploy:
      mode: global

# This listens to port 9100 ON THE HOST.
# This container does not have its own IP address.
# Binding to the host is necessary for node-exporter to collect accurate
# networking statistics about the host.
networks:
  default:
    external: true
    name: host
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66060894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档