» 您尚未 登录   注册 | 社区服务 | 帮助 | 社区 | 无图版


常州五颜六色网络技术有限公司 -> 技术文档 -> 网络流量监控器mrtg安装与配置(原创)
 XML   RSS 2.0   WAP 

--> 本页主题: 网络流量监控器mrtg安装与配置(原创) 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题
阿七




该用户目前不在线
级别: 未验证会员
精华: 0
发帖: 909
威望: 0 点
金钱: 2161 RMB
贡献值: 0 点
在线时间:512(小时)
注册时间:2006-03-29
最后登录:2008-08-07
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子

网络流量监控器mrtg安装与配置(原创)

作者:tiredboy
作者网站:http://www.uplinux.net
联络方式:stutiredboy@gmail.com
转载请注明出处


环境:FreeBSD 5.3
软件:cgilib-0.5
gd-2.0.33
httpd-2.0.49
libpng-1.2.8
mrtg-2.13.2
net-snmp-5.1.3.1
php-4.3.7
routers2-v2.14
rrdtool-1.0.48
zlib-1.2.1
简介
Mrtg(Multi Router Traffic Grapher,MRTG)是一个监控网络链路流量负载的工具软件,它通过snmp协议从设备得到设备的流量信息,并将流量负载以包含PNG格式的图形的HTML文档方式显示给用户,以非常直观的形式显示流量负载。
关于mrtg的最详细的信息可以从http://people.ee.ethz.ch/~oetiker/webtools/mrtg 得到。

mrtg具有以下特色:
可移植性:目前可以运行在大多数Unix系统和Windows NT之上。
源码开放:Mrtg是用perl编写的,源代码完全开放。
高可移植性的SNMP支持:Mrtg采用了Simon Leinen编写的具有高可移植性的SNMP实现模块,从而不依赖于操作系统的SNMP模块支持。
支持SNMPv2c:MRTG可以读取SNMPv2c的64位的记数器,从而大大减少了记数器回转次数。
可靠的接口标识:被监控的设备的接口可以以IP地址、设备描述、SNMP对接口的编号及Mac地址来标识。
常量大小的日志文件:MRTG的日志不会变大,因为这里使用了独特的数据合并算法。
自动配置功能:MRTG自身有配置工具套件,使得配置过程非常简单。
性能:时间敏感的部分使用C代码编写,因此具有很好的性能。
PNG格式图形:图形采用GD库直接产生PNG格式。
可定制性:MRTG产生的web页面是完全可以定制的。
mrtg的主页是http://www.mrtg.org,可以从这里下载软件。
SNMP简介
一个网络管理系统一般要包含以下几个元素:①若干个(可能很多个)需要被管理的网络设备节点,如路由器、服务器等设备,每个节点上都运行着一个称为设备代理(agent)的应用进程,其实现对被管理设备的各种被管理对象的信息如流量等的搜集和对这些被管对象的访问的支持;②至少一个管理工作站,该管理站运行着管理平台应用系统,实现为管理员提供对被管设备的可视化的图形界面,从而使管理员可以方便的进行管理;③一个管理协议,用来定义设备代理和管理工作站之间管理信息传送的规程。其中管理协议的操作是在管理框架下进行的,管理框架定义了和安全相关的认证,授权,访问控制和加密策略等各种安全防护框架。
在运行TCP/IP协议的互联网环境中,管理协议标准是简单网络管理协议(Simple Network Management Protocol,SNMP),其定义了传送管理信息的协议消息格式及管理站和设备代理相互之间进行消息传送的规程。
出于业界对网络管理协议标准化的迫切要求的驱动,IETF于1990发布了SNMPv1的正式RFC文档;其设计思想重点放在保证协议的简单性、灵活性和可扩展性上,并希望把SNMP作为一个过渡性的网管协议来作为实现对互连的网络设备进行管理时遵循的标准,待OSI的网络管理协议—CMIP的开发、实现和标准化成熟和完善到可以在业界推广之后,再用CMIP来替换SNMP。但是由于各种的原因,CMIP并没有替代SNMP,而SNMP发展为业界的标准。
SNMP一共发展有3个主版本,分别为SNMPv1 ,SNMPv2和SNMPv3。其中SNMPv2又分为若干个子版本,其中SNMPv2c应用最为广泛:
SNMPv1: 是第一个正式协议版本,在RFC1155-RFC1158中定义,该版本采用了基于共同体名的安全机制;
SNMPv2c: 这个版本被称为基于共同体名的SNMPv2,使用基于共同体名的安全机制和SNMPv2p做出的协议操作方面的扩充,由RFC1901-RFC1906定义;
SNMPv3: 该协议版本采用基于用户的安全机制,其安全机制是在SNMPv2u和SNMPv2*基础上进行大量的评议以后进行了更新,并且对协议机的逻辑功能模块的进行了划分而保证了良好的可扩充性,由RFC2271-RFC2275所定义。
运行SNMP管理系统的原理及SNMP协议
使用SNMP协议的网络管理系统管理结构工作一般包括:管理进程通过定时向各个设备的设备代理进程发送查询请求消息(以轮询方式),来跟踪各个设备的状态;而当设备出现异常事件如设备冷启动等时,设备代理进程主动向管理进程发送陷阱消息,汇报出现的异常事件。这些轮询消息和陷阱消息的发送和接受规程及其格式定义都是由SNMP协议定义的;而被管理设备将其各种管理对象的信息都存放在一个称为管理信息库(Management Information Base)库结构中。
其中SNMP协议是运行在UDP协议之上,它利用的是UDP协议的161/162端口。其中161端口被设备代理监听,等待接受管理者进程发送的管理信息查询请求消息;162端口由管理者进程监听等待设备代理进程发送的异常事件报告陷阱消息,如Trap。
设备的所有的需要被管理的信息被看作一个各种被管理对象的集合,这些被管理对象由OSI定义在一个被称作管理信息库(Management Information Base,MIB)的虚拟的信息库中。
管理对象库MIB
MIB是一个按照层次结构组织的树状结构(定义方式类似于域名系统),管理对象为定义为树中的相应叶子节点。管理对象是按照模块的形式组织,每个对象的父节点表示该种对象属于上层的哪一个模块。而且OSI为树中每一层的每个节点定义唯一的一个数字标识,每层中的该数字标识从1开始递增,这样树中的每个节点都可以用从根开始到目的节点的相应的标识对应的一连串的数字来表示,如1.3.6.1.2.1.1表示了MIBII中系统组子树,而1.3.6.1.2.1.1.1.0表示系统组中的系统描述(sytem Descrption)对象。每个对象的一连串数字表示被称为对象标识符(Object Indentifier,OID)。
相关的一组对象的集合被定义为一个MIB模块。这些模块使用OSI的抽象语法标记(Abstract Syntax Notation One,ASN.1)的一个子集写成。该子集被定义为管理信息结构(Management Information,SMI)。
SNMP的消息在发送和传输时消息是采用基本编码规则(BER)对消息进行编码。
SNMP基本的标准MIB库是MIBII,具体请参考RFC 1213。
SNMP协议操作
SNMP提供有三类操作,分别为Get,Set和Trap。
Get操作实现对被管理对象所表示的管理信息的读操作。在SNMPv1中,GET操作具体一共有两种形式
Get和GetNext操作: Get操作指示直接读取操作参数指定的OID所表示的被管理对象的管理信息值。GetNext操作指示读取操作参数指定的OID所表示的被管理对象在MIB树中按照字典顺序的下一个被管理对象的管理信息的值。在SNMPv2中,增加了一种GetBulk操作,其是Get和GetNext的综合,是为了提高对被管理信息的访问的效率而增加的。
Set操作实现对被管理对象的管理信息进行写操作,其实现直接对操作参数指定的OID所表示的被管理对象对应的管理信息的值的设置。
前面几种消息是由管理工作站主动实现对被管理设备进行轮询访问时发出以得到被管理设备的各种信息;而在被管理设备出现异常事件需要及时向管理工作站报告时,就需要Trap操作,该操作实现被管理设备向管理工作站报告设备上出现的异常事件,如网络接口出现故障或恢复工作,设备重新启动等信息。另外在SNMPv2中新增加了一种Inform操作来实现管理站与管理站之间的通信。
其中上述操作的消息都可以在操作参数中一次指定一个或多个管理对象OID信息,也就是说一个消息一次可以实现对多个被管理对象的操作。
SNMPv1和SNMPv2c采用了一种简单的基于共同体名的安全机制:
管理站和被管设备上都存储有该充当密码作用的共同体名;消息发送者(一般是管理者)在要发送的消息中的共同体名字段中填入对应于接收者的共同体名,然后以明文方式在网络上发送消息,接收方(被管理设备)接收到消息以后,如果消息格式是正确的,则读取该字段,与自身保存的共同体名相比较,来实现对发送消息者的认证。在一些实现中,对应于每个共同体名还有一个机器地址列表,来表示只有地址在这个列表中的机器使用该共同体名发送的消息才认为是可信的。这里的共同体名就担任密码的作用。同时对应于每个共同体名都有一个访问控制权限,可能值为读或读写。只有请求的操作和使用的共同体名的权限一致才允许进行。
详细情况请参考RFC 1157、RFC 1902、RFC 2273、RFC 2274。
安装步骤:
一,     环境的搭建:
1,     GD库的安装,考虑到MRTG是以包含PNG格式的图形的HTML文档方式显示给用户,故GD库需对PNG支持,故应先安装libpng,装libpng之前需要有zlib.
①Zlib的安装
tar –zxvf zlib-1.2.1.orig.tar.gz
cd zlib-1.2.1
./configure --prefix=/usr/local/zlib     */指定zlib的安装路径为/usr/local/zlib
make
make install
②Linpng的安装
tar –zxvf libpng-1.2.8-config.tar.gz
cd libpng-1.2.8-config
./configure –prefix=/usr/local/libpng –with-zlib=/usr/local/zlib
make
make install
③freetype的安装
考虑到对freetype的支持,可安装freetype2,通过ports安装
cd /usr/ports/print/freetype2
make install
④GD的安装
tar gd-2.0.33.tar.gz
./configure –prefix=/usr/local/gd –with-zlib=/usr/local/zlib –with-png=/usr/local/libpng
make
make install
2,     Apache+php环境的搭建
①安装apache
tar –zxvf httpd-2.2.0.tar.gz
cd httpd-2.2.0.tar.gz
./configure --prefix=/usr/local/apache --enable-track-vars --enable-cgi --enable-so --with-config-file-path=/usr/local/apache/conf         *// --enable-cgi 支持CGI; --enable-so 如果没有此顶,在编译PHP的时候会提示找不到apxs2; --enable-track-vars 为启动cookie的get/post等追踪功能
make
make install
 启动apache守护进程;
mirror# /usr/local/apache/bin/apachectl –k start
打开浏览器,输入 http://localhost/ 就能看到一个apache的欢迎页面了,这表示我们已经成功解决了apache的安装。
对于apache的配置此处不做说明,但做修改时这注意备份。
②PHP的安装
 
tar -zxvf php-5.1.2.tar.gz

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc --with-gd=/usr/local/gd --with-zlib=/usr/local/zlib --with-png=/usr/local/libpng

make

make install

cp php.ini-dist /usr/local/php/etc/php.ini   *//注意:此步非常重要,但却经常被忽略
 
现在,我们还要对apache的配置文件做一点修改,目的是让apache能解释php程序

vi /usr/local/apache/conf/httpd.conf

找到#AddType application/x-tar .tgz 这行,在下面加一行。前面不要加#号。
AddType application/x-httpd-php .php

找到下面一行在后面加上index.php,这表示网站的默认页也能够为index.php
DirectoryIndex index.html index.html.var index.php

注意:改变了http.conf后,要重启apache服务器,否则不会生效!!

然后我们在网站存放的目录下建一个info.php的文件。我们还是用前面apache自己指定网站存放的位置,/usr/local/apache/htdocs目录。在这个目录中建一个文件info.php,内容是如下的

<? phpinfo(); ?>

然后改变这个文件的权限

chmod 755 info.php

在浏览器中打入 http://localhost/info.php ,就能看到php的信息了。如果还是出现的是 <? phpinfo(); ?> 字样的页面,那就是没有成功:( ,可能是您改变了apache的配制文件,忘记了重启apache服务器了,要重启一下试试看。
二,     mrtg+rrdtool+routers2.cgi的安装
1,     cgilib的安装         *//如果没有安装cgilib在编译rrdtool时会提示出错

tar –zxvf cgilib-0.5.tar.gz

cd cgilib-0.5

对于0.5版本的cgilib源码部分需做一定的修改:
在 cgi.c 里寻找 #include <malloc.h> ,把那行删掉
修改cgitest.c中116行的错误
106行的代码如下:
printf ("<h3>Cookie "Library" set</h3>\n");
应为代码出错,正确的应是
printf ("<h3>Cookie \"Library\" set</h3>\n");

之后

gmake

gmake install       *//采用gamke是因为cgilib版本为linux版本,用make无法安装
2,     mrtg的安装

tar –zxvf mrtg-2.13.2.tar.gz

cd mrtg-2.13.2

./configure --prefix=/usr/local/mrtg --with-gd-inc=/usr/local/include --with-gd-lib=/usr/local/lib --with-z-lib=/usr/local/zlib/lib --with-png-lib=/usr/local/libpng/lib

make
make install
3,     net-snmp的安装(对于非监控本机的MRTG系统,此步可省略)

tar –zxvf net-snmp-5.1.3.1.tar.gz

cd net-snmp-5.1.3.1.tar.gz

./configure     **//在configure的过程中会询问服务器的相关信息,可直接Enter跳过

make

make install

mkdir /etc/snmp     **//snmpd配置文件所在位置

cp EXAMPLE.conf /etc/snmp/snmpd.conf **//配置部份将在后面讲到

至此,我们的snmp安装成功。

4,     rrdtool的安装:

tar –zxvf rrdtool-1.0.48.tar.gz

cd rrdtool-1.0.48

./configure --prefix=/usr/local/rrdtool --disable-tcl --with-zlib=/usr/local/zlib --with-png=/usr/local/libpng --with-gd-inc=/usr/local/gd/include --with-gd-lib=/usr/local/gd/lib

make

make install
 
5,     routers2.cgi的安装:

tar –zxv routers2-v2.16.tar.gz

cd routers2-v2.16

perl install.pl   **//执行安装程序

This program attempts to install the routers2.cgi package, located in the current directory. It will attempt to identify system settings,but you must confirm the locations guessed, or give the correct information.
At any point, you can answer 'quit' to abort the installation.
Depending on your Perl implementation, you may also have line editing
and history capability.
Default answers are in square brackets before the prompt.
Continue [yes]? ---à按回车
Checking Perl libraries...
WARNING: You do not have the RRDs Perl libraries installed into the site_perl
directory correctly.
routers2.cgi will probably not run properly until these libraries are correctly
installed. Go to http://www.rrdtool.org/ for more details.
Note that this MAY not be a problem if they are located by the LibAdd directive
in the MRTG .cfg files.
If you have already installed RRDTool, then make sure you do the necessary
additional Perl Library install.
Continue [y]? ---à此警告可以不用理他,直接按回车
WARNING: You do not have the GD Perl libraries installed correctly.
routers2.cgi will still run, but the Compact Summary display will not work.
Download the GD libraries from CPAN.org if required.
NT Users should use PPM to collect GD from ActiveState.
UNIX users should note that they need the GD.pm Perl library IN ADDITION to
the libgd.a C library.
Continue [y]? **/此警告可以不用理他,直接按回车
FINDING OUT ABOUT YOUR SYSTEM
0. Attempting to identify your OS and web server...
- I think you are running under UNIX.
- I think you have Apache installed in
/etc/httpd/conf
1. Web server document root directory.
This is the base document directory of your web server.
Document root [/usr/local/apache/htdocs]? **/填入你的APACHE的文档发布目录
2. Web server CGI directory.
This is the directory where your web server keeps the CGI scripts.
CGI directory [/usr/local/apache /cgi-bin/]? **/填入你cgi-bin目录位置
3. MRTG install directory.
This is the directory where your MRTG configuration files are kept
MRTG config directory? **/填入你MRTG配置文件目录位置
4. MRTG config files.
This is the wildcarded filename format for your MRTG configuration files.
Use a '*' to mean 'any characters' - for example, '*.cfg' or '*/*.conf'.
MRTG files [*.cfg]? **/填入你MRTG配置文件名
5. RRD Database directory.
This is the directory where your .rrd files are kept
RRD directory? **/填入你MRTG-RRDTOOL数据库目录
6. Perl executable.
This is the full pathname of where the Perl executable file is kept.
Perl executable [/usr/bin/perl]? **/ PERL 的安装位置
7. routers2.cgi configuration file
This is the file that will hold the routers2.cgi configuration. Unless you
have a reason to move it, stick with the default.
If this file already exists, I will ask before overwriting it!
Configuration file [/tmp/routers2.conf]? **/填入你MRTG-RRDTOOL配置文件的位置
ASKING OPTIONS
1. Net::SNMP does not appear to be installed. Routing table extensions
have been disabled.
If you subsequently install Net::SNMP, then you can enable the extensions
in the routers2.conf file.
2. GD does not appear to be installed. This is required for the compact
summary screen to work. If you intend to install it later, answer YES.
Otherwise, answer NO.
Activate Compact Summary screen [no]? **/ 回车
3. How big should 1K and 1M be? This is the 'usebigk' parameter from the
routers2.conf file. You have three options - 'yes', 'no' and 'mixed'.
yes -> 1K=1024, 1M=1024x1024
no -> 1K=1000, 1M=1000x1000
mixed -> 1K=1024, 1M=1024x1000 (dont ask)
'usebigk' option [mixed]? **/ 回车
4. Do you want to use authentication? You can always enable this later if
you change your mind. There are other options available in the
configuration file as well, so you should check. If you are unsure, select
the default.
none -> do not use any additional authentication (default)
http -> use web server's own authentication, if available
ldap -> use ldap/ldaps authentication
file -> use a password file (not recommended)
auth option [none]? **/ 回车
5. Caching option
routers2 has support for fast CGI utilities such as speedycgi and mod_perl.
It achieves this by data caching between invocations.
This can dramatically improve performance on systems with a large
number of .cfg files, however it slows performance if you do not have
these features. If you are unsure, answer NO.
Valid answers: no, modperl, speedycgi
Caching option [no]? **/ 回车
6. Can I attempt to send an email to the author to let him know that the
software has been installed? This will only give your routers.cgi version,
Perl version, and Operating System version.
Can I mail [no]? **/ 回车
INSTALLING SOFTWARE
Perl is : /usr/bin/perl
MRTG files : /etc/mrtg.cfg
RRD files : /tmp
Doc root : /usr/local/apache/htdocs
CGI bin : /usr/local/apache/cgi-bin/
Config file : /tmp/routers2.conf
Routingtable: INACTIVE
Compact page: DISABLED
Caching : DISABLED
'usebigk' : mixed
Auth option : NONE
Mail Steve : no
Other options can be set later by modifying the Config file
Continue [yes]? 以上信息的确认然后进行安装
至此,我们所需要的环境及软件基本安装完毕。

[楼 主] | Posted: 2006-04-04 16:57 顶端
阿七




该用户目前不在线
级别: 未验证会员
精华: 0
发帖: 909
威望: 0 点
金钱: 2161 RMB
贡献值: 0 点
在线时间:512(小时)
注册时间:2006-03-29
最后登录:2008-08-07
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子



三,     网络流量监控系统的配置
1,     snmpd的配置
vi /etc/snmp/snmpd.conf

(1)首选是定义一个共同体名(community),这里是public,及可以访问这个public的用户名(sec name),这里是notConfigUser。Public相当于用户notConfigUser的密码
#     sec.name source       community **//找到此行,加上下面这句:
com2sec notConfigUser default     public

(2)定义一个组名(groupName)这里是notConfigGroup,及组的安全级别,把notConfigGroup这个用户加到这个组中。
# Second, map the security names into group names: **//找到此行,加上下面两名:
group   notConfigGroup   v1       notConfigUser
group   notConfigGroup   v2c       notConfigUser
(3)定义一个可操作的范围(view)名, 这里是all,范围是 .1
  #       incl/excl subtree                 mask
    view all         included   .1 **//一般来说,默认此行是没有被注释的,如果被注释了,请去掉此句前面的#
(4)定义notConfigUser这个组在all这个view范围内可做的操作,这时定义了notConfigUser组的成员可对.1这个范围做只读操作。
#           context sec.model sec.level match read   write notifaccess
***////在此句后面补上下面这句:
 access notConfigGroup ""     any     noauth   exact all none none

至此,我们对snmp的配置基本完毕,保存退出
启动snmpd:
/usr/local/sbin/snmpd &
测试snmp:snmpwalk -v 1 -c public localhost system
若系统反馈如下类似信息,则snmpd配置成功:
SNMPv2-MIB::sysDescr.0 = STRING: FreeBSD mirror 5.3-RELEASE FreeBSD 5.3-RELEASE #0: Fri Nov 5 04:19:18 UTC 2004   root@harlow.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.8
SNMPv2-MIB::sysUpTime.0 = Timeticks: (2675564) 7:25:55.64
SNMPv2-MIB::sysContact.0 = STRING: Me <me@somewhere.org>
SNMPv2-MIB::sysName.0 = STRING: mirror
SNMPv2-MIB::sysLocation.0 = STRING: Right here, right now.
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (6) 0:00:00.06
.
.
.
.
.
.
2,     mrtg的配置:
下一步就是要配置mrtg,实现对网络设备的监控。mrtg的配置信息都是保存在mrtg.cfg文件中的,创建该文件并且在其中定义希望的监控特性。幸运的是一般不需要直接手工编辑该配置文件,因为mrtg软件包提供有cfgmaker配置工具,这是一个脚本文件,根据运行参数可以自动生成mrtg.cfg配置文件。在mrtg源码目录的bin子目录下你可以得到该工具。

首先在www服务器的DocumentRoot目录下创建一个子目录用来存放mrtg生成的统计文件,这里DocumentRoot在/usr/local/apache/htdocs目录下,我们在该目录下创建子目录mrtg:

mkdir /usr/local/apache/htdocs/mrtg

这里的/var/www/html/mrtg就是mrtg的工作目录。下面就生成mrtg配置文件:

cfgmaker --global "WorkDir: /usr/local/apache/htdocs/mrtg"
--global "Options[_]: growright,bits"
--ifref=ip
--output /etc/mrtg.cfg
public@10.10.202.58

这里的--global参数表示后面的选项是对后面指定的设备都是有效的(如果希望对多个设备进行监控时,该参数就会发生作用)。WorkDir用来指示mrtg的工作目录;Options用来指定一些特定的选项,这里的growright,bits是用来指定默认options配置的,对于常见的应用来说默认options配置就可以满足需求了。ifref用来指示用什么选项来标识设备接口,这里指定使用IP地址来标识网络设备接口。ifref可以指定为nr、ip、eth、descr、name。nr表示用接口在MIBII库中Interface接口的ifIndex来识别接口;IP表示使用ip地址识别接口;eth表示使用接口的物理地址标识接口;descr表示使用接口的描述信息来标识接口;name表示使用接口名来标识接口。一般来说ip地址是唯一的,但是有些情况下接口是没有IP地址的,例如交换机就会出现这种情况。对于接口来说nr(接口号)是唯一的,因此对于一般情况使用IP地址就可以了,而对于其他一些情况则需要采用nr了。"--output /etc/mrtg.cfg"标识将生成的配置文件存放在/etc/目录下。"public@10.10.202.58"表示监控IP地址为10.10.202.58的设备,采用public作为共同体名通过snmp协议来监控设备10.10.202.58。

对于希望使用mrtg来对多个设备进行监控的情况,举例如下:

/usr/local/mrtg/bin/cfgmaker --global "WorkDir: /usr/local/apache/htdocs/mrtg"
--global "Options[_]: growright"
--ifref=name
--ifdesc=alias
public@192.168.1.4
--ifdesc=name
public@192.168.1.5 > /etc/mrtg.cfg

这里指示监控两个交换机设备:192.168.1.4和192.168.1.5,所有的设备都采用共同体名public来进行监控。

修改MRTG 的配置文件 mrtg.cfg 添加一下三行;
[root@proxy mrtg2]# more /etc/mrtg/net-rrd.cfg
# Created by
# /usr/local/mrtg/bin/cfgmaker --global 'WorkDir: /usr/local/apache/htdocs/mrtg' --global 'Options[_]: growright' --ifref=name --ifdesc=alias public@192.168.1.4 --ifdesc=name public@192.168.1.5

LogFormat: rrdtool 添加此行
PathAdd: /usr/local/rrdtool/bin/ 添加此行
LibAdd: /usr/local/rrdtool/lib/perl/ 添加此行
### Global Config Options
# for UNIX
WorkDir: /home/http/mrtg

运行mrtg

一旦生成正确的配置文件,就运行下面的命令:

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

这将查询被监控的设备并在工作目录下创建初始的流量图和web页面,在前三次运行时可能会报告遗失日志文件的告警信息,不要理睬这些信息,只需要连续运行三次以后再运行就不会产生告警信息了。如果仍然出现告警那么就需要察看问题出在哪里了。

至此,我们的安装与配置已经基本完成,此时,可通过http://你的IP/cgi-bin/routers2.cgi来观察流量图。


补充:
  1,为了让httpd和snmpd能在开机时自动运行,可通过编辑/etc/rc.local,添加如下两行:
    /usr/local/apache/bin/apachectl –k start
    /usr/local/sbin/snmpd &
    注意,前面没有#号
2,     为了方便用户使用,直接输入http://你的IP就可以跳转到http://你的 IP/cgi-bin/routers2.cgi,可在/usr/local/apache/htdocs下建立index.html文件,内容如下:
    <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta http-equiv="refresh" content="0; url=http://10.10.202.58/cgi-bin/rou
ters2.cgi">  **//IP自定
<title>
ShanTou University Network Center   **//title自定
</title>
</head>
</html>
3,     使用手工运行mrtg并不能定时产生适当的统计信息,因此最好还是定时自动运行mrtg来生成统计信息,默认为五分钟运行一次。作为root身份crontab -e进入编辑状态,添加内容:
*/5 * * * * /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg


作者:tiredboy
作者网站:http://www.uplinux.net
联络方式:stutiredboy@gmail.com

参考文档:
(1)网络流量监控    作者:樊礼
(2)ChinaUnix
(3)LinuxSir     // 感谢此两个网站热心网友的帮忙,在安装过程中其实是出现在很多困难的,如果没有这些网友的帮助我就没办法完成这个系统,在此谢谢大家了,也把我的文档共享出来,希望对大家能有点帮助^_^

[1 楼] | Posted: 2006-04-04 16:57 顶端

常州五颜六色网络技术有限公司 -> 技术文档



Copyright © 2005-2009 5y6s Inc. 苏ICP备05001866号 Powered by PHPWind 5.0.1
Total 0.023372(s) query 5, Gzip enabled
会员言论不代表本站立场 本站法律顾问:北京汇泽律师事务所 韩律师
QQ:点击这里给我发消息 /点击这里给我发消息 /点击这里给我发消息