星期一, 一月 29, 2007

转:整合OpenNMS和OpenManage Server Agent以管理运行Linux操作系统

FROM:http://www1.ap.dell.com/content/topics/topic.aspx/ap/topics/power/zhcn/ps1q03_giles?c=cn&l=zh&s=bsd

采用 Red Hat Linux 操作系统(OS)并在 Dell PowerEdge 服务器上运行此操作系统的企业需要一种管理这些环境的方法。 OpenNMS(Open Network Management System)是一种开放资源网络管理平台。此平台管理Linux环境运行很好。OpenNMS通过使用简单网络管理协议(SNMP)能够监控网络上节点的性能。本文阐述了如何配置简单网络管理协议(SNMP)和Dell OpenManage Server Administrator与OpenNMS一起工作。
IT企业部门正快速地从UNIX?操作系统(OS) 向 Linux® 操作系统(OS)移植。作为一种开放源代码方式,Linux提供了一种稳定的,免费获得的,易于修改的操作系统(OS)。与 DellTM PowerEdgeTM 服务器整合在一起, Red Hat® Linux 正在成为企业的高性能计算丛集领域选择的操作系统。这种环境下的网络管理员需要一种补充Linux操作系统特殊性质的企业系统管理工具,同时提供一种有效的管理网络服务器的方法。
防止服务器停止和硬件失败引起的低性能对维护低的总拥有成本(TCO)是至关重要的。使用Dell OpenManageTM Server Administrator的Server Agent组件和企业级的OpenNMS通过更好的管理使用了戴尔服务器的Linux网络可以降低停机时间和提高性能。OpenManage Server Agent居留在个别服务器上以实现系统功能性,比如检测问题和事件通知。在开放源码论坛SourceForge上维护的OpenNMS是一种免费的,被广泛接受的,成熟的软件工程。OpenNMS使用简单网络管理协议(SNMP)收集性能的数据用以分析包含许多不同平台包括Linux服务器在内的网络。安装有简单网络管理协议(SNMP)代理的任何服务器能发送硬件信息,比如人所共知的陷阱,到OpenNMS。
本文阐述了在运行Linux操作系统的先前的服务器的网络上如何安装和配置简单网络管理协议(SNMP)和OpenManage Server Agent。把运行简单网络管理协议(SNMP)和OpenManage Server Agent的服务器称为管理节点。OpenNMS居留在网络的某个中央服务器上,大家所共知的网络管理工作站,这个工作站也运行Linux操作系统。另外,网络管理员安装和配置OpenNMS同OpenManage Server Agent共同提供事件通告和问题检测。
测试网络配置
为企业系统管理配置的环境通常包括由一个或多个网络管理站或主机节点组成的内部网络,致力于控制剩余的网络管理节点(见图1 )。本文的假定方案,每个管理节点通过以太网接口和Class C 192.168.0.0/24子网络相连。每个管理节点由一个运行Red Hat Linux 版本 7.3 的Dell PowerEdge 1650服务器组成。服务器上安装有简单网络管理协议和Dell OpenManage Server Agent。网络管理站具有和管理节点相同的配置。同样也安装了OpenNMS。在示例中,网络管理站中的以太网设备IP地址为192.168.0.2。
图1:网络管理站上安装有OpenNMS的网络
安装简单网络管理协议,OpenManage Server Agent和OpenNMS
OpenManage Server Agent采用简单网络管理协议以简单网络管理协议陷阱的方式发送数据到网络管理站。OpenNMS运行在网络管理站上收集数据。OpenManage Server Agent包含一个嵌入式系统管理驱动器(esm.o),此驱动器与嵌入式系统管理硬件接受各种PowerEdge服务器硬件组件的状态信息。管理节点以简单网络管理协议陷阱的方式发送此服务器硬件信息到网络管理站。
安装简单网络管理协议和OpenManageServer Agent
为启用简单网络管理协议,网络管理员必须在网络上所有的管理节点上安装NET-SNMP Red Hat Package Manager (RPMTM )文件存档程序或程序包。RPM包包含简单网络管理协议主机代理和基本的NET-SNMP命令工具集。尽管这些RPM包在第一张Red Hat Linux 7.3 CD上从Red Hat/RPMS/目录下恢复,而位于www.redhat.com/errata的最近的勘误表RPM包被代替使用。
使用rpm指令安装RPM软件包
rpm -Uvh snmp_package_name.rpm snmp_utility_package_name.rpm
例如:
rpm -Uvh net-snmp-5.0.6-6.rpm net-snmp-utils-5.0.6-6.rpm
安装RPM软件包后,网络管理员应在如下所示的所有的管理节点上安装OpenManageServer Agent
解包DOMN32A00.tar文件,解压包内的文件到目录DOMN32A00:
tar -xvf DOMN32A00.tar
改变解包目录的根目录
cd DOMN32A00
使用下面的无响应安装的脚本文件安装所有节点上的OpenManage Server Agent
./start_text.sh
网络管理员能够从http://support.dell.com处重新获得OpenManage Server Agent1.2版本的tar文件并使tar文件用于被管理的所有节点。OpenManage Server Agent无响应安装的shell命令脚本文件。文件:start_text.sh 安装必须的组件管理PowerEdge服务器节点。OpenManage联机文件或CD文件详细阐述了在Red Hat Linux 7.3系统上安装 OpenManage Server Agent 必要步骤。
配置简单网络管理协议和OpenManageServer Agent
安装OpenManage Server Agent后,网络管理员必须配置简单网络管理协议。为完成这项工作,网络管理员通过设置下面的搜索路径编辑文件/etc/snmp/snmp.conf,此路径允许简单网络管理协议发送所有的陷阱到网络管理站。
trapsink 192.168.0.2 public
本文的假定方案,192.168.0.2是位于网络管理站的以太网装置的IP地址,"public"是有权访问系统上所有的简单网络管理协议管理信息库数据的简单网络管理协议共同体名称。
必须启动snmpd 和 dellomsa服务以初始化简单网络管理协议陷阱以便使陷阱发送到网络管理站。
重新启动简单网络管理协议daemon:
service snmpd restart
重新启动dellomsa daemon:dellomsa restart
安装OpenNMS
OpenNMS包含管理Web控制台的系统,由此系统网络管理员可以查看管理节点发送的硬件产生的陷阱。最低限度的安装OpenNMS的需求见图2 。
图2:最低安装OpenNMS需求
OpenNMS使用JavaTM 开发基于Web的控制台。在用来作为网络管理站的PowerEdge服务器上,网络管理员应安装Java 2软件开发包(SDK) RPM,从http://java.sun.com上可获得。
rpm -ivh j2sdk-1_4_0_01-fcs-linux-i386.rpm
如果Postgres数据库已经安装在网络管理站上,还需其他的步骤用于安装和正确运行OpenNMS。这些步骤可以在位于http://www.opennms.org.的安装指南中备有证明。另外,安装步骤使用从OpenNMSWeb站点得到的Postgres RPM包。
用于最低安装OpenNMS需求的所有的RPM包的列表列在图3 和http://www.opennms.org
图 3. 最小安装OpenNMS所需的RPM包
网络管理员应在使用RPM工具的网络管理站上安装包:
rpm -ivh list of all RPM packages separated by space
For example:
rpm -ivh opennms-1.0.1-1.i386.rpm opennms-webapp-1.0.1-1.i386.rpm perl-DBD...
通过转换管理信息库为XML配置OpenNMS
安装完成后,配置OpenNMS以接收来自网络上简单网络管理协议客户端的信息。网络管理员通过填加包含管理简单网络管理协议接口的机器地址的IP地址范围定义来编辑snmp-config.xml文件。Figure 4 表明了定义如何查找本文中的解决方案。
图4. 开放式网络管理系统简单网络管理协议(SNMP)客户端的IP 地址范围定义
< version="v1">
< begin="192.168.0.1" end="192.168.0.254">
为了理解事件和通过OpenNMS正确地显示可读性,使用mib2opennms程序管理信息库陷阱必须转为可扩展的标记语言(XML)事件。这个程序使用一套基于管理信息结构规格的代码转换陷阱为XML。
安装最新的libsmi RPM包,可从http://rpmfind.net处得到。
rpm -ivh libsmi-0.2.16-1.i386.rpm
编写mib2opennms程序,使用libsmi库执行trap到XML的事件转变。
cd /opt/OpenNMS/contrib/mib2opennms-0.2.2/
sh configure
make install
此程序在/usr/local/bin目录下安装。
使用mib2opennms程序转变位于DOMN32A00/dcpemibs/ 目录的10892.mib文件为一个名为eventconf.txt XML文件:
/usr/local/bin/mib2opennms -f
/tmp/eventconf.txt 10892.mib
使用文件编辑器,插入eventconf.txt文件的已转变的事件,在文件开头可以找到,到"global" 定义标签之后的eventd-configuration.xml文件中。
标识所有新创立的陷阱为"enterprise generic,"
在eventconf.txt文件中更换mevalue标签的值为0到6。这里所示的sed命令,全面更改并保存已更改的文件到一个临时文件中:
sed -e 's/0<\ /mevalue>/ 6<\ /mevalue>/' /tmp/eventconf.xml' >
/tmp/eventconf.xml.tmp
检查临时文件后证实确实已更改,重新命名临时文件为eventconf.xml文件。
mv -f /tmp/eventconf.xml.tmp eventconf.xml
完成程序的最后一步后,管理信息库陷阱转变为XML。网络管理员应启动OpenNMS和Tomcat服务,此服务必须在尝试登录OpenNMS Web控制台之前初始化。
/sbin/service opennms start/sbin/service tomcat4 start
为登录本文解决方案中的OpenNMS Web控制台,网络管理员从任何一个浏览器上有权访问URL http://192.168.0.2:8080/并以"admin"的用户名和密码进入。
理解企业系统管理环境
安装完成本文提到的程序后,OpenNMS Web控制台准备接收来自网络上所有的Red Hat Linux PowerEdge服务器上的简单网络管理协议陷阱。
网络管理站和管理节点之间的通信涉及到硬件,操作系统标准驱动程序,客户端软件。如果位于管理PowerEdge服务器上的硬件设备失效或超过了它的极限,嵌入式系统管理系统就会发现问题。Dell OpenManage Server Agent通过装载有Linux操作系统的嵌入式系统管理程序接收到通知。然后代理就会发送通知到NET-SNMP主机代理。主机代理发送网络上的陷阱到配置有/etc/snmp/snmpd.conf file中的陷阱下沉选择的目标文件。当一个陷阱到达OpenNMS,有代表性的包含详细说明陷阱的发生的信息。在网络管理站,陷阱转变为事件然后发送到事件子系统(见图5 )。
图 5. OpenNMS接收来自网络上被管理的PowerEdge服务器的简单网络管理协议(SNMP)陷阱
eventconf.xml文件中的事件掩码介绍陷阱和其他相似的XML格式的事件的有关的信息。这一点从Web浏览器上可以看到:
从OpenNMSWeb控制台,点击"事件"然后点击"查看事件"
点击第一个硬件产生的陷阱事件查看事件的描述
整合OpenNMS有效管理Linux环境
成功地整合OpenNMS和Dell OpenManage Server Agent软件以接收来自Dell PowerEdge服务器的事件使管理员能够有效地管理硬件。除了提供网络原理的信息比如交换机和路由器的接口,OpenNMS也专注于网络资源提供的服务,比如Web页,数据库访问,域名系统(DNS)和动态主机配置协议(DHCP)。
OpenNMS通过网络收集数据的方式和显示这些数据可以修改,所有OpenNMS管理特征都是独立于平台的。由于OpenNMS是一种开放源代码方式,所以所有的源代码都能得到并且有经验的网络管理员可以修改源代码使之适应任何一个组织机构的需要。因此,OpenNMS允许网络扩展和设计使用不成熟的系统管理规程。当OpenNMS和OpenManage Server Agent一起使用时,就会提供一种强大的企业系统管理解决方案允许IT业灵活的修改未来的网络和系统架构开发。
Joshua Giles (joshua_giles@dell.com) 是Linux系统管理软件工程师。他的研究领域包括操作系统,文法和基于自动控制编程,存储虚拟管理器(机器改进)。他还获得了新墨西哥矿业及科技学院的学士学位。

没有评论:

OpenNMS Screenshots

OpenNMS Screenshots
集中监控系统