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

字数:1500 |大约阅读时间 3 分钟
标签: MS Windows   OpenNMS  

OpenNMS可以监控可用性和性能参数。下面看看OpenNMS监控Windows服务器的三种情况。第一种情况:Windows机器上没有安装SNMP服务,在自动发现了这个节点后,它会被加入节点列表,之后它被定期的轮询。如果这个节点断网了,OpenNMS会报警;同时这个节点的可用性被计算。自动发现还会发现这个机器上的服务。ICMP是肯定会有的,还可能有http等其他的服务;这些服务也会被定时的轮询,如果某个服务停了,这个节点的整个的可用性受到影响。这种情况下该节点的所有服务的响应时间会被OpenNMS收集并保持历史数据。第二种情况:安装了SNMP服务。先说一下windows服务的安全性,默认情况下public是默认的只读密码;为了更加安全可以配置其他的只读密码,并指定某些特定的IP才能访问这个节点。这个策略在Windows的觉策略中很容易实现,或者说建议使用域控制器来管理这个策略,比较方便。假定OpenNMS能访问该节点的snmp服务的情况下。这些数据会增加:SNMP Attributes;在选择了资源图后,可以看到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.txtLICENSE.TXT———–FREE OF CHARGE SOFTWARE PROGRAM LICENSE AGREEMENT forSNMP INFORMANT STANDARD EDITION (The Software)——————————————————————————Copyright(c) 2005, Informant Systems, Inc. (www.informant-systems.com), andCopyright(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服务器的可用性和性能管理。

DevOps教练在知乎

See Also