扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
问题
如何使用mrtg进行系统性能监控
解决方案
1.什么是snmp?
SNMP是种网络设备之间客户机/服务器模式的简单通信协议。路由器、交换机、打印机、HUB等等都可以成为SNMP系统中的服务器方。而SNMP系统中的客户机方往往是单独的一台计算机,轮询网络设备并记录它们所返回的数据。这里允许一台服务器多个客户机的情形。
SNMP允许你用很少的网络带宽和内存收集很多有用的系统、网络数据。
SNMP提供了一种统一的、跨平台的设备管理办法
2.什么是mrtg?
Mrtg(Multi Router Traffic Grapher,MRTG)是一个监控网络链路流量负载的工具软件, 它通过snmp协议从设备得到设备的流量信息,并将流量负载以包含PNG格式的图形的HTML 文档方式显示给用户,以非常直观的形式显示流量负载
3.如何在Redhat As4上面安装mrtg和snmp
在As4U3中,应安装如下rpm包(安装光盘自带)
mrtg-2.10.15-1
net-snmp-5.1.2-11.EL4.6
net-snmp-utils-5.1.2-11.EL4.6
net-snmp-libs-5.1.2-11.EL4.6
其他系统上包名一致,版本可能有所不同。
4 如何配置snmp
在As4上snmp的配置文件是/etc/snmp/snmpd.conf
配置中有如下几点需要添加
4.1 设置查询密码
默认用户的community是public
# sec.name source community
com2sec notConfigUser default public
这样任何人都可以通过 public@$ip来访问,从而获取系统信息。
可以通过修改community值的方法加强权限控制
4.2 设置允许mrtg查询信息的权限
添加
view all included .1
access notConfigGroup "" any noauth exact all none none
这样就保证notConfigGroup 可以访问view "all",而view "all"是包含所有MIB信息的
4.3 扩展snmp协议
为了监控内存,硬盘i/o等需要,可以对snmp协议进行扩展。
方法是使之执行指定脚本,并把该脚本挂在MIB信息树上。
例如
exec .1.3.6.1.4.1.2021.53 mem /bin/sh /root/mem.sh
exec .1.3.6.1.4.1.2021.54 diskio /bin/sh /root/diskio.sh
/root/mem.sh脚本的执行结果挂在.1.3.6.1.4.1.2021.53这个节点上。
客户端可以通过snmpwalk等程序查询该节点,获取/root/mem.sh的输出。
同理mrtg可以用这样的方式获取脚本输出数据
5. 如何配置mrtg
在As4上snmp的配置文件是/etc/mrtg/mrtg.cfg
配套的程序有indexmaker和mrtg。
5.1.配置工作目录
HtmlDir: /var/www/mrtg 生成html文件的目录
ImageDir: /var/www/mrtg 生成图形文件的目录
LogDir: /var/lib/mrtg log和历史数据所在目录
5.2.配置一个图形
每个图形所需的输入数据有四个,只有前两个是用来作图的。
有一系列指令用来控制作图方式
重要指令
5.2.1 Target
决定数据来源,这里可以有很多种形式,具体请参考mrtg官方文档
我们常用的形式如下:
Target[eth0]: 2:changeme@dev.test.com
获取dev.test.com的网络流量,该服务器snmpd的访问密码是changeme
Target[mem]: .1.3.6.1.4.1.2021.53.101.1&.1.3.6.1.4.1.2021.53.101.2:changeme@192.168.7.19
获取节点.1.3.6.1.4.1.2021.53.101.1和节点.1.3.6.1.4.1.2021.53.101.2的数据
[]中的值为图形的名称,不同值对应不同的图
5.2.2 MaxBytes
MaxBytes[eth0]: 12500000
数值的上限,超过上限的值将不显示,这个值应根据所观测值进行调整
5.3.3 Options
常用选项有
gauge,若设置此项,作图点直接采用所给出的数值。否则mrtg会主动做差值,将差值的结果作图。
bits,默认单位由bytes变成bits,所有数值被乘8
另有一些其他选项控制图例,单位,图title等,根据所观测内容不同进行自定义
5.3 index.html生成
配置好mrtg.cfg之后,调用indexmaker生成index.html
indexmaker /etc/mrtg/mrtg.cfg --output=/var/www/mrtg/index.html
5.4 定时采集数据
确保crontab的配置文件中有
*/5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok
(As4中默认安装已经进行了设置)
设置后系统5分钟将采集一次数据,刷新一次图形
5.5 观测
将HtmlDir指定的html所在目录添加在apache站点中
通过浏览器即可访问所定义的观测值。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者