用mrtg监控网络设备端口流量

被监控设备必须支持snmp协议,因为mrtg就是通过snmp协议来获取该设备的端口流量信息。如何在一个网络设备上启用snmp协议呢?

在配置模式下执行如下命令:3550(config)#snmp-server community public ro,启用snmp协议。启用后才能使用mrtg进行监控。

我中心用一台linux服务器监控三台网络设备的流量,其服务器地址为10.66.100.100/16,三台交换机的任一VLAN地址分别为 192.168.3.253,172.19.96.2,10.70.0.1。现为了叙述方便,仅选取10网段的交换机为例进行说明。其他设备方法相同,不 再赘述。

在执行mrtg的各步操作前,linux系统中必须先安装apache服务,用于网页发布。

I、Apache服务的安装

因为mrtg是以网页的形式来显示被监测设备的端口流量信息的,所以必须先安装apache服务。现将安装过程中的几个问题描述如下:

下载apache-2.0.44-2.i586.rpm软件包,安装时系统显示"libssl.so.0  is  needed  by  apache-2.0.44-2.i586.rpm",说明安装apache服务时需要该函数库。

下载openssl-compat-0.9.6m-8.i586.rpm软件包,安装后系统不再出现上述提示,但提示缺少libdb.so.3文件,下载db2-2.4.14-8.i585.rpm软件包,安装后可以正常安装apache2.0。

II、启动Apache服务

在"控制面板"'"服务"项中选中httpd项,进行各种操作。

III、 Apache服务的配置

安装完成后,系统自动在/etc/apache2目录下生成httpd.conf文件,该文件是Apache服务的配置文件,将其中一行修改如下:

<Directory   "/usr/local/apache2/htdocs/mrtg">

此目录即为网页发布目录,后续操作所生成的索引文件都将存放在这个目录中,才能以网页的形式发布出来。

注:给大家介绍一个网站,上面提供了非常全面的rpm包下载,本文中所用的所有rpm包都从该网站下载,非常方便。网址为:http://rpm.pbone.net/

IV、安装MRTG

下载mrtg-2.16.2.tar.gz文件, 解压缩至mrtg-2.16.2目录,命令如下:

[root@localhost lxjun]#tar   -zxvf    mrtg-2.16.2.tar.gz

将mrtg安装至指定目录/usr/local/mrtg-2
[root@localhost mrtg-2.16.2]#./configure   --prefix=/usr/local/mrtg-2
[root@localhost mrtg-2.16.2]#make
[root@localhost mrtg-2.16.2]#make   install

1、 生成.cfg文件

[root@localhost bin]#perl cfgmaker public@10.70.0.1 --global "workdir:/usr/local/apache2/htdocs/mrtg"  --output  mrtg10.70.0.1.cfg

这样即在/usr/local/mrtg-2/bin目录下生成10网段交换机的配置文件mrtg10.70.0.1.cfg

2、编辑配置文件

使用vi编辑器对该文件进行编辑,使其成为一个守护进程运行

在该文件末尾添加runasdaemon:yes,存盘退出。

3、后台运行mrtg,时刻监视设备端口流量

[root@localhost bin]# perl   mrtg    mrtg10.70.0.1.cfg   &

注:若此进程正在运行,应先杀掉后才能正常执行,否则将出现错误提示。在执行此操作前,应先使用[root@localhost bin]# ps  -ef  |grep  mrtg命令查看一下正在运行的关于mrtg的进程,查看结果如下:

root     16004     1  0  Apr03 ?         00:10:37 perl mrtg mrtg192.168.211.1.cfg
root     20778     1  0  Apr04 ?         00:03:50 perl mrtg mrtg172.19.96.2.cfg
root      6277     1  0  09:27 ?          00:00:02 perl mrtg mrtg10.70.0.1.cfg
root      6420  6169  0  09:41   pts/4    00:00:00 grep mrtg

表明此进程正在运行,应使用[root@localhost bin]# kill  -9  6277(PID)先杀掉此进程,再执行此步操作。

4、生成index文件

[root@localhost bin]# perl indexmaker --output=/usr/local/apache2/htdocs/mrtg/index.html mrtg10.70.0.1.cfg

在/usr/local/apache2/htdocs/mrtg目录下生成index.html文件,该文件以图表的形式记录了10网段交换机各端口的流量信息。

更换端口后必须进行的操作

因为MRTG是通过snmp协议的get(  )命令读取交换机设备的MIB库信息,所以更换端口后index文件中获取不到更换后的端口的流量信息,原端口信息也不会在表中自行消失。必须重新执行全部操作。

Leave a Reply