mrtg的调试和使用(转)
出处:http://www.LinuxByte.net/ 作者:jogs(LinuxByte) 发布日期:2004-7-27 最近研究了下mrtg的使用 关于mrtg是干吗的就不说了,直接进入正题 安装: mrtg需要有以下包 gcc,Perl,gd,libpng,zlib 安装过程: ./configure --prefix=/usr/local/mrtg make make install 配置: mrtg重要的只有2个地方 一是就是它的conf文件 二是获取参数的源 它可以从snmp或者自写脚本来取得数据,不过linux下感觉snmp获得数据有一定的误差,感觉数据出来的但是实际mrtg根本拿不到,所以我以下都使用脚本方式来获得数据 生成配置文件: 由于生成mrtg配置文件默认带有网卡流量监控,需要snmp,所以首先需要修改下snmp的配置文件 vi /etc/snmp/snmpd.conf 将 #view systemview included mib2 修改为: view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc access notConfigGroup "" any noauth exact systemview none none 修改为: access notConfigGroup "" any noauth exact mib2 none none 保存,重起snmpd 首先先建立一个mrtg工作的主目录,由于mrtg使用web方式,所以需要建立在apache的主目录下 mkdir /var/www/mrtg 然后使用mrtg的cfgmaker命令生成mrtg的配置文件 /usr/local/mrtg/bin/cfgmaker --output /etc/mrtg.cfg public@192.168.0.1 此处192.168.0.1为本机ip mrtg.cfg配置文件生成后,会默认包含本机所有网卡的监控信息,如不需要可以删除 vi /etc/mrtg.cfg 将 # for UNIX # WorkDir: /home/http/mrtg 修改为 # for UNIX WorkDir: /var/www/mrtg 此处为我们的mrtg主目录 加入 Language: gb2312 指定页面显示语言为中文 制作首页 /usr/local/mrtg/bin/indexmaker --output=/var/www/mrtg/index.html /etc/mrtg.cfg indexmaker会依据你的mrtg.cfg自动创建一个访问页面 正确保存配置文件后执行 /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg 此时会报告错误,不用理会,连续执行3次后错误应该会消失,如还继续保错,则应为配置文件出错 注意:只有使用mrtg命令时,mrtg才会依据mrtg.cfg里的设置取值. 到这里,基本的mrtg已配置完成,确认snmp和httpd都已启动,打开浏览器,输入http://192.168.0.1/mrtg就 可以看到你的网卡流量图了. 此时的mrtg只可以监控网卡流量,如果需要监控其他则需要自己编写脚本和mrtg.cfg来实现 以下是一个apache连接的例子 首先再mrtg.cfg里加入apache连接的配置段 Target[apache_conn]: `/bin/mrtg.apa.pl` Options[apache_conn]: gauge,nopercent,growright Directory[apache_conn]:apache_conn MaxBytes[apache_conn]: 4000 YLegend[apache_conn]: apache连接数 ShortLegend[apache_conn]: 个 LegendI[apache_conn]: apache总连接数: LegendO[apache_conn]: apache当前连接数 Title[apache_conn]: apache连接数 PageTop[apache_conn]:
出处:http://www.LinuxByte.net/ 作者:jogs(LinuxByte) 发布日期:2004-7-27 最近研究了下mrtg的使用 关于mrtg是干吗的就不说了,直接进入正题 安装: mrtg需要有以下包 gcc,Perl,gd,libpng,zlib 安装过程: ./configure --prefix=/usr/local/mrtg make make install 配置: mrtg重要的只有2个地方 一是就是它的conf文件 二是获取参数的源 它可以从snmp或者自写脚本来取得数据,不过linux下感觉snmp获得数据有一定的误差,感觉数据出来的但是实际mrtg根本拿不到,所以我以下都使用脚本方式来获得数据 生成配置文件: 由于生成mrtg配置文件默认带有网卡流量监控,需要snmp,所以首先需要修改下snmp的配置文件 vi /etc/snmp/snmpd.conf 将 #view systemview included mib2 修改为: view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc access notConfigGroup "" any noauth exact systemview none none 修改为: access notConfigGroup "" any noauth exact mib2 none none 保存,重起snmpd 首先先建立一个mrtg工作的主目录,由于mrtg使用web方式,所以需要建立在apache的主目录下 mkdir /var/www/mrtg 然后使用mrtg的cfgmaker命令生成mrtg的配置文件 /usr/local/mrtg/bin/cfgmaker --output /etc/mrtg.cfg public@192.168.0.1 此处192.168.0.1为本机ip mrtg.cfg配置文件生成后,会默认包含本机所有网卡的监控信息,如不需要可以删除 vi /etc/mrtg.cfg 将 # for UNIX # WorkDir: /home/http/mrtg 修改为 # for UNIX WorkDir: /var/www/mrtg 此处为我们的mrtg主目录 加入 Language: gb2312 指定页面显示语言为中文 制作首页 /usr/local/mrtg/bin/indexmaker --output=/var/www/mrtg/index.html /etc/mrtg.cfg indexmaker会依据你的mrtg.cfg自动创建一个访问页面 正确保存配置文件后执行 /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg 此时会报告错误,不用理会,连续执行3次后错误应该会消失,如还继续保错,则应为配置文件出错 注意:只有使用mrtg命令时,mrtg才会依据mrtg.cfg里的设置取值. 到这里,基本的mrtg已配置完成,确认snmp和httpd都已启动,打开浏览器,输入http://192.168.0.1/mrtg就 可以看到你的网卡流量图了. 此时的mrtg只可以监控网卡流量,如果需要监控其他则需要自己编写脚本和mrtg.cfg来实现 以下是一个apache连接的例子 首先再mrtg.cfg里加入apache连接的配置段 Target[apache_conn]: `/bin/mrtg.apa.pl` Options[apache_conn]: gauge,nopercent,growright Directory[apache_conn]:apache_conn MaxBytes[apache_conn]: 4000 YLegend[apache_conn]: apache连接数 ShortLegend[apache_conn]: 个 LegendI[apache_conn]: apache总连接数: LegendO[apache_conn]: apache当前连接数 Title[apache_conn]: apache连接数 PageTop[apache_conn]:
apache连接数
Target指的是mrtg从那里取画曲线的值,此处可以从snmp和脚本取值,如从脚本取值需注意,需要前后用`来指定脚本路径而不是' . []指这个配置段的名称,这里为apache_conn,届时会在mrtg的workdir里建立同名的目录 Maxbytes指mrtg取值后能表现的最大值 YLegend指再图标中纵向的名称 ShortLegend指在图标中数值后面所跟的单位 LegendI 传递过去的第一个值 LegendO 传递过去的第二个值 Title 网页title Pagetop 网页显示名称 mrtg.apa.pl #!/usr/bin/perl $hostname=`hostname`; $hostname=~s/s+$//; $apache_all_conn=`netstat -an|grep 192.168.0.1:80|wc -l`; $apache_conn=`netstat -an|grep 192.168.0.1:80|grep ESTABLISHED|wc -l`; $apache_all_conn=~s/ $//; $apache_conn=~s/ $//; $apache_all_conn=~s/^s+|s+$//; $apache_conn=~s/^s+|s+$//; $gettime=`uptime|awk '{print $1" "$3" "$4}'`; $gettime=~s/,| $//g; print("$apache_all_conn "); print("$apache_conn "); print("$gettime "); print("$hostname "); 以上脚本为perl编写,由于apache的连接可以使用netstat查看,所以我用里一个简单的shell命令组合来获取apache的总连接数和当前建立连接的连接数. 需要注意以下几点 1) 使用命令传递值给mrtg时,mrtg只能接受4个参数,真正用于画图的只有2个 2) 4个参数必须依次为 值1,值2,运行时间,主机名 3) 4个参数后不得有 等换行符 由于mrtg.cfg的改变,所以必须依次使用以下命令 /usr/local/mrtg/bin/indexmaker --output=/var/www/mrtg/index.html /etc/mrtg.cfg 使用mrtg的indexmaker重生成index.html文件,否则你无法看到新加入的apache连接的监控. /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg 使用mrtg命令传入数值,同样会报3次错,忽略即可 再打开浏览器,输入地址,应该可以看到首页除了网卡的流量外再下方会加入apache连接的图 确认无误后,可再/etc/mrtg.cfg里加入 RunAsDaemon: Yes 在使用一次 /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg mrtg就会使用daemon方式运行 你以后要做的只是每次使用浏览器看看图就可以了,是不是很轻松 最后附上我目前能做到监控的一些信息,由于屏幕有限所以没法截完整,目前已做到可以监控如下信息 网卡,tcp连接数,系统进程数,内存使用,swap使用,cpu负载,pop连接数,smtp连接数,diskio等 如果大家需要我可以贴出所有脚本 本文来自:http://www.linuxpk.com/5112.html -->linux电子图书免费下载和技术讨论基地 ·上一篇: 在fedora中使用MRTG进行系统监控(2004-02-13更新) ·下一篇: snmp+mrtg实现对局域网内的linuxServer的监控
| ||
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 网址大全 | 友情链接 | 免费注册 | ||
| ||
Copyright © 2004 - 2007 All Rights Reserved 来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14102/viewspace-117167/,如需转载,请注明出处,否则将追究法律责任。
请登录后发表评论
登录
全部评论
<%=items[i].createtime%>
<%=items[i].content%> <%if(items[i].items.items.length) { %>
<%for(var j=0;j
<%}%> <%}%>
<%=items[i].items.items[j].createtime%>
<%=items[i].items.items[j].username%> 回复 <%=items[i].items.items[j].tousername%>: <%=items[i].items.items[j].content%>
还有<%=items[i].items.total-5%>条评论
) data-count=1 data-flag=true>点击查看
<%}%>
|
转载于:http://blog.itpub.net/14102/viewspace-117167/