小知识:史上最详细的mrtg(Multi Router Traffic Grapher)设置说明

Multi Router Traffic Grapher——MRTG是一个监控网络链路流量负载的工具软件,通过snmp协议得到设备的流量信息,并将流量负载以包含PNG格式的图形的HTML 文档方式显示给用户,以非常直观的形式显示流量负载。  一、前期准备 (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=”Lidalins 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]: &nbsp; Memory Usage :  Legend1[memory]: &nbsp; Total Memory :  Legend2[memory]: &nbsp; Used Memory :  LegendI[memory]: &nbsp; Total Memory :  LegendO[memory]: &nbsp; Used Memory :  Options[memory]: growright,gauge,nopercent  PageTop[memory]:<H1>Memory</H1>  (2)SWAP:swap.sh  #!/bin/bash  # This script to monitor the swap usage.  totalswap=`/usr/bin/free |grep Swap |awk {print $2}`  usedswap=`/usr/bin/free |grep Swap |awk {print $3}`  echo “$totalswap”  echo “$usedswap”  编辑MRTG的配置文件:MaxBytes根据实际状况修改  # Swap  Target[swap]:`/_mrtg/sh/swap.sh`  Unscaled[swap]: dwym  MaxBytes[swap]: 3048000  Title[swap]:SWAP  ShortLegend[swap]: &  kmg[swap]:kB,MB  kilo[swap]:1024  YLegend[swap]: Swap Usage  Legend1[swap]: Total Swap  Legend2[swap]: Used Swap  LegendI[swap]: Total Swap  LegendO[swap]: Used Swap  Options[swap]: growright,gauge,nopercent  PageTop[swap]:<H1>Swap</H1>  (3)CPU:cpu.sh  #!/bin/bash  # run this script to check the mem usage.  totalmem=`/usr/bin/free |grep Mem |awk {print $2}`  usedmem=`/usr/bin/free |grep Mem |awk {print $3}`  UPtime=`/usr/bin/uptime | awk {print $3″”$4″”$5}`  echo $totalmem  echo $usedmem  echo $UPtime  hostname  编辑MRTG的配置文件:MaxBytes根据实际状况修改  # Cpu  Target[cpu]: `/_mrtg/sh/cpu.sh`  MaxBytes[cpu]: 100  Title[cpu]: CPU  Options[cpu]: gauge,nopercent,growright  YLegend[cpu]: CPU loading (%)  ShortLegend[cpu]:%  LegendO[cpu]: & CPU USER  LegendI[cpu]: & CPU SYSTEM  PageTop[cpu]: <H1>CPU</H1>  (4)磁盘佔用:df.pl  #!/usr/bin/perl  # output(df -kl) looks like this:  # Filesystem 1k-blocks Used Available Use% Mounted on  # /dev/md0 95645100 30401312 64272080 33% /  # /dev/hde1 14119 1159 12231 9% /boot  # In which case, this script returns :  # 95659219  # 30402503  # when run.  foreach $filesystem (`df -kl | grep -v “Filesystem”`){  @df = split(/\s+/,$filesystem);  $total += $df[1];  $usage += $df[2];  print “$total\n”;  print “$usage\n”;  hostname  编辑MRTG的配置文件:MaxBytes根据实际状况修改  # Disk used  Target[disk]: `/_mrtg/sh/df.pl`  Title[disk]: Disk Space  Unscaled[disk]: dwym  MaxBytes[disk]: 115247550  kmg[disk]: KB,MB,GB  LegendI[disk]: Total Disk Space  LegendO[disk]: Used Disk Space  Legend1[disk]: Total Disk Space  Legend2[disk]: Used Disk Space  YLegend[disk]: Megabytes  ShortLegend[disk]: &  Options[disk]: growright,gauge,nopercent  PageTop[disk]: <H1>Disk Space</H1>  (5)磁盘I/O:io.sh  #!/bin/bash  # This script will monitor the KBread/sec &KBwriten/sec of Disk.  # Creater: CCC IT loren ext:2288 2005/8/3  # As sda ,sdb,sdc,sdd,hda.  # disk=sda  hd=sda  disk=/dev/$hd  KBread_sec=`iostat -x $disk|grep $hd |awk {print $8}`  KBwrite_sec=`iostat -x $disk|grep $hd |awk {print $9}`  echo “$KBread_sec”  echo “$KBwrite_sec”  hostname  编辑MRTG的配置文件:如果需要检测更多的分区则修改io.sh  # Disk I/O  Target[diskIO]: `/_mrtg/sh/io.sh`  Title[diskIO]: Disk HDA I/O  Unscaled[diskIO]: dwym  MaxBytes[diskIO]: 100  kmg[diskIO]: KB,MB,GB  LegendI[diskIO]: Disk I/O KBread/sec  LegendO[diskIO]: Disk I/O KBwrite/sec  Legend1[diskIO]: Disk I/O KBread/sec  Legend2[diskIO]: Disk I/O KBwrite/sec  YLegend[diskIO]: Megabytes  ShortLegend[diskIO]: &  Options[diskIO]: growright,gauge,nopercent  PageTop[diskIO]: <H1>Disk I/O</H1>

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Linux日常维护常用命令集合整理

2023-6-3 3:53:00

建站知识

小知识:Linux(Unix)中误删除的文件恢复方法

2023-6-3 4:09:23

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索