EXCL='^/(sys|proc|dev|run)' node_exporter \ --collector.filesystem.mount-points-exclude=$EXCL \ --path.rootfs=/host
Grafana 磁盘面板一直空着,node_filesystem_avail_bytes 只返回 tmpfs,业务盘 /data 一条都查不到,df 看又是正常的。先别急着动参数,把报错原文和时间点记下来,顺序反了容易白折腾。
原因不复杂,node_exporter 默认按挂载点正则过滤掉虚拟文件系统,容器里跑的时候看不到宿主机挂载,collector 又被关掉,指标自然缺。
「node_exporter 指标缺失」确认了原因之后,改动尽量只碰那一处,顺手改的东西后面最容易出问题。改完隔一天再看一次,当场正常不代表能稳住。
测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。线上出问题先对时间点,跟发布、备份、任务执行的时刻排一排,能省掉一半功夫。
日志级别临时调高可以,记得改回去,长期开着既占磁盘又掩盖真问题。
处理上按这个顺序:启动时显式打开 filesystem 这个 collector;容器部署要把宿主机根目录挂进来并指定根路径;核对排除规则有没有把 /data 写进去。
改完只确认一件事:面板里出现 /data 的使用率曲线,数值和 df -h 的输出一致。
