bjkamui 2011-04-24
MRTG(Multi Router Traffic Grapher),通常讲是一个监控网络链路流量负载的开源软件,它可以从所有运行SNMP协议的设备上(包括服务器、路由器、交换机等)抓取信息。事实上它不仅可以监控网络设备,任何其它的支持SNMP协议的设备都可以做为MRTG的监控对象,并自动生成包含PNG图形格式的HTML文档,通过HTTP方式显示给用户。
环境是:RedHat Linux 9.0.
必备软件:
gd-1.8.4-11
gd-devel-1.8.4-11
libpng-1.2.2-16
libpng-devel-1.2.2-16
libpng10-1.0.13-8
libpng10-devel-1.0.13-8
perl-5.8.0-88
zlib-1.1.4-8
zlib-devel-1.1.4-8
httpd-manual-2.0.40-21
httpd-2.0.40-21)
gcc-3.2.2-5
net-snmp-5.06-17
mrtg-2.9.29.tar.gz
当然,上面列举的软件不一定版本都必须一样,而且有些包系统已经为你安装好了,比如
gcc和Perl,也可以事先查看一下这些软件包你是否已经安装了
#rpm -qa | grep gd
#rpm -qa | grep libpng
如果没有安装的话,可以去Google一下,国外的网站有很丰富这方面的资源。
我下载了如下rpm包:
gd-1.8.4-11.i386.rpm
gd-devel-1.8.4-9.i386.rpm
libpng-1.2.8.tar.tar
libpng-devel-1.2.8-2.i386.rpm
zlib-devel-1.1.4-8.i386.rpm
httpd-2.0.40-21.i386.rpm
httpd-manual-2.0.40-21.i386.rpm
总之,确定了这些都已安装好之后,你就可以继续MRTG的安装了。
(1):首先,得修改snmp的配置文件:
#vi /etc/snmp/snmpd.conf
把第90行前面的注释符号去掉
view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc
在62行先去掉#然后再进行修改:
access notConfigGroup "" any noauth exact systemview none none
改为
access notConfigGroup "" any noauth exact mib2 none none
然后在最后一行下添加一行内容:
rocommunity mrtg
(2)下面要启动你的snmp服务和http服务:
首先查看一下是否这两个服务在系统启动时已经开启
#chkconfig --list | grep httpd
httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
说明在每种启动模式下,http服务都没有启动,需要修改一下:
# chkconfig --level 35 httpd on
然后再查看一下,结果如下
httpd 0:off 1:off 2:off 3:on 4:off 5:on 6:off
说明已经成功修改,以后每次系统以方式3或者5启动的话,http服务都回自动加载
对snmpd 服务采用同样的设置
然后手动启动
#/etc/rc.d/init.d/httpd start
#/etc/rc.d/init.d/snmpd start
(3):开始安装mrtg
#tar zvxf mrtg-2.9.29.tar.gz
#cd mrtg-2.9.29
#./configure --prefix=/usr/local/mrtg --with-gd=/usr/include --with-gd-lib=/usr/lib --with-gd-inc=/usr/include --with-png=/usr/include --with-zlib=/usr/include
#make
#make install
如果上面某一步出现错误的话,可能是某个软件包没有正确安装,或者是其他原因,请仔细分析
倘若OK的话,我们就可以进行mrtg的配置了