容器启动的 node-exporter 无法监控宿主机磁盘使用率
一、现象
容器启动 node-exporter ,在 grafana 界面显示的磁盘使用率不对
监控页面显示:
磁盘实际情况
二、原因
容器启动默认监控的是容器本身的磁盘,对宿主机没有权限获取磁盘权限。已知Node Exporter主要通过读取/proc
和/sys
来获取监控指标,但是容器和宿主机的/proc
以及/sys
中的内容仍然不是完全相同的。因此,最好的方法其实是将宿主机中的这两个目录挂载到容器中,再让容器中的Node Exporter进程读取从这两个挂载目录中获取宿主机的运行信息。
三、解决办法
添加挂载目录
# 添加以下内容 volumes: - /:/host/root #后面的路径可根据实际情况自定义挂载 - /proc:/host/proc
- /sys:/host/sys
问题遗留:
获取的数据里面包含容器本身自带的挂载目录/etc/host,/etc/resolve.conf,/etc/hostname,查看另外一篇随笔