李伟
摘 要 在免费开源领域,出现了许多功能完善的网络监控软件,例如 Cacti 和 Nagios;Cacti 具有强大的数据收集功能,其主要用途是对当前网络链路流量负载的图形显示;Nagios 则适合检测网络服务及设备是否正常工作,其报警功能十分强大。利用开源软件监测网络,在获得与商业网络监测软件相仿功能的同时,缩短了独立开发软件的周期、节约了使用成本。
关键词 网络监测 Cacti 系统研究
中图分类号TP393 文献标识码:A
1 课题背景
近年来,随着计算机网络技术的飞速发展,信息网络越来越多地融入到人们的工作、学习和生活中,网络管理也变得越来越重要。作为网络管理人员使用传统的网络管理,由于缺少有效的网络监测手段,工作程序较为被动。为解决这一问题,我们应开发一套实时、动态监测并详细记录全网设备运行状况、链路状况、流量状况等信息,以直观的、图形化方式实时反映网络运行的监测系统。此系统应及时发现问题,对潜在隐患实时向管理员进行报警,使网络管理由人工转为智能、由被动转为主动,帮助网络管理员提高网络管理和运行的服务质量。
2 网络监测概述
网络监测软件可以提供给管理员当前的网络状态、网络负载和网络设备的工作状态等信息。这些监测软件大多来自于软件开发公司、个人和非盈利机构。价格从免费的开源软件到收取高额费用的商业软件不等,一个高效的网络监测软件也包括网络故障的报警机制,一旦监测到网络故障,监测软件会利用多种途径来通知网络管理员。另外,高效的监测软件应该有独立运行机制,不需要在每个被监测设备上都安装客户端。
3 Cacti 概述
Cacti 是一个基于 PHP,SNMP,MySQL 和 RRDTool 开发的开源网络流量监测图形分析软件,它可以实现对当前网络状态的图形化显示、故障诊断、指定每个用户查看所对应的树状结构。Cacti 的开放式系统框架 PIA 提供了监测系统的所有基础部件和函数组,自身不但具有丰富的插件,第三方的插件如Weathtermap 都可以十分方便地嵌入到Cacti 平台中,使用者可以根据自身需求定制和安装相应的插件。Cacti 通过使用NET-SNMP 程序中的 snmpget 和 snmpgetnext 命令来进行数据的获取,通过使用 RRDTool来进行数据存取、更新、绘制图形,所采集的数据可以重复利用,并且可以定义任意时间段制图。
Cacti 通过 snmpget 命令采集数据,利用RRDTool 来制图,MySQL 数据库中存放了RRDTool 绘图时所需要的所有信息,Cacti 的操作界面简洁直观,用户不需要掌握RRDTool 的复杂数据和命令的情况下就可以轻易绘制出所需要的图形。
4 Nagios 概述
随着计算机网络规模的不断发展,网络内的计算机主机和网络设备也不断增加,因此发生网络故障的概率也不断增加,这时就需要一款良好的监测和管理措施,当网络设备发生故障时可以在第一时间通知给网络管理者,做到故障的及时发现和排除。Nagios是一款免费开源的网络监测软件,其能够有效监测 Windows 和 Linux 主机的状态,可以根据当前的网络拓扑结构将所有的网络设备如交换机、路由器和打印机等纳入到其监测范围之内。当系统或服务的状态发生异常时会及时通过邮件或短信的形式通知给网络管理员,在所有状态都恢复后会再一次发出通知,为故障的排除赢时间,也因此提高了网络的管理效率。
5 Cacti 与 Nagios 整合
Nagios 的监测服务器的运行状态和报警功能十分强大,但对像流量等这种持续数据的呈现能力较弱;而 Cacti 比较侧重于对直观数据的监控并成生图形,用来监测网络流量、CPU 和内存利用率等最为合适。比较两个软件,Cacti 侧重于监测持续的数据信息如网络设备的流量负载并成生图形,但在故障分析和报机制方面有待完善,而 Nagios 侧重于监测网络服务和报警,而在绘制图形方面逊色于 Cacti,通过两者的结合可以更有效的管理网络。Cacti 和 Nagios 的整合是通过NDOUtils 插件来中转数据的,NDOUtils 负责将Nagios 所采集的数据存放在 MySQL 数据库中,而 Cacti 的 NPC 插件负责从 MySQL 数据库中读取此数据,并显示 Nagios 的监控信息。
6系统体系结构设计
本系统是采用 B/S 模式,系统由要由 Cacti 模块、Nagios 模块、整合模块组成;其中 Cacti 模块负责网络设备如交换机/路由器的运行状态和流量监测、网络气象图、网络设备的温度检测等;Nagios 负责对服务、协议的运行状态进行检测和异常报警等;整合模块是通过安装 NPC 和 ndoutils 插件将Nagios 的数据导入 Cacti 数据库中,并由Cacti 以图形的方式显示给用户。
参考文献
[1] 马安龙,赵劲松.基于 MRTG、RRDTOOL 的校园网络流量监测系统[J].连云港职业技术学院学报,2007.
[2] 何鹏.基于SNMP的校园网管理系统的设计与实现[J].微型机与应用,2010.
[3] 王平泉.基于Cacti的园区网监测系统的应用研究与实现[D].蒙古工业大学,2009.