使用MRTG和可网管交换机监控网络流量

本文将简单介绍如果利用MRTG和华为S2126EI可网管交换机来监控查询网络流量。
以下资料大部分取自互联网。

       关于MRTG
       MRTG(MultiRouter Traffic Grapher)是基于SNMP的典型网络流量统计分析工具。它通过SNMP协议从设备得到其流量信息,并将流量负载以包含JPEG格式图形的HTML文档的方式显示给用户,以非常直观的形式显示流量负载。它不仅耗用的系统资源小,而且是完全免费的。是一款应用非常广泛的网络流量统计工具。关于mrtg的最详细的信息可以http://www.mrtg.org/得到。

  关于SNMP
  SNMP简单网络管理协议(Simple Network Management Protocol)是由互联网工程任务组(Internet Engineering Task Force)定义的一套网络管理协议。一个管理工作站利用SNMP可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。

      配置可网管交换机

1.配置交换机的IP

通过Console口在超级终端中执行以下命令配置以太网交换机管理VLAN的IP地址

system              #  进入系统视图

[Quidway] interface vlan1     #  进入管理VLAN
 
[Quidway-Vlan-interface1] undo ip address         #取消管理VLAN原有的IP地址

[Quidway-Vlan-interface1] ip address 192.168.1.1 255.255.255.0   
#配置以太网交换机管理VLAN的IP地址为192.168.1.1

2.配置交换机的snmp参数

system              #  进入系统视图

[Quidway]snmp-agent community read jason      
#设置共同体名(community)为jason,后面mrtg配置需要用到

[Quidway]snmp-agent sys-info contact mrtg@10235.com  
#设置管理员邮箱,设置与否无所谓

[Quidway]snmp-agent sys-info location Xiamen China       
#设置交换机物理地址,设置与否无所
 
[Quidway]snmp-agent sys-info version v2c                    
#设置交换机支持的SNMP版本,有v1 v2 v2c和v3,all为全部支持

[Quidway]snmp-agent target-host trap address udp-domain 192.168.0.1 udp-port 5000 params securityname jason
#设置交换机向192.168.0.1的机器发送snmp报文

PS:设置完成后记得要save到交换机的flash Memory,详细的说明请参考交换机白皮书。
  MRTG的安装与配置

    1.安装MRTG

   安装MRTG前需要先安装gcc、perl、gd、libpng、zlib、freetype等软件包,另外需要通过web浏览还需要现配置好apache等web服务。
     
       Mrtg最新版本为V2.12.2,可以到http://www.mrtg.org/免费下载。
 

# tar xvfz mrtg-2.12.2.tar.gz
# cd mrtg-2.12.2
# ./configure –prefix=/usr/local/mrtg
# make
# make install
  2.生成配置文件/etc/mrtg/mrtg.cfg
      接下来需要要配置mrtg以实现对交换机的监控。mrtg的配置信息都是保存在mrtg.cfg文件中的,创建该文件并且在其中定义其默认参数。mrtg软件包提供有cfgmaker配置工具,这是一个脚本文件,根据运行参数可以自动生成mrtg.cfg配置文件。在mrtg源码目录的bin子目录下你可以得到该工具。

      由于我们需要通过web来监控交换机流量,因此首先需要在apache中配置好,站点绑定的域名和站点目录的路径,假设存放mrtg生成的统计文件在/home/vhosts/mrtg/www/目录下。

    命令如下:

./cfgmaker –global “WorkDir: /home/vhosts/mrtg/www/”  –global “language: chinese” –global “Options[_]: growright,bits” –ifref=nr –ifdesc=descr –show-op-down  –output=/etc/mrtg/mrtg.cfg   jason@192.168.1.1
 
  PS:–global参数表示后面的选项对后面指定的设备均有效(在同时监控多个设备的时候,该参数就会有作用)。WorkDir制定mrtg的工作目录;language 表示指定生成HTML页面的语言;Options主要为一些特定的选项。其中growright表示时间箭头向右;bits表示接口的带宽单位。一般来说默认Options配置就可以满足要求了。此外,–show-op-down表示显示down的接口;ifref用来指示用什么选项来标识设备接口,这里指定使用IP地址来标识网络设备接口。ifref可以指定为nr、ip、eth、descr、name。nr表示用接口在MIBII库中Interface接口的ifIndex来识别接口;IP表示使用ip地址识别接口;eth表示使用接口的物理地址标识接口;descr表示使用接口的描述信息来标识接口;name表示使用接口名来标识接口。一般来说ip地址是唯一的,但是有些情况下接口是没有IP地址的,例如我们现在要交换机,交换机的各个端口是没有ip的。对于接口来说nr(接口号)是唯一的,因此对于一般情况使用IP地址就可以了,而对于其他一些情况则需要采用nr了。后面的–output的参数表示配置文件的生成路径(缺省输出到屏幕);jason@192.168.1.1表示监控IP地址为192.168.1.1的设备,采用jason作为共同体名(Community)通过snmp协议来监控设备192.168.0.1。

  3.生成index.html文件

  执行indexmaker来生成index.html文件,代码如下:

# ./indexmaker
–title=mrtg.10235.com
–output=/home/vhosts/mrtg/www/index.html   /etc/mrtg/mrtg.cfg
 
  PS:–title后面的参数用于指定HTML页面的标题,–output用于指定HTML页面的输出位置。最后的参数为cfgmaker生成的mrtg配置文件。

  4.设置mrtg为自启动且每5分钟更新一次

  两种方法:

      (1)在/etc/crontab文件加入以下代码:

      0- 59/5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg
 

  (2)打开/etc/mrtg/mrtg.cfg
       
       在###Global Config Options的下一行加入以下命令:
       RunAsDaemon: yes
       Interval:5
   
       在/etc/rc.d中加入

       /usr/local/mrtg/bin/mrtg  /etc/mrtg/mrtg.cfg

       PS:设置mrtg以服务运行,并且每5分钟自动去获取一次SNMP的数据及更新网络流量图形。
    
       5.运行mrtg

        执行 /usr/local/mrtg/bin/mrtg  /etc/mrtg/mrtg.cfg

        PS:在前三次运行时可能会报告遗失日志文件的告警信息,不要理睬这些信息,只需要连续运行三次以后再运行就不会产生告警信息了。

       最后,现在已经可以通过http来监控交换机流量了。访问apache绑定的网站域名,例如mrtg.10235.com。另外生成的index.html可以用Dreamweaver来编辑美化。

mrtg

发表评论?

2 条评论。

  1. Hi~我想请教一下snmpd.conf这个文件我如何添加Community Name?谢谢:)

  2. 监控交换机用不到snmpd.conf这个文件 如果你是想监控服务器 可以baidu或者gg搜索一下snmpd.conf文件的配置范例 很多:D

发表评论

注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>