Linux下的基于NET-SNMP的MRTG流量监控安装与配置

操作系统环境:RHEL5 / CentOS5
所用的软件列表:Zlib / GD / LIBPNG / MRTG /NET-SNMP / Apache(这个网上有太多的安装方法,这里就不说了)

一、Net-Snmp的安装
这个我是采用RPM方式安装的,在安装过程中会有依赖关系,按照提示的把相关的依赖装完就好了,其中在装net-snmt包的时候,会提示需要libsensors.so.3这个文件,这个文件在lm_sensors-2.10.0-3.1.i386.rpm里,也在要安装lm_sensors-2.10.0-3.1.i386.rpm这个包,装完后就可以启动snmpd服务来试试了
装完后的查询列表:
[root@mail local]# rpm -qa|grep elfutils
elfutils-libelf-devel-0.125-3.el5
elfutils-0.125-3.el5
elfutils-libelf-0.125-3.el5
elfutils-libelf-devel-static-0.125-3.el5
elfutils-libs-0.125-3.el5
[root@mail local]# rpm -qa|grep beecrypt
beecrypt-4.1.2-10.1.1
[root@mail local]# rpm -qa|grep snmp
net-snmp-5.3.1-14.el5
net-snmp-libs-5.3.1-14.el5
cluster-snmp-0.8-27.el5.centos
[root@mail local]# rpm -qa|grep lm_sensors
lm_sensors-2.10.0-3.1
[root@mail local]#
为配合MRTG部分的流量统计,需将/etc/snmp/snmpd.conf的内容做点修改:
[root@mail local]# vi /etc/snmp/snmpd.conf
找到下面这一行:
#view mib2   included  .iso.org.dod.internet.mgmt.mib-2 fc
将其前面的“#”注释去掉变成:
view mib2   included  .iso.org.dod.internet.mgmt.mib-2 fc
再找到这一行:
access notConfigGroup "" any noauth exact systemview none none
修改其中的内容"systemview"为"mib2",如下:
access  notConfigGroup ""      any       noauth    exact  mib2 none none
然后在它上面添加一行:
view systemview included .1.3.6.1.2.1.2
存盘后退出。
重新启动snmp服务
[root@mail local]# service snmpd restart
NET-SNMP的配置就结束了。

二、GD、Zlib、LibPNG的安装
先下载这几个软件:
[root@mail local]# mkdir -p /usr/local/src
[root@mail local]# cd /usr/local/src
Install Zlib:
[root@mail src]# wget http://www.gzip.org/zlib/zlib-1.1.4.tar.gz
[root@mail src]# gunzip -c zlib-*.tar.gz | tar xf -
[root@mail src]# rm zlib-*.tar.gz
[root@mail src]# mv zlib-* zlib
[root@mail src]# cd zlib
[root@mail zlib]# ./configure
[root@mail zlib]# make
[root@mail zlib]# cd ..
Install Libpng:
[root@mail src]#  wget http://public.planetmirror.com/p ... ibpng-1.0.15.tar.gz
[root@mail src]#  gunzip -c libpng-*.tar.gz |tar xf -
[root@mail src]#  rm libpng-*.tar.gz
[root@mail src]#  mv libpng-* libpng
[root@mail src]#  cd libpng
[root@mail libpng]#  make -f scripts/makefile.std CC=gcc ZLIBLIB=../zlib ZLIBINC=../zlib
[root@mail libpng] rm *.so.* *.so
[root@mail libpng] cd ..
Install GD:
[root@mail src]# wget http://www.boutell.com/gd/http/gd-2.0.11.tar.gz
[root@mail src]# gunzip -c gd-2.0.11.tar.gz |tar xf -
[root@mail src]# mv gd-2.0.11 gd
[root@mail src]# cd gd
[root@mail gd]# env CPPFLAGS="-I../zlib -I../libpng" LDFLAGS="-L../zlib -L../libpng" \
                           ./configure --disable-shared --without-freetype --without-jpeg
[root@mail gd]# make
[root@mail gd]# cp .libs/* .

三、安装MRTG

[root@mail src]# wget ftp://ftp.idilis.ro/mirrors/mrtg/mrtg-2.16.1.tar.gz
[root@mail src]# tar xzfv mrtg-2.16.1.tar.gz
[root@mail src]# cd mrtg-2.16.1
[root@mail mrtg-2.16.1]# ./configure --prefix=/usr/local/mrtg-2       \
              --with-gd=/usr/local/src/gd      \
              --with-z=/usr/local/src/zlib     \
              --with-png=/usr/local/src/libpng
[root@mail mrtg-2.16.1]# make
[root@mail mrtg-2.16.1]# make install
MRTG就安装完成了,接下来进行配置。
四、MRGT的配置
[root@mail mrtg-2.16.1]# mkdir -p /home/mrtg/cfg
[root@mail mrtg-2.16.1]#  /usr/local/mrtg-2/bin/cfgmaker --global 'WorkDir: /home/mrtg' --global 'Options[_]: bits,growright' --output /home/mrtg/cfg/mrtg.cfg public@192.168.1.3
这里的192.168.1.3是的snmp服务器(我的是本机)
生成图表文件:
[root@mail mrtg-2.16.1]# /usr/local/mrtg-2/bin/mrtg /home/mrtg/cfg/mrtg.cfg
可以加入到crontab放系统自动生成图表,如下:
[root@mail mrtg]# crontab -e
加入内容(系统每5分钟生成一次图表):
*/5 * * * * /usr/local/mrtg-2/bin/mrtg /home/mrtg/cfg/mrtg.cfg
接下来生成index.html文件以供查看:
[root@mail mrtg]# /usr/local/mrtg-2/bin/indexmaker --output=/home/mrtg/index.html --title=TEST_SERVER /home/mrtg/cfg/mrtg.cfg

接下来在apache里将这个目录发布出来就可以了。