【2013年7月10日 51CTO外电头条】随着网络方案的不断扩展与多元化走势,大量有线及无线设备开始成为网络体系不可或缺的组成部分,用户对网络监控工具的需求也随之持续走高。虽然功能丰富的商业产品比比皆是,但来自开源社区的强大方案仍然对监控工具市场的发展起到巨大的推动作用。
在本系列文章中,我们将一同剖析四款高人气开源产品--Nagios Core 3.5、NetXMS 1.2.7、OpenNMS 1.10.9以及Zenoss Core 4.2。四款产品都已经相当成熟,足以提供与其它企业级同类方案相媲美的综合性监控能力,同时拥有良好的社区支持体系。
四款产品都提供管理、性能监控以及网络设备警示与报告功能,其作用范围涵盖服务器、路由器、交换机、打印机、UPS、网络站点、业务应用程序以及移动设备等等。监控功能可以简单起效,用户可以像使用PING请求那样利用SNMP(即简单网络管理协议)或者本地代理对单一设备进行全面管理。
此次参与评述的四款产品经实测全部支持SNMP及其它通用型协议,包括WMI、HTTP、SMTP、SSH以及XML。尽管其中两款产品只能用于特定操作系统,但四者全部可以实现跨平台IT基础设施监控(本质上说可作用于任何拥有IP地址的设备)。它们支持的功能包括自动识别、SNMP、可阅读系统日志、触发器/警报设置、Web应用程序、分布式监控(即负载平衡)、映射、IPv6(只有NetXMS不支持IPv6)以及库存追踪。
四款产品还提供基本而全面的基础设施监控功能,而且很少甚至完全不需要额外硬件、内存以及存储机制作为监控环境的支持基础。在本次评述中,我们将从安装便捷性、配置便捷性、管理能力、多平台支持能力、报告机制及总体可用性等几个角度做出横向比较。
第一位竞争者:Zenoss
Zenoss堪称我们的首选方案,这主要是由于其直观且专业的管理界面对于用户极具吸引力。另外,其环境配置与报告运作机制也非常简便;当需要帮助时,我们找到的用户指导文档非常翔实清晰--出色的说明资料在开源领域极为难得。但完美永远只是目标却无法真正达成,我们发现Zenoss对资源要求较高,即使只管理少数几台设备、它也需要消耗大量硬件及内存等附加资源。
Zenoss Core是一款开源网络管理工具,可以运行在红帽企业Linux(简称RHEL)或者社区企业操作系统(简称CentOS)两大Linux版本当中。另有一套虚拟设备版本,能够利用VMware Player运行在最小安装配置下的CentOS当中。Zenoss Core基于Gnu GPL2许可。除了开源版本之外,Zenoss还提供多套商业监控解决方案。
Zenoss不需要搭配代理,且使用SNMP、SSH、Telnet以及WMI等现有协议。在识别过程中,Zenoss会收集个别设备的组件信息并归纳其潜在运行依赖关系,通过这种方式创建出的基础架构清单被称为"配置模型"、这也正是Zenoss网络管理方案的核心所在。
除了使用自动识别功能之外,管理员还可以手动输入信息并将监控的ZenPack数量调整至200以上,从而拓展单一或多台设备所搭配的配置模型。ZenPack从使用层面看类似于开源免费社区所开发的功能性插件。Core ZenPack被打包在Zenoss Core版本当中,而商业版ZenPack则只会出现在商业版本中。
在解决了一系列硬件需求与依赖关系问题后,我们最终成功在运行着CentOS 6.4最小化版本(无图形用户界面)的虚拟机中安装了Zenoss 4.2。我们发现Zenoss在设计思路上并没有考虑轻量级基础设施的配置现状--事实上最少要6GB内存才能让一台仅安装了操作系统和Zenoss的设备进入正常运行状态。Zenoss资源密集型方案的头衔可谓实至名归,它能够监控多达一千台设备,且建议配置为最少16GB内存与八个CPU核心,存储空间和传输速度也是越强越好。
Zenoss能够监控多种操作系统平台,其中包括网络设备(例如路由器与交换机)、服务器以及特定应用程序。它采用分层式架构:用户层、数据层、处理层与采集层。用户层基本负责提供用户界面,数据层则负责从三个不同的数据库中收集数据,处理层管理采集层与数据层之间的通信工作,采集层利用一系列服务向数据层提供收集到的数据。
可用性监控的实现依赖于一系列手段,例如利用ICMP或者SNMP响应对TCP/IP端口及服务进行测试及查询。Zenoss还能够对Windows及Linux流程及服务进行可用性检测。
Zenoss通过收集SNMP OID值的方式实现性能监控。整个过程需要借助预加载MIB(即管理信息基础)、新的本地MIB以及对定制性能插件的内置支持等机制。
安装完成之后,Zenoss就能像物理设备那样接受来自不同设备(包括台式机、笔记本及移动设备)浏览器的访问。其用户界面高效而直观,在默认情况下会显示警示信息以及基础设施地理位置。用户还可以通过配置在浏览器中查看任何URL、内部或外部页面。仪表板中显示的信息可以通过开发者提供的所谓“门户组件”进行调整,各项目的对应显示窗口也可随时添加、删除并在仪表板内部任意拖拽及调整窗口尺寸。这样的开放性让我们能够随心所欲定制出符合需要的选项。“守护进程关闭”、“消息”与“生产状态”等功能也拥有对应的门户组件。
在向监控工具中添加设备时,大家可以使用自动识别功能或者手动输入设备的IP地址或主机名称。在设备添加完成之后,具体项目会显示在“基础设施”选项卡中、并附带状态基础信息与彩色编码提示。
除了"基础设施"之外、"事件"选项卡中显示的基本属于同类信息,但只按事件进行排序。事件与基础设施两种标签使管理员能够通过输入数列标题对大部分数列加以分类。对于每个事件,大家可以执行不同的处理操作,包括“只应答事件但不实际执行”及向设备发出“手动ping”或者“snmpwalk”指令以检索更多信息等。事件一旦处理完成,Zenoss会将其关闭并进行归档。
Zenoss Core提供强大的报告功能,从基础的准备就绪报告到定制报告功能应有尽有。除了标准的事件、设备及性能报告之外,Zenoss还还提供完善的图形化报告,包括在同一份报告中包含多份汇总自多台设备的图形化报告。这些报告可在屏幕中显示、打印在纸面上或者被保存为PDF文件。
目前已经有大量第三方ZenPack可供下载,其中一些甚至允许用户实现Zenoss与移动Android设备间的交互需求,我们也可以利用由Zenoss提供的API说明文档创建属于自己的ZenPack。
虽然Zenoss Core对于系统配置的要求颇为严苛,但这也使得整套监控环境在性能上极为强大、足以处理规模化设备与数据流量。Zenoss的用户界面灵活而富于现代气息,丰富的选项与定制化仪表板令人印象深刻。无论是显示在屏幕上还是打印成PDF形式,其统计报告都极具综合性且信息排布井井有条。另外,我们还要再次掌握Zenoss那超过两百页的PDF用户手册,面面俱到的内容与清晰明了的指导在开源领域极为难得。
第 1 页:四大顶级开源网络管理工具之Zenoss | 第 2 页:四大顶级开源网络管理工具之OpenNMS |
第 3 页:四大顶级开源网络管理工具之NetXMS | 第 4 页:四大顶级开源网络管理工具之Nagios |