`

如何用通过OpenNMS监控Windows 服务器

阅读更多
如何用通过OpenNMS监控Windows 服务器[ZT]

OpenNMS可以监控可用性和性能参数。下面看看OpenNMS监控Windows服务器的三种情况。

第一种情况:
Windows机器上没有安装SNMP服务,在自动发现了这个节点后,它会被加入节点列表,之后它被定期的轮询。如果这个节点断网了,OpenNMS会报警;同时这个节点的可用性被计算。自动发现还会发现这个机器上的服务。ICMP是肯定会有的,还可能有http等其他的服务;这些服务也会被定时的轮询,如果某个服务停了,这个节点的整个的可用性受到影响。这种情况下该节点的所有服务的响应时间会被OpenNMS收集并保持历史数据。

第二种情况:
安装了SNMP服务。先说一下windows服务的安全性,默认情况下public是默认的只读密码;为了更加安全可以配置其他的只读密码,并指定某些特定的IP才能访问这个节点。这个策略在Windows的觉策略中很容易实现,或者说建议使用域控制器来管理这个策略,比较方便。假定OpenNMS能访问该节点的snmp服务的情况下。这些数据会增加:SNMPAttributes;在选择了资源图后,可以看到snmp的节点数据和接口数据。进入后可以看到,其实收集的是一个tcp/ip接口上基本的信息:流量,连接数,丢包,错包等。个人认为流量是个最有用的数据,特别是对于一些简单的web/ftp服务器也就够用了。

第三种情况:
我们需要监控到操作系统的性能数据cpu/disk/RAM等。就需要安装一个snmp代理,这个代理可以提供这些信息,opennms才能通过snmp协议收集这些数据。需要到下面网址下载一个免费的snmp代理,当然这个产品也有收费版本:http://www.wtcs.org/informant/download.htm这个代理很小需要在windows机器上安装一下。默认情况下OpenNMS的对windows采集模板中包含了对cpu/disk/ram等数据的采集,等到下一次OpenNMS在采集这个机器的时候相关数据就会被显示在节点snmp数据下面。

这里是通过这个免费的snmp代理能采集到的数据:
/Program Files/SNMP Informant/standard/mibs/informant-std-tree.txt
--standard(1.3.6.1.4.1.9600.1.1)
  |
  +--logicalDiskTable(1)
  |  |
  |  +--logicalDiskEntry(1) [lDiskInstance]
  |     |
  |     +-- r-n InstanceName lDiskInstance(1)
  |     +-- r-n Gauge32      lDiskPercentDiskReadTime(2)
  |     +-- r-n Gauge32      lDiskPercentDiskTime(3)
  |     +-- r-n Gauge32      lDiskPercentDiskWriteTime(4)
  |     +-- r-n Gauge32      lDiskPercentFreeSpace(5)
  |     +-- r-n Gauge32      lDiskPercentIdleTime(6)
  |     +-- r-n Gauge32      lDiskAvgDiskQueueLength(7)
  |     +-- r-n Gauge32      lDiskAvgDiskReadQueueLength(8)
  |     +-- r-n Gauge32      lDiskAvgDiskWriteQueueLength(9)
  |     +-- r-n Gauge32      lDiskAvgDiskSecPerRead(10)
  |     +-- r-n Gauge32      lDiskAvgDiskSecPerTransfer(11)
  |     +-- r-n Gauge32      lDiskAvgDiskSecPerWrite(12)
  |     +-- r-n Gauge32      lDiskCurrentDiskQueueLength(13)
  |     +-- r-n Gauge32      lDiskDiskBytesPerSec(14)
  |     +-- r-n Gauge32      lDiskDiskReadBytesPerSec(15)
  |     +-- r-n Gauge32      lDiskDiskReadsPerSec(16)
  |     +-- r-n Gauge32      lDiskDiskTransfersPerSec(17)
  |     +-- r-n Gauge32      lDiskDiskWriteBytesPerSec(18)
  |     +-- r-n Gauge32      lDiskDiskWritesPerSec(19)
  |     +-- r-n Gauge32      lDiskFreeMegabytes(20)
  |     +-- r-n Gauge32      lDiskSplitIOPerSec(21)
  |
  +--memory(2)
  |  |
  |  +-- r-n Gauge32   memoryAvailableBytes(1)
  |  +-- r-n Gauge32   memoryAvailableKBytes(2)
  |  +-- r-n Gauge32   memoryAvailableMBytes(3)
  |  +-- r-n Gauge32   memoryCommittedBytes(4)
  |  +-- r-n Gauge32   memoryCacheBytes(5)
  |  +-- r-n Gauge32   memoryCacheBytesPeak(6)
  |  +-- r-n Gauge32   memoryPageFaultsPerSec(7)
  |  +-- r-n Gauge32   memoryPagesInputPerSec(8)
  |  +-- r-n Gauge32   memoryPagesOutputPerSec(9)
  |  +-- r-n Gauge32   memoryPagesPerSec(10)
  |  +-- r-n Gauge32   memoryPoolNonpagedBytes(11)
  |  +-- r-n Gauge32   memoryPoolPagedBytes(12)
  |  +-- r-n Gauge32   memoryPoolPagedResidentBytes(13)
  |  +-- r-n Gauge32   memorySystemCacheResidentBytes(14)
  |  +-- r-n Gauge32   memorySystemCodeResidentBytes(15)
  |  +-- r-n Gauge32   memorySystemCodeTotalBytes(16)
  |  +-- r-n Gauge32   memorySystemDriverResidentBytes(17)
  |  +-- r-n Gauge32   memorySystemDriverTotalBytes(18)
  |
  +--networkInterfaceTable(3)
  |  |
  |  +--networkInterfaceEntry(1) [netInstance]
  |     |
  |     +-- r-n InstanceName netInstance(1)
  |     +-- r-n Gauge32      netBytesReceivedPerSec(2)
  |     +-- r-n Gauge32      netBytesSentPerSec(3)
  |     +-- r-n Gauge32      netBytesTotalPerSec(4)
  |     +-- r-n Gauge32      netCurrentBandwidth(5)
  |     +-- r-n Gauge32      netOutputQueueLength(6)
  |     +-- r-n Gauge32      netPacketsOutboundDiscarded(7)
  |     +-- r-n Gauge32      netPacketsOutboundErrors(8)
  |     +-- r-n Gauge32      netPacketsReceivedDiscarded(9)
  |     +-- r-n Gauge32      netPacketsReceivedErrors(10)
  |     +-- r-n Gauge32      netPacketsReceivedUnknown(11)
  |     +-- r-n Gauge32      netPacketsReceivedPerSec(12)
  |     +-- r-n Gauge32      netPacketsSentPerSec(13)
  |     +-- r-n Gauge32      netPacketsPerSec(14)
  |
  +--objects(4)
  |  |
  |  +-- r-n Gauge32   objectsProcesses(1)
  |  +-- r-n Gauge32   objectsThreads(2)
  |
  +--processorTable(5)
  |  |
  |  +--processorEntry(1) [cpuInstance]
  |     |
  |     +-- r-n InstanceName cpuInstance(1)
  |     +-- r-n Gauge32      cpuPercentDPCTime(2)
  |     +-- r-n Gauge32      cpuPercentInterruptTime(3)
  |     +-- r-n Gauge32      cpuPercentPrivilegedTime(4)
  |     +-- r-n Gauge32      cpuPercentProcessorTime(5)
  |     +-- r-n Gauge32      cpuPercentUserTime(6)
  |     +-- r-n Gauge32      cpuAPCBypassesPerSec(7)
  |     +-- r-n Gauge32      cpuDPCBypassesPerSec(8)
  |     +-- r-n Gauge32      cpuDPCRate(9)
  |     +-- r-n Gauge32      cpuDPCsQueuedPerSec(10)
  |     +-- r-n Gauge32      cpuInterruptsPerSec(11)
  |
  +--system(6)
     |
     +-- r-n Gauge32   systemSystemUpTime(1)


最后记得在看看这个许可证文件:
Program Files/SNMP Informant/standard/license.txt
LICENSE.TXT
-----------
FREE OF CHARGE SOFTWARE PROGRAM LICENSE AGREEMENT for
SNMP INFORMANT STANDARD EDITION (The Software)

------------------------------------------------------------------------------
Copyright(c) 2005, Informant Systems, Inc. (www.informant-systems.com), and
Copyright(c) 2003-2005, Williams Technology Consulting Services (www.wtcs.org)
------------------------------------------------------------------------------
Product names used in this document are trademarks of their respective owners.
* IMPORTANT-PLEASE READ CAREFULLY BEFORE INSTALLING THE SOFTWARE.
------------------------------------------------------------------------------
后面略....

在安装了snmp代理之后,我们可以看到OpenNMS可以帮助我们完成windows服务器的可用性和性能管理。

From: http://www.martinliu.cn
分享到:
评论
1 楼 quickSand 2008-09-24  
正在研究opennms 收藏了

相关推荐

Global site tag (gtag.js) - Google Analytics