[背景]公司需求在windows下装个MRTG来监控几台交换机,这不,就干起来了...
[过程]
(一)必备软件
(1)IIS/apache  [url]http://www.apache.org/[/url]下载Apache,IIS系统自带
(2)ActivePerl  [url]http://www.activestate.com/Products/ActivePerl/[/url]
(3)Mrtg        [url]http://oss.oetiker.ch/mrtg/[/url]
我将其ActivePerl安装到D盘,Mrtg也放到D盘
(二)配置
因监控多台交换机,故需要有多次重复的配置,仅举一例。
(1)cd d:/mrtg/bin
(2)D:\Perl\bin\perl cfgmaker [email]public@xxx.xxx.xxx.xxx[/email] --global WorkDir:\www1 --output switch_23.cfg
(3)修改switch_23.cfg  mrtg的配置文件
   去掉注释
#  or for NT
WorkDir: d:\www1   <====去掉这里的"#"                    发布网页的主目录

### Global Defaults           

#  to get bits instead of bytes and graphs growing to the right
Options[_]: growright, bits   <====去掉这里的"#"          图表横坐标时间值是向右发展的,单位为bits

追加

RunAsDaemon:yes
interval:5                每5分钟自动统计一次
Language:gb               选择语言,中文简体可以选择gb、cn、chinese、gb2312
 

(4)D:\Perl\bin\perl indexmaker --output=D:\www1\index.html --title=Mian-WAN-C3750 D:\mrtg\bin\switch_23.cfg
生成首页
(5)D:\Perl\bin\perl mrtg --logging=switch_23.log D:\mrtg\bin\switch_23.cfg
   注意,这一步骤要执行几次:每一次停止后(显示假死状态),可以按ctrl+c终止,再次执行,直到出现don't close window,or mrtg die
   说明就OK了。但是这是一个在前台执行的,我们想在后台工作,于是就需要wperl
D:\Perl\bin\wperl mrtg --logging=switch_23.log D:\mrtg\bin\switch_23.cfg

(6)对于重启,我们需要用脚本+计划任务
mrtg.bat
@echo off
D:\Perl\bin\wperl D:\mrtg\bin\mrtg --logging=switch_20.log D:\mrtg\bin\switch_20.cfg
D:\Perl\bin\wperl D:\mrtg\bin\mrtg --logging=switch_21.log D:\mrtg\bin\switch_21.cfg
D:\Perl\bin\wperl D:\mrtg\bin\mrtg --logging=switch_22.log D:\mrtg\bin\switch_22.cfg
D:\Perl\bin\wperl D:\mrtg\bin\mrtg --logging=switch_22.log D:\mrtg\bin\switch_22.cfg
计划任务定为“计算机重启时”
(7)在IIS下添加虚拟主机喽,这个就是Next的活。
[结论]任务完成,保留以备不时之需!