MRTG的介紹及安裝

原作: 李柏毅
修改: 白恭瑞
最後修改日期: 2003/4/23

MRTG的介紹

  MRTG為一個使用甚廣的網路流量統計軟體,它可以向有支援SNMP設備取得資訊後繪出網路流量的統計圖。

 

MRTG的安裝

可分為下列五大項

1.安裝相關軟體

2.安裝MRTG

3.配置SNMP

4.配置MRTG

5.製作首頁indexmaker

 

MRTG的觀看

使用瀏灠器輸入 http://mrtg_server的ip/mrtg 將可看到如下畫面

安裝相關軟體

以Rehat8.0為作業系統(OS)討論MRTG的配置和安裝。

要安裝MRTG需要安裝以下套件:GCC、Perl、gd、libpng和zlib。
先使用下面的命令來判斷系統是否安裝有這些套件:
[root@Girl doc]# rpm -qa|grep gd
[root@Girl doc]# rpm -qa|grep perl
[root@Girl doc]# rpm -qa|grep libp
[root@Girl doc]# rpm -qa|grep zlib
[root@Girl doc]# rpm -qa|grep gcc

如果發現哪個套件沒有安裝,只需直接從redhat光碟片安裝對應的rpm即可,例如:
[root@Girl doc]# rpm -ivh zlib-1.1.3-24 zlib-devel-1.1.3-24

 

 

MRTG的安裝

RedHat8.0本身就有配置MRTG2.9.17版本,免安裝即可使用

而目前為止MRTG的最新版本為2.9.25。如要安裝新版本,方法如下:

[root@Girl root]# tar -xvfz mrtg-2.9.25.tar.gz
[root@Girl root]# cd mrtg-2.9.25
[root@Girl MRTG-2.9.25]# ./configure --prefix=/usr/local/mrtg-2
[root@Girl bin]./configure --prefix=/usr/local/mrtg-2 \
>--with-gd=/usr/include \
>--with-gd-lib=/usr/lib \
>--with-gd-inc=/usr/include \
>--with-png=/usr/include \
>--with-zlib=/usr/include
[root@Girl MRTG-2.9.25]# make
[root@Girl MRTG-2.9.25]# make install
現在就已正確地安裝了MRTG系統。

 

 

配置SNMP服務

對於不同的網路設備,配置SNMP或開啟SNMP的方法是不同的

  1. 要被監看的設備是網路設備(switch或router),請參考該設備的說明文件。
  2. 要被監看的設備是 Linux機器,可以以下列的方法來配置SNMP
1.以下指令查看是否具備 snmp 套件, 如果沒有請放入光碟來安裝。

[root@Girl doc]# rpm -qa|grep snmp
net-snmp-5.0.9-2
net-snmp-utils-5.0.9-2

2.設定 : 改snmpd.conf

為了配合MRTG使用,還要修改snmpd的配置,以使其允許MRTG讀取其interface流量數據。

pico /etc/ snmp/ snmpd.conf

2.1. 將com2sec notConfigUser default public的內容修改為:(不改也可以,為了安全)

  com2sec notConfigUser default mypublic

2.2. 將#view systemview included mib2的內容修改為:

  view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc

2.3. 將access notConfigGroup "" any noauth exact systemview none none修改為:

  access notConfigGroup "" any noauth exact mib2 none none

3.啟動 snmpd (若巳啟動則改以 service snmpd restart)重新啟動:

[root@Girl doc]# service snmpd start
Starting snmpd: [ OK ]

配置MRTG

MRTG的配置信息都是保存在.cfg中,創建configure檔並定義希望的監控特性。
一般不需要直接手工編輯該配置文件,因為MRTG軟體提供有cfgmaker配置工
具,根據運行參數可以自動生成.cfg配置文件。在MRTG原始目錄的bin子目錄
下你可以得到該工具。
在RedHat8.0中預設即有mrtg的目錄了:
這裡的/var/www/html/mrtg就是MRTG的工作目錄。
下面指令生成MRTG配置文件:

[root@Girl bin]#cfgmaker --global "WorkDir: /var/www/html/mrtg" \
>--global "Options[_]: growright,bits" \
>--output /etc/mrtg.cfg \
>public@被監看設備的IP

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@210.240.232.254表示監控IP地址為210.240.232.254的設備,採用public作為共同體名通過SNMP協議來監控設備210.240.232.254。
對於希望使用MRTG來對多個設備進行監控的情況,舉例如下:
先使用cfgmaker來產生我們所要監控的設備組態檔:
cfgmaker --global "WorkDir: /var/www/html/mrtg" \
--global "Options[_]: growright,bits" \
--ifref=ip
public@第1台被監看設備的IP \
public@第2台被監看設備的IP \
public@第3台被監看設備的IP

接著使用下列指令來執行產生的CFG檔:

mrtg /etcl/mrtg/mrtg.cfg

使用手動執行MRTG並不能定時產生適當的統計資料,因此最好還是定時自動運行MRTG,預設為五分鐘運行一次。 pico /etc/crontab ,更改內容如下:

*/5 * * * * root mrtg /etc/mrtg/mrtg.cfg

製作首頁

我們只要用 indexmaker 就可以輕鬆的將MRTG 的結果產生相關的首頁供人連結

指令:
[root@Girl bin]#indexmaker /etc/mrtg/mrtg.cfg > /var/www/html/mrtg/index.html