check_openmanage现在是epel的一个项目,所以安装了epel-release就可以使用yum来安装check_openmanage插件了。
前提是被监控端已经安装了dell omsa(open management server administrator)程序。
#yum -y install nagios-plugins-openmanage.x86_64
插件路径在:
#/usr/lib64/nagios/plugins/openmanage
#cp /usr/lib64/nagios/plugins/openmanage /usr/local/nagios/libexec/
epel和omsa如何安装可以从网上google一下
被检测端安装还是nagios端安装,就看检测的环境了。
如果可以使用snmp,在nagios端安装这个插件即可。
如果只能使用nrpe就在被监控的机器上安装插件。
可检查的项目列表:
Storage components checked:
· Controllers
· Physical drives
· Logical drives
· Cache batteries
· Connectors (channels)
· Enclosures
· Enclosure fans
· Enclosure power supplies
· Enclosure temperature probes
· Enclosure management modules (EMMs)
Chassis components checked:
· Processors
· Memory modules
· Cooling fans
· Temperature probes
· Power supplies
· Batteries
· Voltage probes
· Power usage
· Chassis intrusion
· Removable flash media (SD cards)
Other:
· ESM Log health
· ESM Log content (default disabled)
· Alert Log content (default disabled, not SNMP)
nagios可以通过snmp来检测主机状态,也可以使用npre来进行检测。使用nrpe时需要先定义相应的command(类似于其他服务的检查)
使用snmp时nagios的command.cfg的配置
# Openmanage check via SNMP
define command {
command_name check_openmanage
command_line /path/to/check_openmanage -H $HOSTADDRESS$
}
给监控机配置文件增加omsa监控
# Dell OMSA status
define service {
use generic-service
hostgroup_name dell-servers
service_description Dell OMSA
check_command check_openmanage
}
对比发现,snmp获取信息的速度快要快于本机的自检。因此使用nrpe时需要带上参数-t 30 (延时 30秒)
自带的帮助信息:
$ check_openmanage -h
Usage: check_openmanage [OPTION]...
GENERAL OPTIONS:(公共的参数,snmp和本地都可以用)
-f, --config Specify configuration file
-p, --perfdata Output performance data [default=no]
-t, --timeout Plugin timeout in seconds [default=30]
-c, --critical Custom temperature critical limits
-w, --warning Custom temperature warning limits
-F, --fahrenheit Use Fahrenheit as temperature unit
-d, --debug Debug output, reports everything
-h, --help Display this help text
-V, --version Display version info
SNMP OPTIONS:(SNMP方式)
-H, --hostname Hostname or IP (required for SNMP) (check_openmanage -H 1.2.3.4 )
-C, --community SNMP community string [default=public]
-P, --protocol SNMP protocol version [default=2]
--port SNMP port number [default=161]
-6, --ipv6 Use IPv6 instead of IPv4 [default=no]
--tcp Use TCP instead of UDP [default=no]
OUTPUT OPTIONS:
-i, --info Prefix any alerts with the service tag
-e, --extinfo Append system info to alerts
-s, --state Prefix alerts with alert state
-S, --short-state Prefix alerts with alert state abbreviated
-o, --okinfo Verbosity when check result is OK
-B, --show-blacklist Show blacklistings in OK output
-I, --htmlinfo HTML output with clickable links
CHECK CONTROL AND BLACKLISTING:
-a, --all Check everything, even log content
-b, --blacklist Blacklist missing and/or failed components 检查黑名单
--only Only check a certain component or alert type 检查单独项
--check Fine-tune which components are checked 检查组合项
--no-storage Don't check storage
For more information and advanced options, see the manual page or URL:
http://folk.uio.no/trondham/software/check_openmanage.html
snmp执行结果:
[root@op omsa]# check_openmanage -H localhost
Controller 0 [PERC 6/i Integrated]: Firmware '6.1.1-0047' is out of date
#输出带有状态提示的信息
[root@op omsa]# check_openmanage -H localhost -s
WARNING: Controller 0 [PERC 6/i Integrated]: Firmware '6.1.1-0047' is out of date
#此命令就是使用了黑名单,不检查Firmware固件版本更新提示。
[root@localhost etc]# /usr/lib/nagios/plugins/check_openmanage -H 1.2.3.4 -s -b ctrl_fw=0
OK - System: 'PowerEdge R710', SN: 'XXXXXX', 16 GB ram (8 dimms), 1 logical drives, 6 physical drives
#只检查电源
[root@localhost etc]# /usr/lib/nagios/plugins/check_openmanage -H 1.2.3.4 -s --only power
POWER OK - 2 power supplies checked
单项检查参数表
Keyword | Effect |
critical | Only output critical alerts. It is possible to use the --check option together with this option to adjust checks. |
warning | Only output warning alerts. It is possible to use the --check option together with this option to adjust checks. |
chassis | Only check chassis components, i.e. everything but storage and log content. |
storage | Only check storage components |
memory | Only check memory modules |
fans | Only check fans |
power | Only check power supplies |
temp | Only check temperatures |
cpu | Only check processors |
voltage | Only check voltage probes |
batteries | Only check batteries |
amperage | Only check power usage |
intrusion | Only check chassis intrusion |
sdcard | Only check removable flash media |
servicetag | Only check for sane service tag |
esmhealth | Only check ESM log health |
esmlog | Only check ESM log content |
alertlog | Only check alertlog content |
#检查存储信息,并不检查FirmWare信息
[root@localhost etc]# /usr/lib/nagios/plugins/check_openmanage -H 1.2.3.4 -s --only storage -b ctrl_fw=0
STORAGE OK - 6 physical drives, 1 logical drives
#如果想在信息显示的时候知道哪些信息是放到了黑名单中,可以在命令最后加参数 -B
[root@localhost etc]# /usr/lib/nagios/plugins/check_openmanage -H 1.2.3.4 -s -b ctrl_fw=0 -B
OK - System: 'PowerEdge R710', SN: 'XXXXXX', 16 GB ram (8 dimms), 1 logical drives, 6 physical drives
----- BLACKLISTED: ctrl_fw=0
黑名单功能中可以使用的参数表
Component | Comment |
ctrl | Controller |
ctrl_fw | Suppress the "special" warning message about old controller firmware. Use this if you can't or won't upgrade the firmware. |
ctrl_driver | Suppress the "special" warning message about old controller driver. Particularly useful on systems where you can't upgrade the driver. |
ctrl_stdr | Suppress the "special" warning message about old Windows storport driver. |
pdisk | Physical disk. |
pdisk_cert | Ignore warnings for non-certified physical drives 未配置的磁盘 |
pdisk_foreign | Ignore warnings for foreign physical drives 外部磁盘例如:pdisk_foreign=1:0:5 |
vdisk | Logical drive (virtual disk) |
bat | Controller cache battery |
bat_charge | Ignore warnings related to the controller cache battery charging cycle, which happens approximately every 40 days on Dell servers. Note that using this blacklist keyword makes check_openmanage ignore non-critical cache battery errors. |
conn | Connector (channel) |
encl | Enclosure |
encl_fan | Enclosure fan |
encl_ps | Enclosure power supply |
encl_temp | Enclosure temperature probe |
encl_emm | Enclosure management module (EMM) |
dimm | Memory module |
fan | Fan (Cooling device) |
ps | Powersupply |
temp | Temperature sensor |
cpu | Processor (CPU) |
volt | Voltage probe |
bp | System battery |
amp | Amperage probe (power consumption monitoring) |
intr | Intrusion sensor |
sd | Removable flash media (SD card) |
#个性化输出信息
参数 --postmsg
$ check_openmanage --postmsg 'NOTE: Service tag: %s - Dell support: 555-1234-5678'
Power Supply 0 [AC]: Presence Detected, Failure Detected, AC Lost
Controller 0 [PERC 6/i Integrated]: Driver '00.00.03.15-RH1' is out of date
NOTE: Service tag: JV8KH0J - Dell support: 555-1234-5678
参数表:
Code | Replaced with |
%m | System model |
%s | Service tag |
%b | BIOS version |
%d | BIOS release date |
%o | Operating system name |
%r | Operating system release |
%p | Number of physical drives |
%l | Number of logical drives |
%n | Line break |
%% | A literal % |
可以使用-d或者--debug来显示所有检查项目:
[root@localhost etc]# /usr/lib/nagios/plugins/check_openmanage -H 1.2.3.4 -d
System: PowerEdge R710 OMSA version: 7.2.0
ServiceTag: XXXXXX Plugin version: 3.7.9
BIOS/date: 1.0.4 03/09/2009 Checking mode: SNMPv2c UDP/IPv4
-----------------------------------------------------------------------------
Storage Components
=============================================================================
STATE | ID | MESSAGE TEXT
---------+----------+--------------------------------------------------------
WARNING | 0 | Controller 0 [PERC 6/i Integrated]: Firmware '6.1.1-0047' is out of date
OK | 0 | Controller 0 [PERC 6/i Integrated] is Degraded
OK | 0:0:0:0 | Physical Disk 0:0:0 [SAS-HDD 146GB] on ctrl 0 is Online
OK | 0:0:0:1 | Physical Disk 0:0:1 [SAS-HDD 146GB] on ctrl 0 is Online
OK | 0:0:0:2 | Physical Disk 0:0:2 [SAS-HDD 146GB] on ctrl 0 is Online
OK | 0:0:0:3 | Physical Disk 0:0:3 [SAS-HDD 146GB] on ctrl 0 is Online
OK | 0:1:0:4 | Physical Disk 1:0:4 [SAS-HDD 146GB] on ctrl 0 is Online
OK | 0:1:0:5 | Physical Disk 1:0:5 [SAS-HDD 146GB] on ctrl 0 is Ready (Dedicated HS)
OK | 0:0 | Logical Drive '/dev/sda' [RAID-5, 544.50 GB] is Ready
OK | 0:0 | Cache Battery 0 in controller 0 is Ready
OK | 0:0 | Connector 0 [SAS] on controller 0 is Ready
OK | 0:1 | Connector 1 [SAS] on controller 0 is Ready
OK | 0:0:0 | Enclosure 0:0:0 [Backplane] on controller 0 is Ready
OK | 0:1:0 | Enclosure 0:1:0 [Backplane] on controller 0 is Ready
-----------------------------------------------------------------------------
Chassis Components
=============================================================================
STATE | ID | MESSAGE TEXT
---------+------+------------------------------------------------------------
OK | 0 | Memory module 0 [DIMM_A2, 2048 MB] is Ok
OK | 1 | Memory module 1 [DIMM_A3, 2048 MB] is Ok
OK | 2 | Memory module 2 [DIMM_A5, 2048 MB] is Ok
OK | 3 | Memory module 3 [DIMM_A6, 2048 MB] is Ok
OK | 4 | Memory module 4 [DIMM_B2, 2048 MB] is Ok
OK | 5 | Memory module 5 [DIMM_B3, 2048 MB] is Ok
OK | 6 | Memory module 6 [DIMM_B5, 2048 MB] is Ok
OK | 7 | Memory module 7 [DIMM_B6, 2048 MB] is Ok
OK | 0 | Chassis fan 0 [System Board FAN 1 RPM] reading: 3960 RPM
OK | 1 | Chassis fan 1 [System Board FAN 2 RPM] reading: 3960 RPM
OK | 2 | Chassis fan 2 [System Board FAN 3 RPM] reading: 3960 RPM
OK | 3 | Chassis fan 3 [System Board FAN 4 RPM] reading: 3960 RPM
OK | 4 | Chassis fan 4 [System Board FAN 5 RPM] reading: 3840 RPM
OK | 0 | Power Supply 0 [AC]: Presence detected
OK | 1 | Power Supply 1 [AC]: Presence detected
OK | 0 | Temperature Probe 0 [System Board Ambient Temp] reads 27 C (min=8/3, max=42/47)
OK | 0 | Processor 0 [Intel Xeon E5506 2.13GHz] is Present
OK | 1 | Processor 1 [Intel Xeon E5506 2.13GHz] is Present
OK | 0 | Voltage sensor 0 [CPU1 VCORE] is Good
OK | 1 | Voltage sensor 1 [CPU2 VCORE] is Good
OK | 2 | Voltage sensor 2 [CPU2 0.75 VTT CPU2 PG] is Good
OK | 3 | Voltage sensor 3 [CPU1 0.75 VTT CPU1 PG] is Good
OK | 4 | Voltage sensor 4 [System Board 1.5V PG] is Good
OK | 5 | Voltage sensor 5 [System Board 1.8V PG] is Good
OK | 6 | Voltage sensor 6 [System Board 3.3V PG] is Good
OK | 7 | Voltage sensor 7 [System Board 5V PG] is Good
OK | 8 | Voltage sensor 8 [CPU2 MEM PG] is Good
OK | 9 | Voltage sensor 9 [CPU1 MEM PG] is Good
OK | 10 | Voltage sensor 10 [CPU2 VTT ] is Good
OK | 11 | Voltage sensor 11 [CPU1 VTT ] is Good
OK | 12 | Voltage sensor 12 [System Board 0.9V PG] is Good
OK | 13 | Voltage sensor 13 [CPU2 1.8 PLL PG] is Good
OK | 14 | Voltage sensor 14 [CPU1 1.8 PLL PG] is Good
OK | 15 | Voltage sensor 15 [System Board 8.0 V PG] is Good
OK | 16 | Voltage sensor 16 [System Board 1.1 V PG] is Good
OK | 17 | Voltage sensor 17 [System Board 1.0 LOM PG] is Good
OK | 18 | Voltage sensor 18 [System Board 1.0 AUX PG] is Good
OK | 19 | Voltage sensor 19 [System Board 1.05 V PG] is Good
OK | 0 | Battery probe 0 [System Board CMOS Battery] is Presence Detected
OK | 0 | Chassis intrusion 0 detection: Ok (Not Breached)
-----------------------------------------------------------------------------
Other messages
=============================================================================
STATE | MESSAGE TEXT
---------+-------------------------------------------------------------------
OK | ESM log health is Ok (less than 80% full)
OK | Chassis Service Tag is sane
#使用检查配置文件进行个性化项目检查。使用参数-f
check_openmanage -f /etc/check_openmanage.conf
check_openmange 安装与使用
客户端 1,下载Openmange的版本软件:
cd /opt/ wget http:/support.dell.com (这里是网上的地址) mon02-001 /opt/DELL/dell 下面有 OM_6.1.0_ManNode_A00.tar 把这个下载下来
tar zxvf omsa...*.tgz
sh ./setup.sh
有三次选择,
输入y, 表示接受协议,
输入6,表示选择全部组件,
输入i, 表示安装所选择
安装时提示安装的路径,选择默认路径的就行(/opt/dell/srvadmin/) 建议自己定义下目录位置 /usr/local/openmanage
以下是我安装的时候出现的错误(仅供参考)出错有:
1. libstdc++.so.5 找不到
安装:compat-libstdc 相关版本的软件就好
2.libcurl.so.3 找不到
安装curl 就OK 了
我们现在做的是用client 端和服务端都在一起
wget http://folk.uio.no/trondham/software/files/check_openmanage-3.6.5.tar.gz (mon02-001 /opt/DELL 有这个包)
tar zxvf check_openmanage-3.6.5.tar.gz
cp /tar包/check_openmanage 这个Perl 脚本 放到/usr/local/nagios/libexec 里面
client 端 :定义 nrpe.cfg
vi /usr/local/nagios/etc/nrpe.cfg
add 增加一行
command[check_dell_hardware]=/usr/local/nagios/libexec/check_openmanage -e --only critical
保存下。
运行 /usr/local/nagios/libexec/check_openmanage -e --only critical 看是否有返回值。如果返回都OK ,客户端设置完毕。
以下设置服务端:
server 端里定义service:
define service {
use saa-service
host_name localhost
service_description check_hardware
check_command check_nrpe!check_dell_hardware
}
其中的localhost 根据监控的机器变动主机名。
检测监控是否成功:
服务端/usr/local/nagios/libexec/check_nrpe -H hostIP -c check_dell_hardware
如果有问题检测 NRPE 是否正常。
下面的用SNMP 安装服务端
服务端
安装: 1,安装相关Perl-snmp软件包
perl-Crypt-DES-2.05-3.2.el5.rf.i386.rpm
perl-Digest-HMAC-1.01-2.2.el5.rf.noarch.rpm
perl-Digest-SHA1-2.12-2.el5.rf.i386.rpm
perl-Net-SNMP-5.2.0-1.2.el5.rf.noarch.rpm
perl-Socket6-0.23-1.el5.rf.i386.rpm
安装顺序安装其他包,最后安装perl-Net-SNMP-5.2.0-1.2.el5.rf.noarch.rpm
下载check_openmanage 插件 (http://folk.uio.no/trondham/software/check_openmanage.html#download) 根据系统的不同,下载不同的软件。
wget http://folk.uio.no/trondham/software/files/check_openmanage-3.6.5.tar.gz
wget http://folk.uio.no/trondham/software/files/nagios-plugins-check-openmanage-3.6.5-1.el5.x86_64.rpm
上面是简单的安装,有些地方是直接复制别人的。 安装没什么花头的,所以看下应该都能会。
下面的是使用,一些参数的剪辑。
check_openmanage -s 显示详细的服务状态报警 check_openmanage -S 显示简短的服务状态报警 (也就是critcal 简写成C)
check_openmanage -i 以服务编号为前缀的服务状态报警
例:[JV8KH0J] Controller 0 [PERC 6/i Integrated]: Driver '00.00.03.15-RH1' is out of date
check_openmanage -e 显示机器的类型和报警信息(以单线为区分号 显示机器的系统 机型 服务号 )
例:Power Supply 0 [AC]: Presence Detected, Failure Detected, AC Lost Controller 0 [PERC 6/i Integrated]: Driver '00.00.03.15-RH1' is out of date
------ SYSTEM: PowerEdge 1950, SN: JV8KH0J
check_openmanage --postmsg 'NOTE: Service tag: %s - Dell support: 800-8888-8888' 根据参数 --postmsg 可以自定义提示信息。
Power Supply 0 [AC]: Presence Detected, Failure Detected, AC Lost Controller 0 [PERC 6/i Integrated]: Driver '00.00.03.15-RH1' is out of date NOTE: Service tag: JV8KH0J - Dell support: 800-8888-8888
其中 %s 是系统内部的变量调用,以下是所有的内部变量
%m System model 机器型号
%s Service tag 服务编号
%b BIOS version bios 版本
%d BIOS release date Bios 发布日期
%o Operating system name 系统名称
%r Operating system release 操作系统的版本
%p Number of physical drives 物理驱动器数
%l Number of logical drives 逻辑驱动器数
%n Line break 换行符
%% A literal % 一个文字%
以上报警信息 可以多参数一起使用。例如: check_openmanage -i -s
check_openmanage -o 默认情况下,输出的OK 信息为一行,我们可以控制的,可以输入check_openmanage -o 3 显示3行,并且显示一些硬件的底层。
check_openmanage -H localhost -b ctrl_driver=all -b pdisk=1:0:0:1 -B Openmanage 可以控制黑名单,通俗的说也就是无关泾要的监控,使用参数 -b 可以添加不要监控的项,但是等黑名单多了的时候,我们就无法知道到底什么被去掉了,这个时候 在后面加个 -B =(show-blacklist) 显示被黑的名单。。
check_openmanage -d 显示软件运行后的debug信息。 (这个是我们人工手动调试的时候用的,在nagios 里面不要使用这个选项)
自定义温度阀值
omreport 这是装好openmanage 的自检程序
omreport chassis temps 显示机器的温度
check_openmanage -H myhost --only temp -d 这是check_openmanage 的调试 ,显示机器的温度,我们可以定义阀值报警的。
check_openmanage -w 0=30 -c 0=40 更改温度报警阀值
check_openmanage -w 0=30/15 -c 0=40/10 这个表示15分钟 如果温度大于30,warning,10分钟大于40,critcal. 这个可以自己更具需要更改时间写
添加黑名单
当一些不重要的信息我们不想看到的时候,我们可以根据 -b 来调试。
例如:
check_openmanage -s -b ctrl_driver=0,1 不检测 Controller 的驱动问题。 如果所有的Controller驱动都不需要监控 可以使用ctrl_driver=all
以下是设备的代号(缩写):
==- 利用--check 来检测单个项目 0表示关闭,1表示开启
check_openmanage --check storage=0,esmlog=1 关闭检测存储,查看esmlog 信息
我们也可以定义一个文件,然后用--check 来执行文件里面定义的check 项目(方便我们每次的重复操作) vi /tmp/check_openmanage.check storage=0,esmlog=1
check_openmanage --check /tmp/check_openmanage.check
==- 利用--only 来监控指定项目
check_openmanage --only storage 只检查 存储,其他的任何的都不监控
以下是Only 的一些参数
== 如果想check 所有, check_openmanage -a 就check 所有了。
最后就是结合 PNP4Nagios 用图片显示信息。
注:
本人在装的时候发现一个比较严重的问题:
Openmange 这个软件不要重复的在服务器上卸载,安装,这样的话会导致多出很多进程,每装一次 他们会生成3个为一组的进程例如以下:
root 30672 0.0 0.0 21688 1056 ? S Jun08 0:00 \_ hald-runner
68 30680 0.0 0.0 12320 848 ? S Jun08 0:00 \_ hald-addon-acpi: listening on acpid socket /var/run/acpid.socket
68 30693 0.0 0.0 12320 844 ? S Jun08 0:00 \_ hald-addon-keyboard: listening on /dev/input/event0
而且你卸载这个软件过后,这个进程是不会Kill 掉的,只有人工手动kill, 还有这个进程多了很多以后占用CPU 资源很多, 每十分钟CPU LOAD 有个波动。 我们公司的app 服务器就是因为装了这个 load 会每十分钟波动一次,从1波动到20, 然后马上下降,所以大家一定要注意,不要在生产环境中重复的安装和卸载。
其他的方面没什么问题,软件还是蛮好用的,可以结合nagios 和 zabbix 实现硬件监控。
DELL openmanage and nagios on ubuntu 10.04PDFPrintE-mail
Linux
Written by Michael
Thursday, 28 July 2011 19:51
The dell openmanage tools are quite good for monitoring Dell servers. Although it slows down boot time (which shouldn't happen often with servers anyway), it provides some great ways to monitor your server.
Install Dell OMSA
add the repositories to a new file /etc/apt/sources.list.d/linux.dell.com.sources.list with the following content:
deb http://linux.dell.com/repo/community/deb/latest /
apt-get update
gpg --keyserver pgpkeys.mit.edu --recv-key E74433E25E3D7775
gpg -a --export E74433E25E3D7775 | apt-key add -
apt-get install srvadmin-all
Install the nagios check_openmanage plugin
Download the latest check_openmanage package from http://folk.uio.no/trondham/software/check_openmanage.html#download
wget http://folk.uio.no/trondham/software/files/check-openmanage_3.6.8-1_all.deb
Install the openManage package:
dpkg -i check-openmanage_3.6.6-1_all.deb
Check theoutput of:
/usr/lib/nagios/plugins/check_openmanage
If you get the following output:
Storage Error! No controllers found
Problem running 'omreport chassis memory': Error: Memory object not found
Problem running 'omreport chassis fans': Error! No fan probes found on this system.
Problem running 'omreport chassis temps': Error! No temperature probes found on this system.
Problem running 'omreport chassis volts': Error! No voltage probes found on this system.
Do:
/etc/init.d/dataeng restart
Rerun it, and blacklist warnings like 'Not certified drives' and controller firmware out of date like(or resolve them by swapping to certified disks and upgrade the raidcontroller firmware):
/usr/lib/nagios/plugins/check_openmanage -b ctrl_fw=0/pdisk=0:0:0:0,0:0:0:1
If you run it, it should show something like:
/usr/lib/nagios/plugins/check_openmanage -b ctrl_fw=0/pdisk=0:0:0:0,0:0:0:1
OK - System: 'PowerEdge R310', SN: 'somenumber', 4 GB ram (2 dimms), 1 logical drives, 2 physical drives
Only uncertified hard drives should be blacklisted, certified disks do not have to be blacklisted.
Make sure that dataeng starts at boot
update-rc.d dataeng defaults
Edit:
/etc/nagios/nrpe_local.cfg
And add the command without warnings to it, like:
command[check_openmanage]=/usr/lib/nagios/plugins/check_openmanage -b ctrl_fw=0/pdisk=0:0:0:0,0:0:0:1
Restart the service:
/etc/init.d/nagios-nrpe-server restart
Add the host to the nagios configuration on your Nagios server.
Optionally, you can start the openmanage built in webserver with
omconfig system webserver action=start
The webserver is running on port 1311 https by default. You can login with the root account or other local accounts of the linux system.
转载于:https://blog.51cto.com/chenshengang/1352678