2009年2月8日

[原创]Zenoss配置入门-监控Windows

前言:

对于Windows系统,Zenoss提供两种检测和监控的手段,一是SNMP,二是WMI。不过在Zenoss Core的版本里只提供了SNMP,通过WMI来检测CPU,Disk,软硬件和性能则在Professional和Enterprise版本里提供,换言之,这是要收费的。再次复习一下三个版本的区别

本文主要介绍Zenoss检测和监控Windows的配置方法,其中会用到SNMP和WMI(Zenoss Core提供WMI监控WinService)




Windows安装SNMP服务和SNMP-Informant:

WindowsXP系统默认情况是没有安装SNMP Service的,我们需要手工安装。
点击控制面板里的添加或删除程序->添加/删除Windows组件->管理和监控工具,将WMI SNMP提供程序和简单网络管理协议打上钩,确定,插入XP的安装盘进行安装。确定SNMP Service, WMI Performance Adapter服务开启。

光有服务还不行,还需要到SNMP-Informant 下载informant-std-16.zip,解压安装。

配置SNMP Service,控制面板->管理工具->服务

注意在防火墙中开启SNMP的例外,(我为了省事,将防火墙全部关闭,在工作环境中应添加SNMP的端口udp 161)

到zenoss所在的Linux上测试目标Windows系统的SNMP Agent是否工作正常:

$ snmpwalk -v1 -c public 192.168.2.100 1.3.6.1.4.1.9600

有大量性能数据返回即表示OK。

Windows系统设置WMI

建立用户:该用户必须是管理员切密码不能为空,我的设置是zenoss/zenoss
在运行输入:secpol.msc,本地安全设置 -> 本地策略 -> 安全选项 -> 网络访问:本地帐户的共享和安全模式,修改为经典-本地用户以自己的身份验证
开启防火墙:WMI会使用到“Microsoft 网络的文件和打印机共享”和“远程管理”,远程管理的端口是tcp 135

测试WMI:
Microsoft提供的Scriptomatic2比较好用,这里点击下载
自带的wbemtest也不错
Zenoss对WMI的访问是使用wmic,所以用wmic来测试是最可靠的:
$ wmic -U ./zenoss%zenoss //192.168.2.100 "SELECT AvgDiskQueueLength FROM Win32_PerfRawData_PerfDisk_PhysicalDisk WHERE Name = '_Total'"
大家可替换用户名密码和主机IP进行测试,有正确的值返回说明WMI设置成功,如果有问题请Google一下吧。

配置Zenoss:

先看看/Server/Windows下默认使用的Collector Plugins,点击Devices ->Server->Windows,点击下拉菜单More->Collector Plugins,我们会发现最后一个plugin是zenoss.wmi.WinServiceMap,这也是Zenoss Core版本提供的唯一基于WMI的CollectorPlugin,从名字可以看出,它是用来监控Windows的Service(Windows的Event也会被监控,在zProperties的zWinEventlog设置)。

建立一个Device:
Device Name: 192.168.2.100
Device Class Path: /Server/Windows
Discovery Protocol: auto
Snmp Community: public

Add Device,进行Model操作,在weblog中应该会看到下面的Warning:
WARNING zen.WMIClient Windows login name is unset: please specify zWinUser and zWinPassword zProperties before adding devices.

很明显,这是因为调用zenoss.wmi.WinServiceMap需要指定Windows系统的用户。
在Model结束之后,进入该设备的Event,应该会看到两个橙色的告警事件:
修改zProperties,填写用户名和密码:
保存即可,Zenoss会在下一次调用wmi plugin的时候生效,大约1分钟之后该告警事件消失,证明配置成功。

我自己在测试中发现个问题,SNMP检测我的Thinkpad X61笔记本有错误,但是对台式机就没有问题。已经在zenoss forums发帖子问了,但现在还没答复。
还有就是我CPU的型号和频率检测不出来,老东西了,赛扬II 1.8G。

Zenoss获取的Windows的信息相当的丰富,包括系统上装的软件都检测出来,但有个问题,无法显示中文。这在OCS Inventory NG也碰到同样的问题。
针对这个问题,我个人认为在企业里使用的Windows Server最好是英文版,或许能避免一些视觉上的困扰。

监控Windows Service

Zenoss配置监控WinService非常简单,在设备OS标签的WinService点击下拉菜单,Add WinService,输入sn,系统自动找出匹配的服务,选择SNMP Trap Service,在接下的配置界面中将Monitor修改为True,Save即可。

可以在目标机器上控制面板->管理工具->服务来启动/关闭SNMP Trap Service来测试Zenoss是否工作正常。

0 评论:

发表评论