linux mrtg 安装,Linux系统mrtg详细安装、设置说明

MRTG(Multi Router Traffic Grapher)是一套可用来绘出网络流量图的软件,由瑞士奥尔滕的Tobias Oetiker与Dave Rand所开发,此软件以GPL授权。

下面是网卡流量监控图

3dacd31dd0e8b04f6c63255db2a9efa9.png

MRTG最早的版本是在1995年春天所推出,以Perl所写成,因此可以跨平台使用,它利用了SNMP送出带有物件识别码(OIDs)的请求给要查询的网络设备,因此设备本身需支援SNMP。MRTG再以所收集到的资料产生HTML档案并以GIF或PNG格式绘制出图形,并可以日、周、月等单位分别绘出。它也可产生出最大值最小值的资料供统计用。

原本MRTG只能绘出网络设备的流量图,后来发展出了各种plug-in,因此网络以外的设备也可由MRTG监控,例如服务器的硬盘使用量、CPU的负载等。

Mrtg可用来监视linux的各种详细参数,如果不明白可以去搜索一下就知道了.今天我主要讲解的是他的设置方法.

一、前期准备

(1)MRTG需要以SNMP服务为基础,所以请确保你的系统已经启用了此服务,修改SNMP的配置:

#vi /etc/snmp/snmpd.conf

将62行:

access notConfigGroup "" any noauth exact systemview none none

改为

access notConfigGroup "" any noauth exact mib2 none none

把第89行前面的注释符号#去掉,变成

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

(2)linux Mrtg监控主机流量启动http服务和snmp服务:

首先查看两个服务在系统启动时是否已经开启

#chkconfig --list | grep nginx

没有启动的话需要修改下在什么启动模式下要自己启动:

# chkconfig --level 35 nginx on

对 snmpd 服务采用同样的设置,现在手动启动下

#service nginx start

#service snmpd start

啟動之後最好是用setup配置服務,讓其隨機自動啟動

查看端口的开启状况也可確認其是否已經被啟動

# netstat -tunlp |grep snmp

tcp 0 0 0.0.0.0:199 0.0.0.0:* LISTEN 4973/snmpd

udp 0 0 0.0.0.0:161 0.0.0.0:* 4973/snmpd

(3)MRTG生成供浏览图像需要http服务的支持,同时也需要gd、libpng和zlib三个软件包的支持,而gd的正常运行也需要其它的几个软件,(系統默認自帶,如果沒有自帶則需要我們手工安裝)

1.安装zlib-1.2.3

#tar zxvf zlib-1.2.3.tar.gz

#cd zlib-1.2.3

#./configure --prefix=/usr/local/zlib

#make

#make install

2.安装httpd-2.2.4

#tar zxvf httpd-2.2.4.tar.gz

#cd httpd-2.2.4

#./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-track-vars --enable-rewrite --with-z-dir=/usr/local/zlib

#make

#make install

启动httpd

/usr/local/apache/bin/apachectl -k start

3.安装libpng-1.2.14

#tar zxvf libpng-1.2.14.tar.gz

# cd libpng-1.2.14

# cp scripts/makefile.linux makefile

# make (若是提示找不到zlib库文件或者头文件,多半是makefile文件里zlib的默认路径有误。可编辑makefile文件,找到zlib项并重新指定路径到/usr/local/zlib/lib和/usr/local/zlib/include)。

# make install

4.安装freetype-2.1.10

# tar -zvxf freetype-2.1.10.tar.gz

# cd freetype-2.1.10

# mkdir -p /usr/local/freetype

# ./configure --prefix=/usr/local/freetype

# make;make install

5.安装jpegsrc.v6b

jpeg默认不会自建目录,因此需手动建立目录:

# mkdir -pv /usr/local/jpeg6/{,bin,lib,include,man/{,man1},man1}

安装

#tar zxvf jpegsrc.v6b.tar.gz

# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static

# make

# make install

# make install-lib

6.安装libxml2-2.6.19

# tar -zxf libxml2-2.6.19.tar.gz

# cd libxml2-2.6.19

# mkdir -p /usr/local/libxml2

# ./configure --prefix=/usr/local/libxml2

# make; make install

#cp xml2-config /usr/bin

7.安装GD-2.0.33库

# tar -zvxf gd-2.0.33.tar.gz

# mkdir -p /usr/local/gd2

# cd gd-2.0.33

# ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6/ --with-png=/usr/local/lib/ --with-zlib=/usr/local/zlib/ --with-freetype=/usr/local/freetype/

# make

# make install

(4)修改系統語言配置

#vi /etc/profile

增加如下兩行

LC_ALL=C

LANGUAGE=on

二、开始安装

(1)开始安装mrtg

#cd /usr/local/src

#wget http://oss.oetiker.ch/mrtg/pub/mrtg-2.14.5.tar.gz

#tar zvxf mrtg-2.14.5.tar.gz

#cd mrtg-2.14.5

#./configure --prefix=/usr/local/mrtg 注意:“--prefix=/usr/local/mrtg”是指定的安装路径

#make

#make install

(2)配置MRTG

首先为mrtg的主页在web目錄下建立一个目录,假如web目錄是:/home/wwwroot/

在此目录下新建目录mrtg和sh即:

#cd /home/wwwroot/

#mkdir mrtg

#cd mrtg

#mkdir sh

如果路径嫌长感到不方便的话可以建立軟連接:

#cd /

#ln –s /home/wwwroot/mrtg _mrtg

#ln –s /usr/local/mrtg/bin _mrtgbin

把一些圖片複製過去

#cd /usr/local/src/mrtg-2.14.5 //進入mrtg安裝目錄

#cp ./images/*.* /_mrtg/

然后需要创建一个配置文件:

#/_mrtgbin/cfgmaker public@改成本機IP --output=/_mrtg/lxy.cfg

修改配置文件:

#vi /_mrtg/lxy.cfg

将 #WorkDir:/home/http/mrtg 去掉注释并改为 WorkDir: /home/wwwroot/mrtg (此处是MRTG的WEB目录)

将 #Options[_]: growright, bits 前面的#去掉,靠左对齐

在最后加上Language: big5,然后保存

(3)測試配置檔(如果出錯就多測幾次)

LANG=C /_mrtgbin/mrtg /_mrtg/lxy.cfg

===================================================

(4)根據下方的說明建立sh和pl檔案,然後修改.sh檔案讓其可執行(.sh檔案內容在下方)

#cd /_mrtg/sh

#chmod 0755 *

(5)生成MRTG網站首頁文件:已在root目录下

#/_mrtgbin/indexmaker --output=/_mrtg/index.html --title="Lidalin's MRTG" /_mrtg/lxy.cfg

(6)接下来运行程序

#/_mrtgbin/mrtg /_mrtg/lxy.cfg 有的人用這種方法啟動#env LANG=C /_mrtgbin/mrtg /mrtg/lxy.cfg

如果有警告或錯誤,則多运行几次,當警告或錯誤不再出现時就OK了

(7)MRTG生成的web页面是静态的,为了能让其不断的刷新,需要将以上命令添加进crontab

#crontab -e

添加如下一行

*/1 * * * * /_mrtgbin/mrtg /_mrtg/lxy.cfg

保存,然后reboot

打開瀏覽器,輸入 http://改成本機IP/mrtg 应该就可以看到网络使用情况的曲线了,一分鐘后再看比較準確!

注意:如果你设置了中级防火墙而又没有开启80端口访问,需要编辑/etc/sysconfig/iptables允许别人访问80端口

三、mrtg.cfg 里面参数的意思

Target:是要执行的脚本

Xsize:生成图表的横向宽度(最大600)

Ysize:生成图表的纵向高度(最大200)

Title:标题

kmg: Change the default multiplier prefixes

Ytics:纵向划分为几个块(格子)

MaxBytes:图表纵向数值的最大上限

PageTop:页面上面的提示

kilo:一般是写1024,如果需要的话,是1000在计算机里的单位

LegendI:从SHELL返回的数据中的第一个

LegendO:从SHELL返回的数据中的第二个

Options: growright,表示图表向右延展

四、配置其他範例

注意:修改了配置一定要重設第二大步驟中的第(3)(4)(5)(6)步驟

其他配置的部份均放入此資料夾下

#cd /_mrtg/sh

(1)監視内存使用狀況

建立脚本文件

#vi mem.sh

添加(步驟五的)脚本:

保存后要让其具有執行权限

#chmod 0755 /_mrtg/sh/*

(2)编辑/mrtg/lxy.cfg并添加(步驟五的)内容:

五、各个SHELL(修改了配置之後要重新生成首頁,然後重啟)

(1)MEMORY:mem.sh

#!/bin/bash

# This script to monitor the mem usage.

totalmem=`/usr/bin/free |grep Mem |awk '{print $2}'`

usedmem=`/usr/bin/free |grep Mem |awk '{print $3}'`

echo "$totalmem"

echo "$usedmem"

编辑MRTG的配置文件:MaxBytes的值根據實際狀況修改

# Mem

Target[memory]: `/_mrtg/sh/mem.sh`

Unscaled[memory]: dwym

MaxBytes[memory]: 2048000

Title[memory]:Memory

ShortLegend[memory]: &

kmg[memory]:kB,MB

kilo[memory]:1024

YLegend[memory]:   Memory Usage :

Legend1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值