首先,工具使用分析:
1.选择PRTG还是MRTG的问题:
PRTG是windows上的MRTG,据说有简单方便的特点。但是PRTG是收费软件。试用版可以监控10-20台设备。显然这是不够的,用MRTG没有设备数量的限制,只要服务器性能达到,就可以。虽然命令行有点烦,但是利用脚本之后,这些都可以如windows操作一般简单。
2.为什么不选择RRDTOOL
RRDTOOL是MRTG的作者觉得MRTG的功能不够强大之后而此外开发的一个软件,他是mrtg是同一家族,他们都是主要产生time-siries的图档(如流量,负载,温度,人数……)。因为mrtg当初考虑的是画两种资料在图上(或四个值),作者觉得不足,所以另外开发了rrdtool。rrdtool的学习还比mrtg来的困难,而且相关文档资料也非常的少,中文资料更少。如果没有深厚的linux基础(尤其是Shell Script)或了解SNMP,懂得英文,而且要好学的心,那么学习rrdtool可能不是一个很好的选择。
基于上面的分析,我们还是先选择了MRTG作为流量分析的工具。
1.下载mrtg,网页: http://oss.oetiker.ch/mrtg/doc/mrtg-nt-guide.en.html
2.根据windows版本官方教程:http://oss.oetiker.ch/mrtg/doc/mrtg-nt-guide.en.html
3.下载perl的windows使用版本activeperl,网站http://www.activestate.com/activeperl/
4.下载Windows服务安装工具:SERANY.exe 和 INSTSRV.exe。这里下载的方法网上一般的教程的地址已经不可使用或者很难找到。这里还是用mrtg官网教程提供的地址可以找到,网站:http://www.iopus.com/guides/srvany.htm
里面选择
进入下载页面,点击download,进入开始下载页面,点击start download。
5.下载完成后事一个名为rktools.exe的文件,安装该文件,然后在安装路径下搜索到SERANY.exe 和 INSTSRV.exe两个文件。至此就完成了准备任务,这两个文件很重要,也比较难找到。
二、安装MRTG
下载了以上软件后就可以开始安装了。因为MRTG是以Perl语言开发的,所以要首先安装一个Perl语言的运行环境出来。
1. 安装ActivePerl
目前的ActivePerl已经是可执行文件形式,因此安装方法同一般的软件。不过存在的问题是,即使点选了"设置环境变量"选项,也有可能环境变量没有设置好而无法启动perl。环境变量的设置的教程很好找,设置注意,path路径为:***\bin目录
当设置perl完成后,检查安装是否正确可打开命令行界面:输入"perl test"命令。
若显示
则说明安装成功,而不是显示找不到该命令,否则就是环境变量没有成功设置的问题。
2.安装MRTG
解压MRTG的包,网上下载时候一边下载最新稳定版本。将解压后的目录移到C:\下。
三、给Windows安装SNMP协议支持
通常由于SNMP是一个建议关闭的协议(因为有安全漏洞),所以Windows 2003不是缺省安装的。因为MRTG使用SNMP协议收集信息,因此需要在MS系统中启用SNMP协议。在“控制面板->增加/删除程序->Windows 组件安装->管理和监视工具->简单网络管理协议(SNMP)"。选定之后按提示操作便可安装。
当然这一步也会有问题,一般的电脑中没有SNMP组件安装需要的文件,而手头不一定有windows的安装光盘,需要下载snmp安装需要的文件。系统如果附带了该组件就可以直接安装。
四、运行MRTG
好了,总算安装完了。现在可以运行一下MRTG了,看看它的庐山真面目。
打开DOS窗口,首先进入C:\mrtg\bin,然后输入以下命令:
perl cfgmaker public@localhost --global "WorkDir:C:\Inetpub\wwwroot\mrtg" --output mrtg.cfg
这条命令是给MRTG建立一个监控配置文件,监控的对象是localhost,就是本地机器。你也可以用IP地址来代替localhost,或者指向其它的监控主机。
再键入一个命令:
perl mrtg mrtg.cfg
这个命令会在C:\Inetpub\wwwroot\mrtg目录下建立一些HTML和PNG文件,这些文件就是用户通常看到的流量报表了。
五、使MRTG成为Windows的服务
SERANY.exe和INSTSRV.exe这两个程序是Windows自带的工具的软件。它们可以把任何一个Windows的应用程序安装成为
Windows的一个服务。
(1)、修改注册表
创建一个文本文件,在文件中写入以下内容,并保存为mrtg.reg文件:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRTG\Parameters]
"Application"="c:\\perl\\bin\\wperl.exe"
"AppParameters"="c:\\mrtg\\bin\\mrtg --logging=eventlog c:\\mrtg\\bin\\mrtg.cfg"
"AppDirectory"="c:\\mrtg\\bin\\"
(2)、安装服务
把SERANY.exe和instsrv.exe复制MRTG的安装目录下(这两个软件要安装我们下载的rktools.exe)然后在安装目录下寻找,命令行键入以下命令:
instsrv MRTG c:\mrtg\bin\srvany.exe
双击mrtg.reg文件,把相关信息注册到注册表中。在“控制面板->管理工具->Services”下运行名为MRTG的服务即可。
到现在,一个MRTG环境就配置好了。
六、检验安装是否完成
perl mrtg mrtg.cfg
这个命令会在C:\Inetpub\wwwroot\mrtg目录下建立一些HTML和PNG文件,这些文件就是用户通常看到的流量报表了。
七、在windows上侦测OLT的网路流量
1.启动华为OLT,进入config模式
命令snmp-agent community read tzydcs指点了community string 为tzydcs 这个是个可设字段,在mrtg配置中用到。
2.打开命令行,进入c:\mrtg\bin目录
生成cfg文件
perl cfgmaker 团体字@“IP地址” --global "WorkDir: C:\Inetpub\wwwroot\mrtg" --output.mrtg-jcl.cfg
其中WorkDir:与 后面的路径要加上空格,设置路径即为mrtg流量侦测文件保存路径,也是iis服务器的访问文件路径。
3.使mrtg成为在运行之后不自行关闭,并且每五分钟收集数据还需要在cfg文件中添加选项:
RunAsDaemon:yes
Interval:5
这些都可以在cfgmaker命令时候添加进去,同时生成就可以了。使用—global附加在cfgmaker后面
4.启动wperl进程需使用命令:
Start /Dc:\mrtg\bin wperl mrtg –logging=eventlog mrtg.cfg
使用wperl替代perl后,MRTG现在在后台运行,在任务管理器中会看到wperl的进程。
5.如何停止MRTG程序
启动任务管理器,终止wperl进程便关闭的了MRTG侦测服务
八、侦测的数据保存及查看
1.为使侦测程序可以全天候运行,需要将MRTG程序安装在服务器中。MTRG使用网页形式查看侦测数据,因此需要在服务器开启web服务,安装IIS组件。运行上述命令之后,可以在指定的路径看到生成的网页文件,
若需要显示中文,要在对应的cfg文件中添加语句:Language:Chinese。当然用—global语句也可以添加
当侦测的接口有数据流过时候,便会有相应的组件生成,在cfg文件中可以修改标题,一开始的标题是自动获取的,基本是英文标题。
修改对应接口的标题,就可以生成比较完整的中文版的查看页面。
2.生成index.htm文件
perl indexmaker -o e:\inetpub\wwwroot\mrtg\default.htm mrtg.cfg
更改index文件的标题需要更改indexmaker主程式,title->"你需要添加的标题"。
注意:这里会出现一个问题,发现生成的index文件中还是会出现中文乱码现象,观察indexmaker程序会发现这条命令:
<meta http-equiv="content-type" content="text/html; charset= iso-8859-15 " >
这是一个htm语言的命令,定义的了编码格式为iso-8859-15
显然是这里出了问题,这种编码不支持中文,因此将编码格式改为gb2312,即将该行换为:
<meta http-equiv="content-type" content="text/html; charset=gb2312" >
然后使用生成命令生成出来的索引页文件显示正确。
后来想到的解决方法就是在indexmaker文件中,将源文件中的iso-8859-15换为gb2312即可正确显示中文。
3.使用iis配置web服务器
若iis安装成功,便会出现“Internet信息服务”,进入,在“默认网站”中新建“虚拟目录”:别名为:mrtg,并且设置目录为:index文件保存的路径。接下去完成IIS配置。
在浏览器地址栏内输入“http://localhost/mrtg/index.htm”,如果正常的话,主页会显示出来。
3.需要同时监控多个机器时,需开始多个wperl进程。
并且生成不同的index.htm文件(文件名自定义),都存放于制定路径,外网登陆查看便使用不同的index.htm文件便可。
注意,这里的index文件将会将该文件夹中所有的页面索引,所以如果想每台机器一个索引还需要分文件夹处理。
可以每台被测机器一个文件夹一个index文件,同时更改登陆url便可以实现连接。
九.总结
终于写差不多了,留着写报告。