星期四, 九月 28, 2006

UCD-SNMP和NET-SNMP之间的区别是什么?

实际上是一回事,NET-SNMP是现在的版本。请参看下文。
Not a great deal, really. Although the project originally started at UC Davis (hence the name), and it has always been based there, most of the contributors have had little or no connection with this institution. The move to SourceForge was intended to provide a more flexible environment for the project, and to distribute the administrative workload more evenly. The change of name simply reflects this move, which was the last remaining link with UC Davis. The 4.2.x line is the last release line that uses the ucd-snmp name, and all releases under this banner will be bug-fixes only. Release 5.0 is the first version using the net-snmp name, and all new features and significant development will be released under this name. (Though the dividing line between a bug-fix and a new feature is something of a vague one, so some changes in the 4.2.x line may be relatively non-trivial!) Starting with the 5.0 release, we are also trying to review and rework the underlying code base to improve the readability and maintainability of the package. The 5.0 changes have mostly concentrated on the agent architecture, though there have been some significant changes to the library as well. Future releases may include further restructuring of the library. This process will probably result in some changes to the API, though we will attempt to retain some form of backwards compatibility as far as possible, and clearly mark anything that has changed. The most significant change with the 5.0 release is a restructuring of the header file organisation - not least a change from to .

星期一, 九月 25, 2006

OpenNMS网络和系统管理简介

1.1 概述
OpenNMS能够帮助IT管理部门持续的监控分布式的异构系统和网络设备的运行状态,它可以支持SNMP网络管理协议确保管理的扩展性,并且提供非常灵活的定制功能从而有利于管理范围的伸缩。它内置的故障事件管理以提供故障事件的记录和分析的能力,快速隔离非根源事件并迅速发现故障原因。OpenNMS良好的设计可以快速部署实施,简单友好的图形界面能够使得用户迅速掌握,从而降低操作的复杂度,提高IT管理效率。
1.2 体系架构
作为一个通用的网络系统故障监控平台,其体系架构应如下图所示:
附图1. OpenNMS体系架构
我们从下至上对OpenNMS体系架构作一一的介绍:
u 被管理对象层,SNMP代理程序是数据采集和动作执行层。对应网络设备来讲,该层对应与网络设备本身的网络管理功能,不需要在设备上单独部署功能模块;对计算机来讲,该层是运行在目标计算机上的SNMP服务,负责采集该系统运行状况、性能等数据,并向管理层汇报。
u OpenNMS监控引擎是实现网络和系统可用性、故障管理的业务逻辑和策略的处理层。他利用特定的轮询策略:从代理程序层收集数据、更新和维护被管理对象状态、执行相关的报警事件通知。
u 管理对象数据库是网络和系统管理的数据存储层。其中以面向对象的方式保存着网络和系统资源的模型,记录着他们的配置、描述和状态等信息。这些模型和信息是通过OpenNMS网络扫描模块自动建立起来的,并由管理者层自动维护。
u 图形用户界面是网络和系统管理的数据表示层。他以各种直观、生动的用户界面向用户展示网络和系统中各种对象的关系、配置、状态和故障情况,是优秀的用户接口。

针对企业的环境,其IT故障监控子系统的管理框架为:
u 被管理对象层——启动核心路由器和交换机的SNMP网管协议,作为网络设备故障的数据提供源;在所有需要管理的服务器上运行SNMP服务,作为监控操作系统故障的数据提供源。
u OpenNMS网络监控服务器——新增一台服务器,部署OpenNMS的监控引擎模块,由该模块对被管理对象层的数据源进行自动的数据采集和翻译采集的结果。并实时发送报警信息。
u 对象存储库——在和OpenNMS监控引擎安装的机器上安装PostgreSQL,作为OpenNMS监控模块的对象存储库。
u 图形用户界面——企业管理员可使用任何的WWW浏览器连接OpenNMS网络监控服务器的用户界面,使用合适的用户名,在某种适当的权限下查看和浏览网络监控信息、状态信息、可用性报表和性能报表。
1.3 功能介绍
1.3.1 网络节点自动发现
对象存储库中的信息并不是靠管理员手工输入和维护的,而是由OpenNMS网络监控引擎-自动扫描模块自动从用户的计算机系统中搜索发现出来的。
附图2. 网络节点自动发现
1.3.2 图形用户管理界面
在一个这样的网络和系统中,需要一些友好的监控视图。目的是使得管理员能够通过直观的界面,迅速发现故障,从而在最短的时间内解决故障。该用户界面视图可使得管理员通过管理工具看到现实世界对象的真实反映,而不是抽象的符号。使用户能够监控整个系统的概貌,系统的大体分布和总体运行状况等。并且决策适当的故障排除方案,各种界面视图可通过Intranet进行浏览查看。
附图3. 网络管理员管理主页
该用户界面的最左边是:Nodes with Outages,表格中列出了最近发生故障状况的12个节点,这些节点可能是网络故障,或者是某些网络服务出错等。
用户界面的中间是:各种网络服务的服务水平报告。它列出了最近24小时之内各种网络服务的服务质量水平;其中的网络服务可能包括:网络接口的UP时间、Web服务、DNS和DHCP服务和数据库服务等。
最右侧的是一些比较常用的功能选项:报警提示信息、节点的性能报表、节点网络服务相应时间报表和自定义的性能报表。
1.3.3 故障监控
被管理对象的数据采集和状态维护是由OpenNMS的监控引擎模块实现的。每个所管理的所有对象存储在数据库中。可以管理的对象包括:
u 支持SNMP网管的网络设备
u 部署了SNMP服务的服务器上的操作系统
OpenNMS采取统一的通讯方式从这些管理对象上采集可用性和故障信息,信息的采集有两种方式:
u OpenNMS主动地通过SNMP协议定期查询被管理对象状态
u OpenNMS被动接收被管理对象发来的SNMP Trap

OpenNMS得到被管理对象的轮询或Trap信息后,根据收到的信息类型、对象原来的状态和网络系统管理的策略和逻辑判断对象的状态是否发生变化。如果发生了变化,则可以按照管理策略采取若干更新操作。
1.3.4 故障事件管理
当被管理对象的运行状态发生变化时,就会产生事件。如果该事件是由正常变为故障,则会产生故障报警。事件管理是通过收集、确认事件,对事件进行分类和过滤,关联不同来源的事件完成对事件的处理和响应。通过事件管理,系统管理人员可以方便、迅速、及时掌握系统运行的故障和警报,及时进行处理,保障系统的正常、稳定运行。
IT系统管理人员所关注的问题,如系统资源出现短缺、数据库连接失败、网络通信中断、主机文件系统溢出等等都会以事件的形式表现出来。
附图4. 事件管理控制台

1.3.5 操作系统监控
OpenNMS对各种计算机操作系统的可用性、运行状况和故障的集中监控是通过本身的SNMP服务程序完成的。这些SNMP代理程序是SNMP服务的组成部分。在本次建议的方案中,在所有的被监控服务器上其监控的主要内容包括:
u CPU利用率,显示系统、用户、空闲时间的百分比;
u 虚拟内存(Virtual memory)利用率;
u 文件系统使用情况,显示磁盘空间使用情况;
u 监视文件系统的使用率,当使用率超过特定阈值时向系统管理员报警;
u 监控网络端口的输入、输出、错包,以及端口是否被停用或者删除;
u UNIX系统还可以监控
² Load Average:服务器平均处理量
² 共享内存
1.3.6 网络节点配置信息管理
被监控对象节点在数据中的配置信息是IT设备的资产信息,每个网络节点都是一个特定的IT资产设备。每个节点在数据库中有很多属性字段供选择填写,主要有三类属性信息:
1. 配置种类信息:配置分类、告警分类、轮询属性和阈值分类。
2. 标识信息:资产描述、厂商、型号、资产编号、操作系统等
3. 位置信息:负责人、部门、楼层、房间、机架编号等

附图5. 节点资产信息

1.3.7 全面的节点监控
每个被监控的节点都能被细致的记录和监控。当查看某节点的信息时,有这样几类信息:状态信息、各种网络服务总的可用性、SNMP属性、各个接口熟悉、最近发生的5个事件和最近的故障事件。
附图6. 节点监控视图
在查看某个节点是,界面上的信息分为三类:网络服务可用性报表、当前状态和监控事件信息。在菜单栏还能有很多功能选项:查看故障事件、资产信息、响应时间报表、SNMP性能报表、重新扫描、节点管理和更新SNMP信息。

1.4 特点和优势
OpenNMS在网络和系统管理方面,有非常广泛的用户,特别是中小企业用户,OpenNMS具有很多极好的特点:
u 方便易用的用户管理界面——OpenNMS可以提供故障事件视图、节点视图、相应时间视图、性能视图等各种管理视图。
u 基于Open Source协议开发——用户可以按照自己的需求,通过修改软件本身或者软件的源代码来定制。
u 跨平台管理——OpenNMS支持任何能运行标准SNMP协议服务的操作系统系统,并且可以从一个单一的用户界面分别管理其局域网(LAN)。
u 切实可行的事件管理系统——OpenNMS通过方便易用的交互式控制台,为IT管理员显示关键事件,提供自动的事件响应,可以以电子邮件方式发出事件通知。
u 方便的集成——OpenNMS可以与第三方产品集成。例如OpenNMS可以方便的与Dell、HP、IBM等厂商的服务器自带的SNMP故障管理软件集成。
u 2005 Linux World推荐管理产品 ——OpenNMS获得2005年Linux世界大会的“最佳网络系统管理软件”的荣誉。已经被认定开源软件世界中的最佳网络系统管理软件。

文章中所提到的图片请参阅我的相册

注:本文版权由‘中国OpenNMS用户组’所有;转载请注明出处。
曾被www.vshj.com转载:http://www.vshj.com/Article/2006/200607/Article_97842.htm

为什么要使用OpenNMS-IT监控管理需求定义



OpenNMS是什么?
http://www.opennms.com/

为什么选择OpenNMS?
OpenNMS is the World's First Enterprise-grade Network Management Platform Developed Under the Open-Source Model。

对于现在的任何一个企业,就其IT环境简单分析来看,企业的IT环境还是是比较复杂的,一方面,表现为需要管理监控的设备众多,应用比较复杂;另一方面表现为:应用系统所涉及的环节较多,一个表面的应用问题可能涉及到的故障层次也比较多。要确保整个应用系统正常运行,必须保证系统所涉及的每个环节都正常工作。这就要求建立一套IT监控系统,该系统能对其关键设备进行实时监控,及时发现问题,向管理员发出警告信息,以便迅速解决问题。对包括线路、网络设备、服务器、客户机、数据库、应用软件在内的各种IT资源进行有地效管理,是确保整个信息系统高效、安全运作的关键。这些系统管理工作单靠系统维护人员的手工操作是远远不够的,需要一整套系统管理软件帮助系统管理人员监视和维护IT系统。我们常说的“网管系统”,应该理解为保障整个IT系统顺利运作的管理系统。
所谓的“网络和系统管理”,究竟应该管理哪些内容呢?对于不同的人,网络和系统管理有着不同的含义。可能是用过时的网络分析工具监控一个孤立的网络;也可能是涉及分布式数据库、网络设备的自动轮询、网络拓扑管理的大型分布式系统。我们认为,网络和系统管理就是利用各种手段帮助管理人员监控和维护所有的IT资源,包括网络设备、服务器等。
那么,建立一套完整的IT监控系统,其意义何在呢,我们认为其意义表现为如下几个方面:
u 端到端的系统监控管理
u 减少故障时间
u 使系统发挥最大的性能
u 实现最大程度的自动化操作
u 保障业务系统平滑地运行
u IT系统更好地为客户服务

按照用户的实际需要和我们的经验,我们认为企业在建设IT监控中心时应考虑如下几个方面,分步骤、有阶段地进行系统建设:
u 全面的网络和系统故障管理
u 网络和服务器操作系统的性能管理
u 桌面机管理
u 系统容灾以及存储管理

现在市面上流行着很多商业软件,用于IT管理;例如:CA,IBM Tivoli,HP OpenView,BMC,MicroMouse。这些软件对于中小用户来说存在的主要问题是:
这些商业网络管理软件系统我们称之为FrameWork类软件。它提供了一个广阔的IT管理支持平台。用户的管理需求往往是从低到高的,按阶段递进的;用户不得不在IT管理系统建设初期就购买大约80%以上未来才会使用到的功能。
商业管理软件需要强大的来自厂商的售后服务支持;由于用户和厂商的相关的技术人员都存在着一定的不稳定性。我们可以想象一个用户买了一堆的商业管理软件之后的两三年,往往那些软件早就从生产机上删除,只留下几百万的软件包装盒还有介质被塑之高阁。
商业管理软件的功能太复杂,往往抱着自己学一学就学会了能用的用户,在真真够买了产品之后,只能在痛苦的使用过程当中后悔。学费还是需要交的,很多用户不愿意交这高额的学费。
注:本文版权由‘中国OpenNMS用户组’所有;转载请注明出处。

OpenNMS常问问题All-in-One

本Blog已经搬家到这里 --> Liu Zheng's OSS Blog

问:OpenNMS是什么?答:OpenNMS是第一个开发在开源模式下的企业级网络管理平台应用。OpenNMS的目标是成为一个真真的分布式、可升级的网络管理平台,尽管它看似一个FCAPS网络管理模型,使之可用于开放源码和商业领域。目前:OpenNMS专注与以下三个方面:服务轮询 - 检查应用服务的可用性,产生可用性报表。数据收集 - 收集、保存和报表网络信息数据,并设定和触发门限值。事件和提示管理 - 接受事件系统内部的和外部的事件,将源事件提供给强大的故障告警和故障升级系统。OpenNMS Group是开发和支持OpenNMS应用的一个商业性的实体。
问:为什么要开源?答:我们坚信真真的创新不会来自规模巨大的企业。我们还相信网络管理软件领域比Linux操作系统更适合开源模式。不像Linux,网络管理要去监视和控制来自不同厂商的很多的技术。考虑到每年都有很多新的网络设备面世。商业软件公司并不希望追赶这种更新产品的工作负荷,相反它们只能依赖与它们的通用管理技术(最小化的通用性)。相反,对于一个开源项目中的每一个人--厂商、用户或者技术顾问--都能对项目做出自己的共享,从而保障了这个项目成功的几率。

问:OpenNMS是用什么语言写的?答:OpenNMS主要是用Java语言写的。OpenNMS2.0的目标是:让它成为一个以一堆.jar文件形式来安装的产品。还有一些非Java的部分:icmpd-Java1.4 API不能理解ICMP。因为ICMP回答请求(ping)是一个最简单的来测试基于Ip的网络设备是否可以服务的方法,没有那个网络管理应用程序不用的它的。将ICMP功能分离为一个独立的守护进程的目标是,如果系统中有ICMP的功能那么OpenNMS就用,如果没有OpenNMS就率略它。OpenNMS不需要ICMP来监控网络设备。数据库-OpenNMS现在使用PostgreSQL作为它的地层数据库,PostgreSQL 是用C写的。OpenNMS2.0会使用几个能通过Hibernate适配器访问到的数据库。rrdtool-OpenNMS当前的版本实时的选择使用RRDtool或jRobin(Java会使用RRDtool)。最终这个选项的默认使用jRobin,也可以选择使用RRDtool。

问:OpenNMS有图形的显示么?答:这可能是一个对于OpenNMS新人来说最常问的问题:OpenNMS的图形监控界面在那?简单的问答是我们没有一个这样的地图,如果你想听听我们的解释请继续往下看。OpenNMS是被一些经验丰富的网络管理技术顾问开发出来的。HP的Openvew NNM是一个很流行的商业软件,它能生产一个可定制化的网络监控图形。

问:OpenNMS的最新版本信息在那里?答:可以在OpenNMS的网站上找到最新的版本信息和最新的RPM包的信息。可能会找到在你所使用的Linux上的安装信息,或者其他进入这个版本的最新更新情况。在您有什么问题前,请先查看版本说明文件中和FAQ中相关的信息。

问:OpenNMS能支持那些系统平台?答:由于OpenNMS主要是由Java编写的,理论上它能运行在任何1.4 SDK支持的平台上。下面是最新的操作系统平台支持列表:
  • Linux
    RHEL/CentOS (3 and 4)
    Debian Sarge
    Fedora Core (2, 3, 4 and 5)
    Mandrake 9.2 and 10
    SuSE (9 and 10)
    Red Hat Linux (7, 8 and 9)
  • Solaris 8 and Solaris 9 (SPARC)
  • Solaris 8 and Solaris 9 (x86)
  • Mac OS X (Panther)
  • 不支持Windows系统,OpenNMS 2.0 应该加入对Windows的支持。

问:我如何订阅和退定OpenNMS的邮件列表?答:在SourceForge上有所有的邮件列表。

问:OpenNMS和Nagios的区别是什么?答:除了Nagios之外,OpenNMS常常同Big Brouther一起被归类为大型非商业的网络管理项目。谈到Big Brother,他们的"Better than Free" 许可证并不是象OpenNMS和Nagios一样完全符合Gnu GPL许可证;所以其实没有可比性。真正的基于开源社区的软件和freeware/shareware是完全不同的。同Nagios主要的区别在于:OpenNMS是作为一个企业级管理平台,来管理无限数量设备来开发的。这和在Nagios的SNMP数据收集文档中恰好提到了:Nagios没有被设计成HP OpenView和OpenNMS的完全替代的应用。有时候OpenNMS与Nagios相比较,但它并不是敌人。我们去看这个项目为了来改进OpenNMS。希望您所用到的能满足你的需要。有些人用OpenNMS来监控25个或者更少的设备,正是因为人们喜欢它;有些人监控80000个设备,这对于其他的一些产品来说也是比较困难的。

注:本文是翻译的OpenNMS FAQ,版权由‘中国OpenNMS用户组’所有;转载请注明出处。

OpenNMS Screenshots

OpenNMS Screenshots
集中监控系统