解决Grafana Node_exporter网卡流量监控不准确

最近服务器添加监控和报警后,发现服务器网卡流量监控不准确。因为我服务本身就10M带宽,但是这里的上行和下行带宽竟然高达30M。

这里的模板我使用的是大家用的比较多的8919模板;

问题处于初级范畴,更多的关注解题步骤

问题分析

首先我这里将grafana的出图语句复制下来进行分析:

复制监控项的语句到Prometheus上进行查看:

我没有添加任何规则,发现获取的网卡流量包含dockerlo以及eth的流量

解决问题

发现了问题后,我们需要修改一下语句,将docker网卡以及lo或者其它本地流量的网卡进行过滤 (node_network_receive_bytes_total{device!~'tap.*|veth.*|br.*|docker.*|virbr*|lo*'} )

过滤完成后,修改grafana语句

  • 上传语句

    max(rate(node_network_transmit_bytes_total{device!~'tap.*|veth.*|br.*|docker.*|virbr*|lo*'}[$interval])) by (instance)
  • 下载语句

    max(rate(node_network_receive_bytes_total{device!~'tap.*|veth.*|br.*|docker.*|virbr*|lo*'} [$interval])) by (instance)

修改完成后,我们发现监控的值是没有问题了,连接数和上行下行带宽也对的上,这个之前我也测试过了。

这些改完实际上到此为止是已经结束了,但是我发现还有一个问题,就是本来grafana模板给的是30M 图标变黄,1000M进行告警。但是目前我本地服务器的网络大部分是处于5-10M之间。也就是基本上跑满我带宽,grafana出图也不会告警。接下来我们就来修改grafana颜色变更阈值

右边下滑到最下面,这里监控的单位是字节,也就是我们要设置3M-10M之间的字节

修改

换算单位

3 M=3145728 字节
10M =10485760 字节

将下面grafana出图单位改成3145728,10485760

我这里将上下行都改成这个,具体按照实际情况进行修改

接下来点击Apply更新

查看

目前来看已经恢复正常,左边为宝塔控制面板的网络监控,属于实时监控。右边为grafana出图监控,因为node_exporter属于静态监控,不能算是实时更新,受网络上报的影响。大小差距不大


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!