mrtg编译安装
- 格式:doc
- 大小:60.50 KB
- 文档页数:7
SmokePing安装⼿册SmokePing安装部署SmokePing简介Smokeping是⼀款⽤于⽹络性能监测的开源监控软件,主要⽤于对IDC的⽹络状况,⽹络质量,稳定性等做检测,通过rrdtool制图⽅式,图形化地展⽰⽹络的时延情况,进⽽能够清楚的判断出⽹络的即时通信情况。
SmokePing的特点SmokePing keeps track of your network latency:Best of breed latency visualisation.(最佳图形展⽰功能,延时丢包等可以很直观的可视化展现)Interactive graph explorer.(交互式浏览器图表)Wide range of latency measurement plugins.(丰富的⽹络状况测量插件)Master/Slave System for distributed measurement.(⽀持主从的分布式部署模式)Highly configurable alerting system.(⾃定义报警功能)Live Latency Charts with the most 'interesting' graphs.(漂亮、免费、开源)Free and OpenSource Software written in Perl written by Tobi Oetiker, the creator of MRTG and RRDtoolSmokePing安装[root@linux-node1 ~]# cat /etc/redhat-release #查看系统环境CentOS Linux release 7.2.1511 (Core)[root@linux-node1 ~]# uname -r3.10.0-327.18.2.el7.x86_64[root@linux-node1 ~]# yum install -y perl perl-Net-Telnet perl-Net-DNS perl-LDAPperl-libwww-perl perl-IO-Socket-SSL perl-Socket6 perl-Time-HiRes perl-CGI-SpeedyCGI perl-FCGI perl-ExtUtils-MakeMakerrrdtool rrdtool-perl curl fping echoping httpd httpd-devel gcc make wget libxml2-devellibpng-devel glib pango pango-devel freetype freetype-devel fontconfig cairo cairo-devellibart_lgpl libart_lgpl-devel freetype freetype-devel #安装所需包[root@linux-node1 ~]# cd /usr/local/src[root@linux-node1 src]# wget http://oss.oetiker.ch/smokeping/pub/smokeping-2.6.11.tar.gz #下载smokeping[root@linux-node1 src]# tar xf smokeping-2.6.11.tar.gz #解压[root@linux-node1 src]# cd smokeping-2.6.11[root@linux-node1 smokeping-2.6.11]# ./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty #远程下东东,需要点时间,需要build都ok,不然编译会报错[root@linux-node1 smokeping-2.6.11]# ./configure --prefix=/usr/local/smokeping #编译Ready to install Smokeping ******************************Settings:PERL5LIB = not setPERL = /usr/bin/perlThe Smokeping Makefiles use GNU make functionality.Continue installation with/usr/bin/gmake install#出现这个提⽰就可以⽤gmake安装了[root@linux-node1 smokeping-2.6.11]# /usr/bin/gmake install #安装#出现错误 Can't locate Sys/Syslog.pm in @INC (@INC contains: /usr/local/smokeing/thirdparty/lib/perl5/x86_64-linux-thread-multi /usr/local/smokeing/thirdparty/lib/perl5 ../lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl / [root@linux-node1 smokeping-2.6.11]# yum -y install perl-Sys-Syslog #缺包了,安装这个就OK[root@linux-node1 smokeping-2.6.11]# cd /usr/local/smokeping/ #进⼊smokeping安装⽬录[root@linux-node1 smokeping-2.6.11]# mkdir cache data var #创建所需⽂件夹[root@linux-node1 smokeping-2.6.11]# touch /var/log/smokeping.log #创建⽇志⽂件[root@linux-node1 smokeping-2.6.11]# chown apache.apache cache data var /var/log/smokeping.log #修改⽂件属主[root@linux-node1 smokeping]# cd htdocs[root@linux-node1 htdocs]# mv smokeping.fcgi.dist smokeping.fcgi #修改⽂件名[root@linux-node1 htdocs]# mv /usr/local/smokeping/etc/config.dist /usr/local/smokeping/etc/config #添加配置⽂件[root@linux-node1 htdocs]# chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist #密码配置⽂件只让root能访问修改smokeping配置⽂件[root@linux-node1 ~]# sed -i 's#cgiurl = http://some.url/smokeping.cgi#cgiurl = http://192.168.182.152/smokeping.cgi#g' /usr/local/smokeping/etc/config[root@linux-node1 ~]# sed -i 's#300#60#g' /usr/local/smokeping/etc/config #改为60,⼀分钟采集⼀次数据[root@linux-node1 ~]# sed -i 's#20#60#g' /usr/local/smokeping/etc/config #改为⼀分钟ping60次[root@linux-node2 ~]# vim /usr/local/smokeping/etc/config #添加utf-8中⽂字符集⽀持*** Presentation ***charset = utf-8[root@linux-node1 ~]# egrep "cgiurl|\<60\>|utf-8" /usr/local/smokeping/etc/config #查看修改的配置cgiurl = http://192.168.56.11/smokeping.cgistep = 60 #⼀分钟采集⼀次数据pings = 60charset = utf-8修改apache配置⽂件[root@linux-node1 htdocs]# htpasswd -c /usr/local/smokeping/htdocs/htpasswd luchuangaoNew password:Re-type new password:Adding password for user luchuangao #设置登陆密码[root@linux-node1 htdocs]# vim /etc/httpd/conf/httpd.conf# DocumentRoot "/var/www/html" #在这⾏下⾯添加Alias /cache "/usr/local/smokeping/cache/"Alias /cropper "/usr/local/smokeping/htdocs/cropper/"Alias /smokeping "/usr/local/smokeping/htdocs/smokeping.fcgi"<Directory "/usr/local/smokeping">AllowOverride NoneOptions AllAddHandler cgi-script .fcgi .cgiOrder allow,denyAllow from allAuthName "Smokeping" #登陆密码认证配置AuthType BasicAuthUserFile /usr/local/smokeping/htdocs/htpasswdRequire valid-userDirectoryIndex smokeping.fcgi</Directory>创建Smokeping启动脚本[root@linux-node1 etc]# cat /etc/init.d/smokeping#!/bin/bash## chkconfig: 2345 80 05# Description: Smokeping init.d script# Hacked by : How2CentOS - # Get function from functions library. /etc/init.d/functions# Start the service Smokepingstart() {echo -n "Starting Smokeping: "/usr/local/smokeping/bin/smokeping >/dev/null 2>&1### Create the lock file ###touch /var/lock/subsys/smokepingsuccess $"Smokeping startup"echo}# Restart the service Smokepingstop() {echo -n "Stopping Smokeping: "kill -9 `ps ax | grep "/usr/local/smokeping/bin/smokeping" | grep -v grep | awk '{ print $1 }'` >/dev/null 2>&1### Now, delete the lock file ###rm -f /var/lock/subsys/smokepingsuccess $"Smokeping shutdown"echo}### main logic ###case "$1" instart)start;;stop)stop;;status)status smokeping;;restart|reload|condrestart)stopstart;;*)echo $"Usage: $0 {start|stop|restart|reload|status}"exit 1esacexit 0[root@linux-node1 etc]# chmod 755 /etc/init.d/smokeping启动服务访问smokeping[root@linux-node1 ~]# systemctl start httpd.service #启动apache[root@linux-node1 ~]# /etc/init.d/smokeping start #启动smokeping中⽂⽀持及添加监控节点如果需要展⽰界⾯⽀持中⽂,需要安装中⽂编码:[root@linux-node1 etc]# yum -y install wqy-zenhei-fonts.noarch[root@linux-node1 etc]# vi /usr/local/smokeping/lib/Smokeping/Graphs.pmfor my $host (@hosts){my ($graphret,$xs,$ys) = RRDs::graph("dummy",'--start', $tasks[0][1],'--end', $tasks[0][2],'--font TITLE:20:"WenQuanYi Zen Hei Mono"', #添加这⾏即可vim /usr/local/smokeping/etc/config#添加监测源的IP库,加⼊到config中,修改后重启smokeping才会⽣效#添加监控节点⽰例:注意+是第⼀层,++是第⼆层,+++ 是第三层+ Unicommenu = 各地⽹络连通性监控title = 监控统计++ Telecommenu = 电信⽹络监控title = 电信⽹络监控列表host = /Unicom/Telecom/telecom-beijing /Unicom/Telecom/telecom-shanghai /Unicom/Telecom/telecom-shenyang /Unicom/Telecom/telecom-sichuan /Unicom/Telecom/telecom-changsha /Unicom/Telecom/telecom-jiangsu /Unicom/Telecom/tele +++ telecom-beijingmenu = 北京电信title = 北京电信alerts = somelosshost = 220.181.22.1+++ telecom-beijingxinlangmenu = 北京新浪电信title = 北京新浪电信alerts = somelosshost = 218.30.114.37+++ telecom-beijingDNSmenu = 北京电信DNStitle = 北京电信DNSalerts = somelosshost = 219.141.136.10+++ telecom-shanghaixinlangmenu = 上海新浪电信title = 上海新浪电信alerts = somelosshost = 222.73.28.96+++ telecom-shanghaiDNSmenu = 上海电信DNStitle = 上海电信DNSalerts = somelosshost = 202.96.199.133+++ telecom-shanghaimenu = 上海电信title = 上海电信alerts = somelosshost = 61.129.65.58+++ telecom-shenyangmenu = 沈阳电信title = 沈阳电信alerts = somelosshost = 219.148.204.66+++ telecom-sichuanmenu = 四川电信title = 四川电信+++ telecom-changshamenu = 长沙电信title = 长沙电信alerts = somelosshost = 124.232.150.171+++ telecom-jiangsumenu = 江苏电信title = 江苏电信alerts = somelosshost = 58.215.186.208+++ telecom-chongqingmenu = 重庆电信title = 重庆电信alerts = somelosshost = 219.153.71.238+++ telecom-fujianmenu = 福建电信title = 福建电信alerts = somelosshost = 218.6.9.4+++ telecom-guizhoumenu = 贵州电信title = 贵州电信alerts = somelosshost = 222.87.128.7+++ telecom-hubeimenu = ⼗堰电信title = ⼗堰电信alerts = somelosshost = 61.183.41.197+++ telecom-chengdumenu = 成都电信title = 成都电信alerts = somelosshost = 61.139.2.69+++ telecom-xinjiangmenu = 新疆电信title = 新疆电信alerts = somelosshost = 61.128.114.133+++ telecom-wuhanmenu = 武汉电信title = 武汉电信alerts = somelosshost = 221.232.129.35+++ telecom-hangzhoumenu = 杭州电信title = 杭州电信alerts = somelosshost = 202.96.96.68+++ telecom-xiamenmenu = 厦门电信title = 厦门电信alerts = somelosshost = 202.101.103.54+++ telecom-guangzhoumenu = ⼴州电信title = ⼴州电信alerts = somelosshost = 211.136.192.6+++ telecom-shenzhenmenu = 深圳电信title = 深圳电信alerts = somelosshost = 202.96.154.15+++ telecom-nanningmenu = 南宁电信title = 南宁电信alerts = somelosshost = 202.103.224.68++ Mobilemenu = 移动⽹络监控title = 移动⽹络监控列表host = /Unicom/Mobile/mobile-beijing /Unicom/Mobile/mobile-shenyang /Unicom/Mobile/mobile-jinan /Unicom/Mobile/mobile-qingdao /Unicom/Mobile/mobile-chengdu /Unicom/Mobile/mobile-xizang /Unicom/Mobile/mobile-xiamen /Unicom/Mobile/m +++ mobile-beijingmenu = 北京移动title = 北京移动alerts = somelosshost = 211.136.17.107+++ mobile-shenyangmenu = 沈阳移动title = 沈阳移动alerts = somelosshost = 211.137.32.178+++ mobile-jinanmenu = 济南移动title = 济南移动alerts = somelosshost = 211.137.191.26+++ mobile-qingdaomenu = 青岛移动title = 青岛移动alerts = somelosshost = 202.102.128.68+++ mobile-chengdumenu = 成都移动title = 成都移动alerts = somelosshost = 202.98.96.68title = 西藏移动alerts = somelosshost = 211.139.73.34+++ mobile-xiamenmenu = 厦门移动title = 厦门移动alerts = somelosshost = 218.207.194.109+++ mobile-changshamenu = 长沙移动title = 长沙移动alerts = somelosshost = 211.142.236.87+++ mobile-nanjingmenu = 南京移动title = 南京移动alerts = somelosshost = 221.131.143.68+++ mobile-guangzhoumenu = ⼴州移动title = ⼴州移动alerts = somelosshost = 211.136.192.6+++ mobile-shenzhenmenu = 深圳移动title = 深圳移动alerts = somelosshost = 120.196.165.7++ Unicommenu = 联通⽹络监控title = 联通⽹络监控列表host = /Unicom/Unicom/unicom-beijing /Unicom/Unicom/unicom-dalian /Unicom/Unicom/unicom-henan /Unicom/Unicom/unicom-heilongjiang /Unicom/Unicom/unicom-tianjin /Unicom/Unicom/unicom-shanghai /Unicom/Unicom/unicom-shenyang / +++ unicom-beijingmenu = 北京联通title = 北京联通alerts = somelosshost = 123.125.46.202+++ unicom-dalianmenu = ⼤连联通title = ⼤连联通alerts = somelosshost = 218.61.8.10+++ unicom-henanmenu = 河南联通title = 河南联通alerts = somelosshost = 125.46.54.236+++ unicom-heilongjiangmenu = ⿊龙江联通title = ⿊龙江联通alerts = somelosshost = 125.211.202.138+++ unicom-tianjinmenu = 天津联通title = 天津联通alerts = somelosshost = 60.28.24.236+++ unicom-shanghaimenu = 上海联通title = 上海联通alerts = somelosshost = 211.95.72.254+++ unicom-shenyangmenu = 沈阳联通title = 沈阳联通alerts = somelosshost = 113.224.187.254+++ unicom-xianmenu = 西安联通title = 西安联通alerts = somelosshost = 124.89.76.214+++ unicom-jinanmenu = 济南联通title = 济南联通alerts = somelosshost = 202.102.152.3+++ unicom-qingdaomenu = 青岛联通title = 青岛联通alerts = somelosshost = 202.102.128.68+++ unicom-xinjiangmenu = 新疆联通title = 新疆联通alerts = somelosshost = 221.7.1.20+++ unicom-xizangmenu = 西藏联通title = 西藏联通alerts = somelosshost = 221.13.65.38+++ unicom-wuhanmenu = 武汉联通title = 武汉联通alerts = somelosshost = 218.104.111.122+++ unicom-zhengzhoumenu = 郑州联通title = 郑州联通alerts = someloss+++ unicom-changsha menu = 长沙联通title = 长沙联通alerts = someloss host = 58.20.127.238 +++ unicom-nanjing menu = 南京联通title = 南京联通alerts = someloss host = 221.6.4.66+++ unicom-xiamen menu = 厦门联通title = 厦门联通alerts = someloss host = 36.248.249.1+++ unicom-taiyuan menu = 太原联通title = 太原联通alerts = someloss host = 221.204.238.54 +++ unicom-guangzhou menu = ⼴州联通title = ⼴州联通alerts = someloss host = 210.21.4.130+++ unicom-shenzhen menu = 深圳联通title = 深圳联通alerts = someloss host = 210.21.196.6+++ unicom-nanning menu = 南宁联通title = 南宁联通alerts = someloss host = 221.7.128.68。
MRTG安装与使用Mrtg(Multi Router Traffic Grapher,MRTG)是一个监控网络链路流量负载的工具软件,它通过snmp协议从设备得到设备的流量信息,并将流量负载以包含PNG格式的图形的HTML 文档方式显示给用户,以非常直观的形式显示流量负载、CPU、MEM、SWAP、进程情况.安装前的准备:•安裝前的準備工作:MRTG 為使用 Perl 程式寫成的,並且使用到 zlib 、 gd 及 png 的函式庫(zlib 用來壓縮圖表、gd 用來繪製圖表),且由於 MRTG 乃使用 SNMP 協定,並且最後是以 HTTP 的網頁型態輸出成圖表,因此,你需要確定Linux 主機中已經含有下列的套件:o perl (perl-5.0xx 以上)o zlib (zlib-1.1.3-xx 以上)o gd (gd-1.3.xx 以上)o libpngo apache確定的方法就以 RPM 來確認吧:o rpm -qa | grep perlo rpm -qa | grep zlibo rpm -qa | grep gdo rpm -qa | grep libpng一、安装.1.RPM格式安装:安装目录为/usr/local/mrtg-2Rpm –ivh mrtg -2.9.29-4.ent.i386.rpm2.编译格式安装:可以在/indexintel10.html下载mrtg-2.16.2.tar.gz编译文件安装MRTG:#Tar –zxvf mrtg-2.16.2.tar.gz#cd mrtg-2.16.2#./configure –profix=/usr/local/mrtg-2#make & make install二、配置SNMP1.编辑/etc/snmp/snmpd.conf找到如下代码:[code]# Third, create a view for us to let the group have rights to:# Make at least snmpwalk -v 1 localhost -c public system fast again.# name incl/excl subtree mask(optional)view systemview included .1.3.6.1.2.1.1view systemview included .1.3.6.1.2.1.25.1.1[/code]在后面加上:[code]# haijd Add startview all included .1.3.6# haijd Add end[/code](使SNMP的MIB库支持搜索OID为.1.3.6下的所有OID)把下面的#号去掉#view mib2 included .dod.internet.mgmt.mib-2 fc把下面的语句access notConfigGroup "" any noauth exact systemview none none改为:access notConfigGroup "" any noauth exact mib2 none none(使SNMP支持MIB2库搜索。
MRTG配置手册安装在windows2003系统上安装MR TG,通过SNMP协议监测各服务器和网络设备的性能。
所需要的安装程序:mrt g-2.16.2A ctivePerl-5.14.2.1402-MSWin32-x86-295342.msiinfor mant-std-16.exeMIBBrowser.ex e一、安装mrtg将mrtg COP Y到服务器C盘目录下“c:\mrtg”。
二、安装perlPerl安装到C盘“c:\perl”目录下,添加系统变量P ath,添加“C:\per\bin;”三、测试perl打开命令控制台,进入到c:\mrtg\bi n 目录,输入命令p erlmrtg,得到以下结果表明安装成功。
四、安装II S服务此处略。
配置一、监测设备的先决条件Windows服务器Mrtg采用s nmp协议进行数据采集。
1、如果被监测是被是windows服务器,首先要在被监测服务器上安装SNM P服务,控制面板—添加或删除程序—添加/删除Windows组件安装完毕以后,在服务里设置com munity,右键S NMP服务—属性—安全—public。
2、由于要监测CPU、内存等参数,还需要在被监测服务器安装i nformant-s td-16.exe以提供更加强大的MIB码。
Linux服务器Linux服务器默认未开启SNMP服务,需要在安装net-snmphttp://michael s.blogbus.com/tag/NE T-SNMP/设置community为public。
网络设备开启snmp服务,设置commun ity为public。
二、检查SNMP服务配置在任何机器上安装MIB浏览器M IB Browser.exe,输入要监测的服务器IP,配置好community,点击Walk,如果右侧能出现很多OID,证明snmp服务正常提供服务。
MRTG配置参数详解翻译自http://oss.oetiker.ch/mrtg/doc/mrtg-reference.en.html引言mrtg运行时的行为可以通过配置文件来控制,虽然大部分配置文件都是通过cfgmaker 来生成的,但是手动调整一些更为精细的配置项是很有必要的,这篇文档对所有的mrtg能识别的配置选项作了说明语法MRTG配置文件遵循以下几个简单规则关键字必须起始于行首以空格开始的行将被附加到上一行关键开头的行来解析不解析空行# 号开头的行被当成注释可通过Include命令包含文件,例如:Include: base-options.inc 。
如果指定相对路径引入文件,mrtg将会在当前工作目录和包含主配置文件的目录下寻找该引入文件全局关键字WorkDirWorkDir 日志文件和生成的的网页的放置目录可选的全局关键字HtmlDirHtmlDir 指定html文件(或shtml)的放置目录。
注意: WorkDir会覆盖HtmlDir、ImageDir、LogDir的值ImageDirImageDir 指定图像文件的放置目录,应该放置在HtmlDir下LogDirLogDir 指定日志文件放置目录,不应该位于HtmlDir下ForksForks 4 (Unix平台下可用),通过snmp请求数据的线程个数,在网络延迟比较大或者设备比较多的情况下可以加速snmp信息的获取EnableIPv6EnableIPv6 yes / no 是否开启ipv6支持EnableSnmpV3EnableSnmpV3 yes / no 默认是禁止的,指示是否开启snmpv3支持RefreshRefresh 300 网页刷新时间间隔,默认是5分钟(单位为秒)IntervalInterval 10 mrtg获取信息频率,默认为5分钟(单位为分钟),指示mrtg每隔多少分钟生成一次包含正确信息的html文件,并且在html文件的Meta header中加入缓存时间指示(Cache-Control)MaxAgeMrtg 高度依赖当前系统时间,如果当前时间是一个错误的值,并且比当前时间提前了许多的话,将会导致mrtg丢失旧日志文件中的许多信息,为了避免这种情况,可以加入一个"合理的"时间值,用来检查日志文件的最近修改时间,如果一个日志文件比当前时间加上这个时间值还旧,mrtg将不会往这个文件写入信息,相反的,只是提示你,给你一个机会了发现问题所在,如MaxAge 7200 将告诉mrtg不要更新2小时前至今未修改的日志文件WriteExpires这个选项将会为CERN和apache服务器生成相应的.meta文件,这个与WEB服务器软件有关NoMib2正常情况下MRTG查询snmp设备的’sysUptime’和’sysName’属性,但是有的设置没有实现这两个属性,这将会导致mrtg发出警告信息指示属性丢失,这时可以将NoMib2置为yesSingleRequestSingleRequest yes/no 有的snmp实现不支持一次请求多个snmp变更值,可以设置这个值强制mrtg一次请求一个属性值SnmpOptions除了可以为每个目标指定单独的超时选项处,也可以在全局选项上配置snmpget进程的行为,SnmpOptions支持Hash选项,当前支持以下选项:timeout => $default_timeout,retries => $default_retries,backoff => $default_backoff,default_max_repetitions => $max_repetitions,use_16bit_request_ids => 1,lenient_source_port_matching => 0,lenient_source_address_matching => 1注意,这些选项会覆盖每个单独的target中的的timeout值IconDir图标目录LoadMIBs载入指定的MIB文件,可载入多个以’,'号分隔Language指定输出语言,(检查translate目录看支持哪些语言)当前支持big5 brazilian bulgarian catalan chinese croatian czech danish dutch eucjp french galician gb gb2312 german greek hungarian icelandic indonesia iso2022jp italian korean lithuanian malay norwegian polish portuguese romanian russian russian1251 serbian slovak slovenian spanish swedish turkish ukrainianLogFormatLogFormat rrdtools,将激活rrdtools模式,这种模式下mrtg使用rrdtools来记录日志LibAdd如果你激活了rrdtools模式并且rrdtool Perl模块没有安装在perl能自行找到的位置,可以用来LibAdd来指定合适的路径PathAdd如果rrdtool的可执行文件不在当前的PA TH中,可能通过PathAdd来指定RunAsDeamonyes/no 将mrtg作为守护进程来运行,大多数情况下mrtg是结合cron来定时运行的,在没有设置重复运行时[比如在windows下],start /b perl mrtg.cfg,当然这里要对应好目录ConversionCode指定转换代码,有的snmp设备提供的是非数值值,这对mrtg绘制图形来说是没有用的,所以要用一些代码来转换,这个关键字指定一个包含了转换代码的perl文件,这个文件中必须包含一个或多个函数,每个函数必须能够接收处理一个字符串参数并返回一个数值针对每个Target的配置项每个监控对象需要有一个唯一的名称来标识,这个名称会被添加在属用这个监控对象的属性前,这名称也会在日志文件、图像文件和生成的网页文件中用到Target[myrouter]:port:community@hostname[:[snmpport][:[timeout][:[retries][:[backoff][:[version]][|name]]]]] port 为myrouter的接口,community为团体名,hostname为主机名或ip,snmpport 为服务端的snmp端口,不填则默认为161,timeout默认为2s,首次查询超时值,retries为查询失败时重试次数,backoff,退进指数,首次查询失败时,重试时间由timeout值除以这个指数来决定,默认为1,即每次重试的超时值一样,version,snmp版本。
在Centos(RHEL)上安装和配置MRTG为了我网站的fans(当然是少了点,日ip才500).总的常常更新点内容,为了个小个人blog也不容易。
得强行让自己多学点无论新旧的东西来更新一下。
不然大家都不理我了。
呵呵,喜欢我的网站可以定个SSR之类,多常常关注。
骂人也好。
讲讲话也好。
MRTG是个很过时的东西。
现在大多都用RRD,但配置有点麻烦,当然,用Cacti之类还是相当方便。
但我在这使用MRTG原因有三.1.我只有一台机器要用,比如我的个人网站。
为了一个小服务器搞个cacti不值.象这样MRTG还是很方便的.2.就算大面积使用Cacti加RRD还是有必要在本机运行一个可以直接查看的网页比较方便。
方便运维排错。
3.可以在一个节点的一台机器上装一个MRTG,然后加上那个节点后面所有的机器,这样可以显示每个节点的流量,方便节点排错.MRTG的全称叫Multi Router Traffic Grapher 可以监控很多东西,今天我们就用它来监控我小小的个人网站的流量.节点之类多设备的设置后面也可以参考一下.第一步: 安装MRTG 和snmpyum install mrtg net-snmp net-snmp-utils第二步:配置snmpd我不建议使用自己来配置这个配置文件。
直接使用snmpconf 这个软件就可以很好的vi /etc/snmpd/snmpd.conf修改成下面这样主要是com2sec那行的可以snmp来打开的地址和密码根据你的需要来设置一下。
还有就是access部分后面的权限,可以设置成all之类。
com2sec notConfigUser localhost publicgroup notConfigGroup v1 notConfigUsergroup notConfigGroup v2c notConfigUserview systemview included .1.3.6.1.2.1.1view systemview included .1.3.6.1.2.1.25.1.1access notConfigGroup "" any noauth exact all all noneview all included .1 80syslocation Unknown (edit /etc/snmp/snmpd.conf)syscontact Root记的重起service snmpd restart我们来确认一下我们的配置,用下面的命令,看看能不能得到你接口的ip信息snmpwalk -v 1-c public localhost IP-MIB::ipAdEntIfIndex我的输出如下:IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1IP-MIB::ipAdEntIfIndex.221.9.252.35 = INTEGER: 2第三步:配置MRTG我们使用cfgmaker的命令来建立/etc/mrtg.cfg 文件,输入如下命令:cfgmaker --global 'WorkDir: /var/www/mrtg'--output /etc/mrtg.cfgpublic@localhost* –global ‘WorkDir: /var/www/mrtg’ : 设置全局的工作目录配置,也就是存MRTG的图象的地址* –global "Options[_]: growright,bits" :设置网络显示* –output /etc/mrtg.cfg: 你输出的配置文件的地址* public@localhost : public是你的snmp设备读的密码,localhost是设备的密码.如果你要显示远程的snmp的设备,就是远程的地址的密码,现在我这是本地的.设置完后,运行indexmaker来建立网页显示接口的信息。
Squid透明代理手记1,首先从下载squid-2.6.STABLE10-20070315.tar.gz最新版2,解压配置编译参数:./configure --prefix=/usr/local/squid #指定squid安装目录--mandir=/usr/share/man #指定man的安装目录--enable-async-io=20 #采用同步io提高性能,负载高可设大点--disable-icmp #禁止icmp协议代理(默认不允许)--enable-delay-pools #允许延迟限止带宽--enable-cache-digests #允许缓存摘要,可以加快请求缓冲内容的速度(集群用)--enable-snmp #允许snmp协议支持(如用mrtg进行流量监控等)--disable-ident-lookups #禁止使用RFC931识别--enable-epoll #支持epoll的IO模式,2.6以上内核才具有--enable-basic-auth-helpers="NCSA" #允许带密码验证,NCSA 风格的用户名和密码档--enable-linux-netfilter #允许透明代理--enable-arp-acl #允许基于MAC地址的存取过滤--enable-err-language="Simplify_Chinese" #支持的错误语言--enable-default-err-language="Simplify_Chinese" #指定默认的错误语言3,编译安装:make && make install4,添加squid启动用户和组:groupadd squiduseradd -g squid squid -s /sbin/nologin #根据cache_effective_user指定缓冲管理的用户mkdir var/cache #根据cache_dir指定chown -R squid:squid /usr/local/squid #更改目录所有者和组为squid连同子目录5,配置squid.conf首先生成干净的配置文件:mv squid.conf squid.conf.bakcat squid.conf.bak | grep -v "#" | grep -v "^$" > squid.conf#定义服务器地址和端口(做Proxy时最好用lan的ip来设定绑定端口,transparent表示支持透明代理)http_port 192.168.1.253:3128 transparent#定义服务器的名字visible_hostname ProxyServer#定义管理员邮件地址(在访问发生错误时,visible_hostname和cache_mgr这两个选项的值显示在错误提示页面内的相关位置)cache_mgr webmaster@#定义缓存内存空间cache_mem 32MBcache_swap_low 90cache_swap_high 95#定义缓冲最大值的内容maximum_object_size 4096 KB#定义缓存目录cache_dir ufs /usr/local/squid/var/cache 200 16 256#定义不缓冲的内容hierarchy_stoplist cgi-bin ?hierarchy_stoplist -i ^https:\\ ?acl QUERY urlpath_regex -i cgi-bin \? \.asp \.php \.jsp \.cgiacl denyssl urlpath_regex -i ^https:\\no_cache deny QUERYno_cache deny denysslipcache_size 1024ipcache_low 90ipcache_high 95fqdncache_size 1024#日志access_log /usr/local/squid/var/logs/access.log squidcache_log /usr/local/squid/var/logs/cache.log#cache_store_log /usr/local/squid/var/logs/store.logcache_store_log none#Dns服务器dns_nameservers 202.96.128.86 61.144.56.101#缓冲存取用户和组cache_effective_user squid squid#定义ACL#sexurl.txt列出要过滤网站地址的关键字,每个关键字占一行,如(取sina)即可#maclist.txt列出允许上网的主机的MAC地址,每个地址占一行,如00:50:56:C0:00:08acl all src 0.0.0.0/0.0.0.0 #定义所有的地址acl allow_lan src 192.168.1.0/24 #允许局域网lan访问的acl acl sexurl url_regex "/usr/local/squid/sexurl.txt" #定义色情网站过滤acl virurl url_regex "/usr/local/squid/virurl.txt" #定义病毒网站过滤#acl allowedmac arp "/etc/squid/maclist.txt"#定义访问策略http_access deny sexurl #拒绝色情网站http_access deny virurl #拒绝病毒网站http_access allow allow_lan #允许局域网ip访问http_access deny all #拒绝其它未定义的规则#http_access allow allowedmac#定义可缓冲的文件名:5,运行SQUID:sbin/squid -z #初始化生成缓冲目录sbin/squid -NCd1 #前台运行(显示很多运行日志)squid #直接运行bin/RunCache & #不间断运行启动步骤:squid -zsquid -NsYD /usr/local/squid/conf/squid.conf > squid.out 2>&1监控缓冲日志:tail -f /usr/local/squid/var/logs/access.log------------------------------------------------------------------------------------------6,操作系统优化:(1)加大系统的文件描述符限制:ulimit -n默认为1024增大为65536:ulimit -n 65536查看所有的系统限制:ulimit -a(2)加速回收TIME_WAIT的sockets:sysctl -a|grep net.ipv4.tcp_twsysctl -w net.ipv4.tcp_tw_reuse=1sysctl -w net.ipv4.tcp_tw_recycle =1(3)加大临时端口的范围(默认是1024-4999):echo "1024 40000" > /proc/sys/net/ipv4/ip_local_port_range(4)如果还做NAT的话,增加NAT表的限制:echo "65535" > /proc/sys/net/ipv4/ip_conntrack_max----------------------------------------------------------------------------------7,squidclient使用简介:查看帮助:./squidclient -h 192.168.1.123 -p 3128 mgr:/usr/local/squid/squidclientsquidclient -h 192.168.1.123 -p 3128 mgr:client_list //查看客户端列表squidclient -h 192.168.1.123 -p 3128 mgr:objects //取得已缓存的列表squidclient -h 192.168.1.123 -p 3128 mgr:info //取得运行状态经验技巧:打开一个网址,访问一下,看看有没有Cache到squidclient -h 192.168.1.123 -p 3128 mgr:objects | grep GET | grep 统计cache到的总数哈:squidclient -h 192.168.1.123 -p 3128 mgr:objects | grep GET | wc -l---------------------------------------------------------透明代理:iptables -t nat -A PREROUTING -i eth0 -p tcp -s 192.168.1.0/24 --dport 80 -j REDIRECT --to-ports 3128-----------------------------------------------------------------------------------错误FAQ:FATAL: ipcache_init: DNS name lookup tests failed.有3种方法解决这个问题1。
实训六、利用MRTG进行网络流量监控一.实训目的1.掌握一种网络流量监控方法。
2.理解SNMP协议及其配置。
3.掌握将应用程序添加为系统服务的方法。
二.背景知识网络流量对于网络管理人员来说是一个比较重要的指标,观察流量可以得知网络的一些最新症状。
但是用人工的方法进行流量监控效率太低了,可以使用一款名为MRTG的软件来监控网络流量。
MRTG简介Mrtg (Multi Router Traffic Grapher,MRTG) 是一个监控网络链路流量负载的工具软件,它可以从所有运行SNMP协议的设备(包括服务器、路由器、交换机等)抓取到设备的流量等信息,并将流量负载等信息以包含PNG格式的图形的HTML 文档方式显示给用户,以非常直观的形式显示流量负载。
MRTG是个多平台软件,可以运行在Linux、Windows NT/2000/XP、FreeBSD等操作系统上。
MRTG 在Linux平台上,已经利用来做以下各式各样的统计(反观Windows 平台,因为Microsoft并未开放系统,信息整合困难,开发的人也不多):1.系统资源负荷量统计,例如:磁盘空间、CPU用量、内存用量等2. Server流量统计,例如:Mail、News、DNS、Web、BBS、IRC、MUD等3.网络设备流量统计,例如:防火墙、Router、Switch、拨接终端机、ATM交换机等4.另类统计,例如:Modem流量、Login人数、雷神之槌联机游戏人数等MRTG 的运行机制,它会以SNMP 通讯协议去询问Router,然后将传回来的数值画成统计图。
或者去执行一支外挂程序,该程序将要统计的数值传回来,然后MRTG 只负责将它画成统计图。
SNMP协议SNMP协议是目前最常用的网络管理协议,几乎所有的网络设备生产厂商都实现了对SNMP的支持。
SNMP的发展主要经历了3个版本:SNMPv1、SNMPv2、SNMPv3。
虽然最新的版本是SNMPv3,但到目前为止,这一新版本还远未普及,绝大多数网络设备仍仅支持SNMPv2版本。
一、apache服务的安装1.安装Apache有两种时候可以安装Apache服务器:安装Linux操作系统的时候安装Web服务器rpm 包,和安装完系统后安装Apache服务器。
(源码安装)提示:可以用命令#rpm-qa|grep httpd检查一个系统是否安装了Apache服务器,如果没有输出,则表明没有安装。
以下为某个安装了Apache服务器输出的一个范例。
如果是以源码安装的Apache服务器,则此种方法无效,需要用find工具查找httpd文件是否存在。
httpd-tools-2.2.15-9.el6.x86_64httpd-manual-2.2.15-9.el6.noarchhttpd-2.2.15-9.el6.x86_64如果在安装Linux操作系统期间没有安装Apache,这就需要使用包文件来安装。
1.RPM包的安装。
从Linux的安装光盘和互联网上,都可以得到Apache的RPM安装包,然后把安装包复制到硬盘,并切换到安装包文件所在的目录。
本文以把手册也安装上去。
2.源码安装。
到网站www.apache. org下载欲安装的版本,笔者喜欢尝试最新的版本,当前的最新有效版本为httpd-2.2.0.tar.gz。
在httpd-2.2.0.tar.gz文件所在的当前目录解压文件# tar zxvf httpd-2.2.0.tar.gz,然后切换目录到httpd-2.2.0,进行配置:或者wget /apache-mirror/httpd/httpd-2.0.63.tar.gz其中,配置这一过程,使用了选项“--prefix=/usr/local/apache”来指定Apache的安装目录,使Apache服务器所需的大部分文件都被复制在这个目录里。
实际上,配置是一个很灵活的选择,根据需要可以添加更多的选项,支持更多的功能。
2.配置文件Apache的配置文件是httpd.conf,一般在/etc/http/conf或/usr/local/apache/conf目录,以rpm包形式安装的Apache,配置文件的位置是/etc/httpd/conf/httpd.conf。
一、apache服务的安装1.安装Apache有两种时候可以安装Apache服务器:安装Linux操作系统的时候安装Web服务器rpm 包,和安装完系统后安装Apache服务器。
(源码安装)提示:可以用命令#rpm-qa|grep httpd检查一个系统是否安装了Apache服务器,如果没有输出,则表明没有安装。
以下为某个安装了Apache服务器输出的一个范例。
如果是以源码安装的Apache服务器,则此种方法无效,需要用find工具查找httpd文件是否存在。
httpd-tools-2.2.15-9.el6.x86_64httpd-manual-2.2.15-9.el6.noarchhttpd-2.2.15-9.el6.x86_64如果在安装Linux操作系统期间没有安装Apache,这就需要使用包文件来安装。
1.RPM包的安装。
从Linux的安装光盘和互联网上,都可以得到Apache的RPM安装包,然后把安装包复制到硬盘,并切换到安装包文件所在的目录。
本文以httpd-2.2.15把手册也安装上去。
2.源码安装。
到网站www.apache. org下载欲安装的版本,笔者喜欢尝试最新的版本,当前的最新有效版本为httpd-2.2.0.tar.gz。
在httpd-2.2.0.tar.gz文件所在的当前目录解压文件# tar zxvf httpd-2.2.0.tar.gz,然后切换目录到httpd-2.2.0,进行配置:或者wget /apache-mirror/httpd/httpd-2.0.63.tar.gz其中,配置这一过程,使用了选项“--prefix=/usr/local/apache”来指定Apache的安装目录,使Apache服务器所需的大部分文件都被复制在这个目录里。
实际上,配置是一个很灵活的选择,根据需要可以添加更多的选项,支持更多的功能。
2.配置文件Apache的配置文件是httpd.conf,一般在/etc/http/conf或/usr/local/apache/conf目录,以rpm包形式安装的Apache,配置文件的位置是/etc/httpd/conf/httpd.conf。
Seagate(希捷)硬盘专修工具本文档来源于MRT固件实验室更多信息请访问我们的网站/forum.php?gid=76目录1启动界面1.1连接到COM口 (2)1.2ATA方式 (2)2菜单结构及主要功能2.1诊断 (4)2.2工具 (7)2.3终端 (22)3工具栏启动界面1.1连接到COM口MRT希捷模块提供了对希捷F3系列硬盘的维护功能.当Seagate硬盘专修工具启动后,首先会要求用户连接到COM口(图1-1.1)。
图1.1-1(连接到COM口)如果用户连接了USB转串口适配器,用户可以在“计算机管理—设备管理器—端口(COM和LPT)”列表下看到已经安装了的USB转串口适配器。
也可以在“连接到COM串口”对话框的下拉列表中看到,如图1-1.1(Silicon Labs CP210x USB to UART Bridge (COM3))。
当用户选择好COM口后,点击“连接”按钮就可以进入终端模式,当用户下次再打开希捷专修工具时程序默认会自动连接到COM口。
关于终端模式的详细信息请参照2.3终端。
1.2 ATA方式如果用户没有连接USB转串口适配器,或用户在“连接到COM口”对话框中点击了“取消”按钮将进入ATA模式,在ATA模式下MRT通过SATA接口与硬盘通信。
程序会读取希捷硬盘的模块表和CP对象表,并列出硬盘的基本信息。
其中“物理扇区大小”表明了当前硬盘使用的技术,如果是512Bytes表示是普通硬盘,如果是4096 Bytes,表示该硬盘是最新的采用4KB技术的硬盘。
Seagate专修工具的主界面如图1.2-1.1.2-1(主界面)菜单及主要功能Seagate专修工具主要功能集中在“诊断”、“工具”、“终端”三个菜单。
2.1诊断“诊断”菜单结构如图2.1-1。
图2.1-1(诊断)1.基本状态“基本状态”子菜单用于获取当前硬盘的基本信息,信息以对话框的形式显示如图2.1-2。
图2.1-2(基本状态)2.重置S.M.A.R.T“重置S.M.A.R.T”子菜单用于重新初始化S.M.A.R.T列表,当用户点击“重置S.M.A.R.T”后将会弹出确认对话框,如图2.1-3。
下面是一篇很好的配置说明----------------------------------------Squid 是一种源代码开放的高性能代理缓存服务器。
它可支持FTP,gopher和Http数据对象的代理。
另外,Squid也支持SSL,多样化访问控制和代理请求的完整日志功能。
通过轻量级的网际缓存协议,Squid以网状或层次的方式分配内存,这样能节省额外的带宽。
提供Http 服务加速代理,Web服务器把Http数据推到Squid缓存中,外界的请求访问可以通过缓存提取所需数据,实现Web服务器的动态镜像。
另外,为了实现对Squid服务器的监控,采用MRTG。
MRTG是Multi Router Traffic Grapher 的缩写,它主要的用途是监测网络服务设备的流量,并生成包括图片的HTML文件,可以直观的显示网络服务的流量,以提供Squid缓存服务的监测。
通过Squid+MRTG可以配置一个完善的代理服务提供方案。
下面为具体配置步骤:一.基础准备Squid下载地址:[url][/url]版本:squid-2.4.STABLE4-src.tar.gzMRTG下载地址:[url]http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub/[/url]版本:mrtg-2.9.22.tar.gz机器配置为:256M内存,9G硬盘(其中4G分区专用缓存目录),PII433。
二.安装步骤解压Squid(一般做法,把软件包括在/opt目录下)#tar zxvf squid-2.4.STABLE4-src.tar.gz#cd squid//进行编译#./configure --prefix=/usr/local/squid --enable-delay-pools --enable-snmp --enable-cache-digests --enable-auth-modules=”NCSA”#make all#make install*对编译项目的解释:--prefix 为编译Squid所存放的目录,这里为/usr/local/squid--enable-delay-pools 此选项使能一个延时池,这样能对某些特定的请求限制额定带宽。
一、indexmaker的高级使用indexmaker是MRTG自带的网页制作工具,通过他可以把MRTG生成的CFG文件制作成HTML 格式的文件让我们可以使用浏览器直接查看流量信息。
不过使用perl indexmaker mrtg.cf g>c:\wwwroot\mrtg\index.htm指令生成的网页只能监控一台服务器,要想使用一个index. htm文件同时监视多台服务器怎么办呢?另外由MRTG生成的网页是以服务器名或端口号为标识的,非常不直观,我们能不能编辑修改他使用中文标识呢?下面就由我为大家介绍如何实现这些功能。
1、监控中心的制作理论上我们通过perl indexmaker mrtg.cfg>c:\wwwroot\mrtg\index.htm只能将一个CFG 文件的配置信息写入INDEX.HTM文件,当我们想把1.cfg,2.cfg,3.cfg这三个CFG文件的配置信息都写入一个index.htm文件,这样通过打开index.htm就可以同时监视这3个文件所对应的设备的流量了。
第一步:在监控机上进入命令行模式(“开始->运行->CMD”)。
第二步:进入MRTG安装目录下的BIN目录。
第三步:输入perl indexmaker 1.cfg>c:\wwwroot\mrtg\index.htmperl indexmaker 2.cfg>>c:\wwwroot\mrtg\index.htmperl indexmaker 3.cfg>>c:\wwwroot\mrtg\index.htm至此生成的index.htm文件就可以同时监控通过1,2,3三台设备的流量了,真正打造了自己的监控中心。
2、中文标识的应用如果对生成的网页不进行修改的话将是英文注释,而且注释信息为端口号非常不直观。
我们要把他修改为自己希望的中文名,方便我们浏览。
第一步:没有经过修改的流量监控图都是英文注释。
集成企业Zabbix监控系统设计与实现系学2017年10月30 日目录摘要 (1)关键词 (1)1 绪论 (2)2 监控系统的开源软件及原理探究 (2)2.1 监控系统的开源软件 (2)2.1.1 流量监控 (2)2.1.2 性能告警 (3)2.2 Zabbix的原理探究 (3)3 Zabbix特点及运行流程 (3)3.1 Zabbix的特点 (3)3.2 ZabbIx的运行流程 (4)4 总体设计 (4)4.1 设计思路 (4)4.2 环境参数 (5)5 Zabbix安装环境及前期准备 (5)5.1 Zabbix安装环境 (5)5.2 Zabbix服务器安装前期准备 (5)6 安装Zabbix服务器 (6)6.1 搭建LAMP平台、安装Zabbix依赖包 (6)6.2 整合LAMP架构 (7)6.3 部署Zabbix (7)6.4 创建Zabbix_agentd服务 (8)6.5 建立监控数据库 (8)6.6 部署PHP页面 (9)6.7 锁定安装界面并启动Zabbix服务 (11)7 被监控端配置 (12)7.1 前期准备 (12)7.2 安装Zabbix_agentd代理程序 (12)7.3 启动Zabbix_agented服务 (13)8 使用Zabbix管理平台 (13)8.1 创建主机分组 (13)8.2 测试监控性能 (14)9 总结 (16)参考文献 (17)致谢 (18)集成企业Zabbix监控系统设计与实现摘要“运筹帷幄之中,决胜千里之外。
”在IT运维中,监控占据着重要的地位,按比例来算,说30%一点儿也不为过。
对IT运维工程师来说,构建一个真正可用的监控告警系统是一项艰巨的任务,能够真正解决自己业务问题的监控系统软件却凤毛麟角。
运维离不开监控,就像鱼离不开水,一款功能强大的监控系统可以有力地保证业务性能的稳定。
近几年,Zabbix最为监控系统的新兴贵族迅速崛起,Zabbix灵活的设计为用户提供了易用的二次开发接口,让用户既可以使用Zabbix本身提供的功能,又可以自定义更多的接口功能,从硬件监控,到操作系统,再到服务进程,以及网络设备,它无所不能的监控功能令人叹为观止。
用MRTG监测交换机、路由器端口流量[专题介绍]用MRTG监测交换机端口流量[初级介绍]MRTG(MultiRouter Traffic Grapher, MRTG)是基于SNMP的典型网络流量统计分析工具。
它不仅耗用的系统资源小,而且是完全免费的。
它通过SNMP协议从设备得到其流量信息,并将流量负载以包含JPEG格式图形的HTML文档的方式显示给用户,以非常直观的形式显示流量负载。
是一款应用非常广泛的网络流量统计工具。
现在就根据自己的实际工作,讲解一下如何使用MRTG来监控交换机每个端口的流量。
环境介绍:MRTG安装在windows 2000 管理工作站上需要管理的两台交换机:Foundery Serveriron 800 四层交换机(IP address:10.86.11.138)Foundery Bigiron 8000 路由交换机(IP address:10.86.11.139)准备工作:下载Perl for Windows NT/2000(/)注意一定要下载版本 5.005 或更新的。
下载MRTG forWindows NT/2000(http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub)需要知道交换机设备的read-only S NMP community string笔者实际使用:ActivePerl-5.8.0.804-MSWin32-x86.zipmrtg-2.9.25 .zip两台交换机的read-only SNMP community string都是sdcdn软件安装:1.mrtg的安装只需把mrtg-2.9.25.zip解压到windows 2000 管理工作站上C:\mrtg目录下即可2.Perl的安装将ActivePerl-5.8.0.804-MSWin32-x86.zip解压后,会产生一个批处理文件:Installer.bat,双击installer.bat。
手把手实现企业级开源监控软件cacti+nagios+ntop整合(图解)做一名运维工程师,监控恐怕是日常生活中必不可少的活了,在企业中的监控,大多是用开源软件来实现的,(为什么要用开源?省钱呗..呵呵)而且开源软件也有着非常优秀的表现,其中著名的有cacti,nagios,ntop,Ganglia,等等..而cacti+nagios+ntop的结合应用,能为企业做到更细微的保证。
下面笔者先逐一介绍下:一、cacti的简介网络管理(如主机负载、网络流量等的监控)是系统管理岗工作人员日常工作的一个重要组成部分,许多厂商为此提供了各自的解决方案。
早期开源网管软件中比较著名的其中之一的MRTG,是一款使用perl开发的,通过SNMP协议实现管理工作站与设备代理进程间的通讯,以完成对设备的管理和运行状态的监视。
MRTG安装配置简单、图形界面直观,因为广受当时网络管理人员的喜爱,也为笔者早期的网络管理工作立下了汗马功劳。
但MRTG也有许多固有的缺点,如:使用文本式的数据库,数据不能重复使用;只能按日、周、月、年来查看数据;每图只能画两个DS(一条线、一个块);每取一次数据即需要绘图一次,浪费系统资源;同时,它也没有提供管理功能。
有鉴于此,MRTG的作者后来另外又开发了一个工具,即rrdtool。
rrdtool是一个性能优良的数据记录器,同时也是一个功能强大的绘图引擎。
它使用rrd的数据存储格式,使用得数据可以重复使用;在绘图方面,它可以定义任意时间段进行绘图,能绘出多个DS。
但它也有自己的缺点:虽然提供了强大的数据存储及绘图功能,但rrdtool却没有提供类似于MRTG中集成的数据采集功能;同时,它提供了过多的参数,以至于在命令行界面使用起来极为不便;此外,rrdtool 也没有提供管理功能。
于是cacti应运而生。
简单来说,Cacti就是rrdtool的一个forefront,它内置了快速的获数据取工具、优秀的绘图模板以及许多设计精良的数据获取脚本,从而可以通过结合rrdtool强大的数据抓取、数据存储和绘图功能,轻松实现主机负载、网络流量等信息的走势图的绘制。
windows下MRTG安装详细攻略windows下MRTG安装详细攻略MRTG(Multi Router Traffic Grapher),通常讲是一个监控网络链路流量负载的开源软件,它可以从所有运行SNMP协议的设备上(包括服务器、路由器、交换机等)抓取信息。
事实上它不仅可以监控网络设备,任何其它的支持SNMP协议的设备都可以做为MRTG的监控对象,并自动生成包含PNG图形格式的HTML文档,通过HTTP 方式显示给用户。
准备安装环境安装之前,除了MRTG安装程序外,还要下载几个辅助软件。
这些软件全部是免费的。
1. 下载MRTG2. 下载ActivePerl/softs/17963.html3. 下载Windows服务安装工具:SERANY.exe 和 INSTSRV.exe安装MRTG下载了以上软件后就可以开始安装了。
事实上在Windows上安装MRTG很简单,因为MRTG是以Perl语言开发的,所以要首先安装一个Perl语言的运行环境出来。
1. 安装ActivePerl解压ActivePerl的包,在安装目录中找到install.bat文件,运行它即可。
在DOS窗口中,安装程序会问一些问题,诸如安装路径、是否要修改环境变量等,可以全部使用缺省设置,一路回车就行了。
缺省情况下Perl安装在C:Perl目录下。
完成安装后,打开Windows的环境变量检查一下是否增加了Perl的运行文件路径。
2. 安装MRTG解压MRTG的包,我用的是MRTG-2.12.2版本。
将解压后的目录移到C:下就行了。
需要注意的地方(1)、给Windows安装SNMP协议支持通常由于SNMP是一个建议关闭的协议(因为有安全漏洞),所以Windows 2003不是缺省安装的。
不过MRTG就是要用SNMP协议,有什么办法呢,就装一个吧。
在“控制面板->增加/删除程序->Windows 组件安装”中,安装SNMP的组件。
目录一、mrtg安装(linux)(一)cisco设备配置(二)服务器配置(源码安装gcc、snmp、mrtg等)(三)添加mrtg用户和权限(四)服务器支持中文注:产生乱码大概有以下几点原因:1.系统默认语言,默认语言最好是英文,对于中文只是支持即可。
2.节点生成的配置文件,语言项,应该是“Chinese”或者GB2312,这两个可互相切换一下,因为系统版本不同可能要用的表示方法也不同。
3.生成过的index文件被Windows的记事本打开编辑过,有些Windows的记事本会产生乱码,这点要注意,不要用记事本打开生成的index文件。
4.更改过语言的配置文件,要将生成的index文件删除,重新生成。
5.查看MRTG的程序配置文件,语言应为中文。
一、Mrtg安装(linux)(一)CISCO设备配置1、进入enable模式2、config terminal3、依次输入如下命令snmp-server community public ROsnmp-server trap-source FastEthernet0/0snmp-server contact [你的联系人EMAIL地址]snmp-server enable traps(二)服务器配置(源码安装gcc、snmp、mrtg等)1.Mrtg需要的源码包如下。
gcc-4.5.0.tar.gz或gcc-4.5.0.tar.bz2gmp-4.3.2.tar.gz或gmp-4.3.2.tar.bz2mpfr-2.4.2.tar.gz或mpfr-2.4.2tar.bz2mpc-0.8.1.tar.gz或mpc-0.8.1.tar.bz2#说明要安装gcc需要GMP、MPFR、MPC这三个库,可从ftp:///pub/gcc/infrastructure/下载相应的压缩包。
由于MPFR依赖GMP,而MPC依赖GMP和MPFR,所以要先安装GMP,其次MPFR,最后才是MPC。
net-snmp-5.4.tar.gz或net-snmp-5.4.tar.bz2ncurses-5.7.tar.gz或ncurses-5.7.tar.bz2zlib-1.2.3.tar.gz或zlib-1.2.3.tar.bz2httpd-2.2.9.tar.gz或httpd-2.2.9.tar.bz2libpng-1.2.8-config.tar.gz或libpng-1.2.8-config.tar.bz2freetype-2.1.9.tar.gz或freetype-2.1.9.tar.bz2jpegsrc.v6b.tar.gz或jpegsrc.v6b.tar.bz2gd-2.0.33.tar.gz或gd-2.0.33.tar.bz2libxml2-2.6.19.tar.gz或libxml2-2.6.19.tar.bz2mrtg.tar.gz或mrtg.tar.bz22.环境安装安装gmptar xzvf gmp-4.3.2.tar.gz或tar –xvf gmp-4.3.2.tarmkdir gmp-buildcd gmp-build../gmp-4.3.2/configure --prefix=/usr/local/gmpmake &&make install安装mpfrtar xzvf mpfr-2.4.2.tar.gz或tar –xvf mpfr-2.4.2.tarmkdir mpfr -buildcd mpfr -build../gmp-4.3.2/configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmpmake &&make install安装mpctar xzvf mpc-0.8.1.tar.gz或tar –xvf mpc-0.8.1.tarmkdir mpc -buildcd mpc -build../gmp-4.3.2/configure --prefix=/usr/local/mpc --with-gmp=/usr/local/gmp--with-mpfr=/usr/local/mpfrmake &&make install安装gcctar xzvf gcc-4.5.0.tar.gz或tar –xvf gcc-4.5.0.tar #进入gcc源码目录后解压mkdir gcc-buildcd gcc-build../gcc-4.5.0/configure --prefix=/usr/local/gcc --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++,java --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr --with-mpc=/usr/local/mpc 为保险起见,需要在环境变量LD_LIBRARY_PATH添加前面三个库的位置,键入以下命令:ExportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/loc al/mpfr/libmake &&make install在这里我为gcc和g++命令分别建立了一个软链接。
进入/usr/bin目录后,键入如下命令建立软链接。
cd /usr/binsudo ln -s /usr/local/gcc/bin/gcc gcc45sudo ln -s /usr/local/gcc/bin/g++ g++45由于我不想每次编译程序都生成环境变量,所以需要编辑/etc目录下的bashrc文件配置shell环境。
在这个文件中添加以下语句:LD_LIBRARY_PATH=:/usr/local/mpc/lib:/usr/local/gmp/lib:/usr/local/mpfr/lib:/usr /local/gcc/libexport LD_LIBRARY_PATH保存重启系统后,就可以使用新装的gcc了。
安装net-snmptar net-snmp-5.4.tar.gz或tar –xvf net-snmp-5.4.tarcd net-snmp-5.4./configure --prefix=/usr/local/net-snmpmake &&make install修改/etc/snmp/snmpd.conf去掉89如下一行的注释view mib2 included .dod.internet.mgmt.mib-2 fc在大约57行处添加如下一行view systemview included .1.3.6.1.2.1.2把62如下行access notConfigGroup "" any noauth exact systemview none none 改作:access notConfigGroup "" any noauth exact mib2 none none3.启用snmpd服务service snmpd startchkconfig --levle 2345 snmpd on4.查看端口的开启状况netstat -tunlp |grep snmp3.MRTG生成供浏览图像需要httpd服务的支持,同时也需要gd、libpng 和zlib三个软件包的支持,而gd的正常运行也需要其它的几个软件,下面一并安装它们安装ncursestar –zxvf ncurses-5.7.tar.gz或tar –xvf ncurses-5.7.tarcd ncurses-5.7./configure –prefix=/usr/local/ncurses –with-sharedmake &&make install安装zlibtar zxvf zlib-1.2.3.tar.gzcd /zlib/1.2.3./configure --prefix=/usr/local/zlibmake&&make install安装httpdtar zxvf httpd-2.2.9.tar.gz或tar xvf httpd-2.2.9.tarcd httpd-2.2.9/./configure --prefix=/usr/local/apache --enable-modules=all --enable-so --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache --enable-proxy --enable-proxy-http --enable-proxy-ftp --enable-proxy-ajp --enable-proxy-balancer --with-mpm=worker --enable-mods-shared=all --enable-static-ab --enable-cgi --enable-rewrite --with-z-dir=/usr/local/zlib make&&make install启动httpd/usr/local/apache/bin/apachectl -k start安装libpngtar zxvf libpng-1.2.8-config.tar.gzcd libpng-1.2.8-config./configure --prefix=/usr/local/libpngmake&&make install安装freetypetar zxvf freetype-2.1.9.tar.gzcd freetype-2.1.9./configure --prefix=/usr/local/freetypemake&&make install安装jpegsrc.v6btar zxvf jpegsrc.v6b.tar.gzcd jpegsrc.6b./configure --prefix=/usr/local/jpegsrcmkdir /usr/local/jpegsrc/man/man1/cjpeg.1 -pmkdir /usr/local/jpegsrc/bin/cjpeg -pmake&&make install安装gdtar zxvf gd-2.0.33.tar.gzcd gd-2.0.33/./configure --prefix=/usr/local/gd --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/ --with-jpeg=/usr/local/jpegsrc/vi gd_png.c将#include “png.h” /* includes zlib.h and setjmp.h */替换成:#include “/usr/local/libpng/include/png.h” /* includes zlib.h and setjmp.h make&&make install安装libxml2tar zxvf libxml2-2.6.19.tar.gzcd libxml2-2.6.19/./configure --prefix=/usr/local/libxmlmake&&make install4.安装配置MRTG安装mrtgtar zxvf mrtg.tar.gzcd mrtg-2.17.2/./configure --prefix=/usr/local/mrtg --with-gd=/usr/local/gd --with-gd-lib=/usr/local/gd/lib --with-gd-inc=/usr/local/gd/include -with-png=/usr/local/libpng --with-png-lib=/usr/local/libpng/lib --with-z=/usr/local/zlib --with-z-lib=/usr/local/zlig/libmake&&make install生成配置文件./cfgmaker --snmp-options=:::::2 --output=/usr/local/mrtg/bin/YZ82.cfg ccme6827flying|`3@210.51.175.82(百兆以上)./cfgmaker --output=/usr/local/mrtg/bin/YZ82.cfg usernet@210.51.175.82(百兆以下)配置配置文件Refresh: 300Interval: 5Language: Chinese(放在配置文件的最后)### Global Config OptionsRunAsDaemon:Yes (以进程方式运行)# for UNIXWorkDir: /var/www/html/mrtg/LT3300(网页文件存放的地方)# or for NT# WorkDir: c:\mrtgdata### Global Defaults# to get bits instead of bytes and graphs growing to the rightOptions[_]: growright, bitsEnableIPv6: no配置文件配置完毕,保存退出生成流量图的首页文件./indexmaker --output=/var/www/mrtg/190002/index.html --title=YZA086-190002-BD2224 /usr/local/mrtg/bin/yz190002.cfg(生成首页文件)执行配置文件,运行流量监控mrtg /usr/local/mrtg/bin/*.cfgenv LANG=C ./mrtg syq158001.cfg使用手工运行mrtg并不能定时产生适当的统计信息,因此最好还是定时自动运行mrtg来生成统计信息,默认为五分钟运行一次。