前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MRTG—网络监控工具

MRTG—网络监控工具

作者头像
Java架构师必看
发布2021-03-22 11:04:51
2.5K0
发布2021-03-22 11:04:51
举报
文章被收录于专栏:Java架构师必看

最近一段时间在研究后台服务器测试技术,需要对后台服务器的各项性能指标进行实时监控和统计,也由此让我回运维

最近一段时间在研究后台服务器测试技术,需要对后台服务器的各项性能指标进行实时监控和统计,也由此让我回想起之前公司曾经接触过的一个服务SNMP,SNMP是一种称之为简单网络管理协议的服务,主要是用于获取系统的流量、I/O、CPU、Memory和Disk等信息,通过自带的统计功能,将信息发送于监控程序上,最后以统计报表的形式展现于管理员,这种方式正是我所要的。于是通过一翻查找,发现了一款免费的开源工具,那就是MRTG,称之为网络监控工具。它可用于windows和linux平台,当然对于这些个开源的支持,linux相应的还是要为windows强,因为只有开源平台才能更好的支持开源项目的发展。对于linux的版本支持,基本上都没有问题,但是对于MRTG在windows上的支持,那可就需要摸索了,目前我试用过的基本有windows server 2003和windows xp,下面我将以xp系统来演示MRTG的安装和配置流程。

首先,来介绍一下MRTG的软件平台支撑需求如下:

1、Perl平台的支持,因为MRTG是Perl语言开发的,所以需要安装ActivePerl,下载地址如:http://downloads.activestate.com/ActivePerl/Windows/,当然了安装过程很简单,基本默认就ok了,安装目录Perl在C盘根目录下。

2、IIS服务,这个并不是必须的,但是为了方面浏览最后生成的报表,因为报表都是Html格式的,为了实时且可以远程访问这个页面,所以需要IIS服务来支持其web页面的浏览。

3、SNMP服务,这个组件是必须的,不管是监控或者是被监控设备都必须要安装该组件,一般在控制面板的“添加删除组件”中找到系统监控选项,然后选择简单网络管理协议组件安装就ok,一般安装需要系统光盘的支持,所以这里就不多介绍了。

4、MRTG,这个工具的下载地址为:http://oss.oetiker.ch/mrtg/download.en.html,这里有linux和windows版本的都有,格式略有不同,请注意这里下载的windows版本的格式为zip格式的。关于版本号的选择,本人在安装过程中遇到了一些问题,稍后在安装过程中给出说明。

其次,开启并设置SNMP服务,在安装好SNMP组件之后,在服务列表中可以找到如下两个服务程序如下图所示:

如上有SNMP Service和SNMP Trap Service这两个服务,其中SNMP Service是主服务,而SNMP Trap Service是一个Trap工具,也就是抓取工具,获取Service的信息。

接下来我们需要配置SNMP,如图所示:

选择SNMP Service,右键选择属性,在属性框中切换到安全对话框,这里如上图所示默认勾选“发送身份验证陷阱”,下面的接受团体名称为public,通常情况这里建议不用系统默认的关键字,至于这个关键字的作用,后面配置MRTG的时候将会说明,重新添加一个团体名称,区别于public就可以,权利可以附加只读和创建两个即可。然后在下面可以看到关于哪些主机的SNMP信息,这里需要根据实际情况来设定,一般请指定特定的主机地址,添加IP地址即可。关于SNMP的服务配置就这些了,因为这里只是介绍MRTG的工具使用,稍后有机会再详解SNMP应用。

第三,配置IIS应用服务器,这里主要是为MRTG建立一个文件夹,用于存放监控数据文件的地方,还有就是配置web页面的浏览。通常在安装完IIS应用之后会在C盘有如此目录c:/Inetpub/wwwroot/,在此目录下新建一个文件夹为mrtg作为mrtg的服务目录,然后在默认网站下新建一个站点,目录指向mrtg,这样就可以通过远程访问到mrtg下的web页面了。

第四,安装和配置MRTG,这里关于安装MRTG的版本问题需要说明,之前我在安装部署mrtg.2.16.2.zip之后,运行perl命令时提示一些错误,这里没有记录,所以需要说明的是,2.16.2版本是有bug的,最后选择了2.17.2版本之后就很顺利完成了,下面将2.17.2的版本直接解压,将解压的文件夹放到C盘根目录下,然后可以在windows下dos命令行下开始配置和执行MRTG,如下所示:

将命令行切换到mrtg的bin目录下,也就是可执行命令模式下。接下来就需要去指定需要监控的主机地址等相关信息,在bin目录执行如下命令:

C:/mrtg-2.17.2/bin/perl cfgmaker public@192.168.6.90 --global "workdir: c:/Inetput/wwwroot/mrtg" --output "c:/Inetput/wwwroot/mrtg/pc.cfg" 然后直接回车即可,这里要说明的是perl是执行平台脚本,cfgmaker是mrtg的命令,public@192.168.6.90中public就是SNMP Service中配置的接受团体名称,这里不建议使用public,@后面是IP地址;workdir是指定工作目录,而output是指定生成配置文件的输出目录,最后生成的配置文件以cfg后缀格式。这样就已经配置好了监控的那台主机的配置服务。

然后,需要生成一个web页面来显示当前监控的信息,命令行如下:

     C:/mrtg-2.17.2/bin/perl indexmaker c:/Inetput/wwwroot/mrtg/pc.cfg>c:/Inetput/wwwroot/mrtg/index.html ,执行这个命令后就可以在mrtg目录下看到index.html文件了。

      最后运行监控命令如下:

      C:/mrtg-2.17.2/bin/perl mrtg --logging=c:/Inetput/wwwroot/mrtg/pc.log c:/Inetput/wwwroot/mrtg/pc.cfg,运行这个命令之后就可以在dos屏幕下看到有数据信息在滚动,说明SNMP已经在发送和接受信息了,这个时候可以在本地浏览器或者远程流程上访问当前的IIS服务,访问index.html页面,查看流量信息,默认是5分钟发送一次信息,如下图所示:

通常情况下监控一台主机只显示一个曲线报表,但是由于监控的主机上运行有一个虚拟机,而且本次应用就是通过虚拟机来演示的,所以对应有虚拟出来的本地连接也会被默认监控到,如果想去掉也可以,只需要在生成的cfg配置文件就更改就ok了,点击上面的单个图表可以进去详细的分析页面,分别有每日、每周、每月和每年的统计信息,直到这个监控服务被关闭为止,将清楚所有的流量统计信息。关于mrtg的更多应用,将在后续中继续发布。

本文由来源 21aspnet,由 javajgs_com 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档