]> granicus.if.org Git - icinga2/commitdiff
Add check_openmanage command to ITL. 5906/head
authorsah <sah@mss.secunet.com>
Thu, 21 Dec 2017 14:26:30 +0000 (15:26 +0100)
committersahnd <webmaster@ahndorf.de>
Fri, 5 Jan 2018 20:10:51 +0000 (21:10 +0100)
This will help monitoring Dell PowerEdge servers hardware.

doc/10-icinga-template-library.md
itl/plugins-contrib.d/hardware.conf

index ba04e326a46bf40327e7820b7acefe14e92e543c..68b2abf726599ae8a14e3d3a18e81d527f5da89f 100644 (file)
@@ -2464,6 +2464,47 @@ hpasm_servertype         | **Optional.** The type of the server: proliant (default) or
 hpasm_eval-nics                        | **Optional.** Check network interfaces (and groups). Try it and report me whyt you think about it. I need to build up some know how on this subject. If you get an error and think, it is not justified for your configuration, please tell me about it. (always send the output of "snmpwalk -On .... 1.3.6.1.4.1.232" and a description how you setup your nics and why it is correct opposed to the plugins error message.
 hpasm_remote                   | **Optional.** Run remote SNMP checks if enabled. Otherwise checks are executed locally using the `hpasmcli` binary. Defaults to `true`.
 
+#### openmanage <a id="plugin-contrib-command-openmanage"></a>
+
+The [check_openmanage](http://folk.uio.no/trondham/software/check_openmanage.html) plugin
+checks the hardware health of Dell PowerEdge (and some PowerVault) servers.
+It uses the Dell OpenManage Server Administrator (OMSA) software, which must be running on
+the monitored system. check_openmanage can be used remotely with SNMP or locally with icinga2 agent,
+check_by_ssh or similar, whichever suits your needs and particular taste.
+
+The plugin checks the health of the storage subsystem, power supplies, memory modules, 
+temperature probes etc., and gives an alert if any of the components are faulty or operate outside normal parameters.
+
+Custom attributes passed as [command parameters](03-monitoring-basics.md#command-passing-parameters):
+
+Name                           | Description
+--------------------------------|-----------------------------------------------------------------------
+openmanage_all                 | **Optional.** Check everything, even log content
+openmanage_blacklist           | **Optional.** Blacklist missing and/or failed components
+openmanage_check               | **Optional.** Fine-tune which components are checked
+openmanage_community           | **Optional.** SNMP community string [default=public]
+openmanage_config              | **Optional.** Specify configuration file
+openmanage_critical            | **Optional.** Custom temperature critical limits
+openmanage_extinfo             | **Optional.** Append system info to alerts
+openmanage_fahrenheit          | **Optional.** Use Fahrenheit as temperature unit
+openmanage_hostname            | **Optional.** Hostname or IP (required for SNMP)
+openmanage_htmlinfo            | **Optional.** HTML output with clickable links
+openmanage_info                        | **Optional.** Prefix any alerts with the service tag
+openmanage_ipv6                        | **Optional.** Use IPv6 instead of IPv4 [default=no]
+openmanage_legacy_perfdata     | **Optional.** Legacy performance data output
+openmanage_no_storage          | **Optional.** Don't check storage
+openmanage_only                        | **Optional.** Only check a certain component or alert type
+openmanage_perfdata            | **Optional.** Output performance data [default=no]
+openmanage_port                        | **Optional.** SNMP port number [default=161]
+openmanage_protocol            | **Optional.** SNMP protocol version [default=2c]
+openmanage_short_state         | **Optional.** Prefix alerts with alert state abbreviated
+openmanage_show_blacklist      | **Optional.** Show blacklistings in OK output
+openmanage_state               | **Optional.** Prefix alerts with alert state
+openmanage_tcp                 | **Optional.** Use TCP instead of UDP [default=no]
+openmanage_timeout             | **Optional.** Plugin timeout in seconds [default=30]
+openmanage_vdisk_critical      | **Optional.** Make any alerts on virtual disks critical
+openmanage_warning             | **Optional.** Custom temperature warning limits
+
 #### adaptec-raid <a id="plugin-contrib-command-adaptec-raid"></a>
 
 The [check_adaptec_raid](https://github.com/thomas-krenn/check_adaptec_raid) plugin
index cadbf3eb1e323f57cdab9f8df23e0118255703d1..df5709ba6b50e0b039b34d08ebc8df7ec80dbd32 100644 (file)
@@ -96,3 +96,111 @@ object CheckCommand "hpasm" {
        vars.hpasm_remote = true
        vars.hpasm_hostname = "$check_address$"
 }
+
+object CheckCommand "openmanage" {
+       import "plugin-check-command"
+       command = [ PluginContribDir + "/check_openmanage" ]
+       arguments += {
+               "--all" = {
+                       set_if = "$openmanage_all$"
+                       description = "Check everything, even log content"
+               }
+               "--blacklist" = {
+                       value = "$openmanage_blacklist$"
+                       repeat_key = true
+                       description = "Blacklist missing and/or failed components"
+               }
+               "--check" = {
+                       value = "$openmanage_check$"
+                       description = "Fine-tune which components are checked"
+               }
+               "--community" = {
+                       value = "$openmanage_community$"
+                       description = "SNMP community string [default=public]"
+               }
+               "--config" = {
+                       value = "$openmanage_config$"
+                       description = "Specify configuration file"
+               }
+               "--critical" = {
+                       value = "$openmanage_critical$"
+                       description = "Custom temperature critical limits"
+               }
+               "--extinfo" = {
+                       set_if = "$openmanage_extinfo$"
+                       description = "Append system info to alerts"
+               }
+               "--fahrenheit" = {
+                       set_if = "$openmanage_fahrenheit$"
+                       description = "Use Fahrenheit as temperature unit"
+               }
+               "--hostname" = {
+                       value = "$openmanage_hostname$"
+                       description = "Hostname or IP (required for SNMP)"
+               }
+               "--htmlinfo" = {
+                       set_if = "$openmanage_htmlinfo$"
+                       description = "HTML output with clickable links"
+               }
+               "--info" = {
+                       set_if = "$openmanage_info$"
+                       description = "Prefix any alerts with the service tag"
+               }
+               "--ipv6" = {
+                       set_if = "$openmanage_ipv6$"
+                       description = "Use IPv6 instead of IPv4 [default=no]"
+               }
+               "--legacy-perfdata" = {
+                       set_if = "$openmanage_legacy_perfdata$"
+                       description = "legacy performance data output"
+               }
+               "--no-storage" = {
+                       set_if = "$openmanage_no_storage$"
+                       description = "Don't check storage"
+               }
+               "--only" = {
+                       value = "$openmanage_only$"
+                       description = "Only check a certain component or alert type"
+               }
+               "--perfdata" = {
+                       set_if = "$openmanage_perfdata$"
+                       description = "Output performance data [default=no]"
+               }
+               "--port" = {
+                       value = "$openmanage_port$"
+                       description = "SNMP port number [default=161]"
+               }
+               "--protocol" = {
+                       value = "$openmanage_protocol$"
+                       description = "SNMP protocol version [default=2c]"
+               }
+               "--short-state" = {
+                       set_if = "$openmanage_short_state$"
+                       description = "Prefix alerts with alert state abbreviated"
+               }
+               "--show-blacklist" = {
+                       set_if = "$openmanage_show_blacklist$"
+                       description = "Show blacklistings in OK output"
+               }
+               "--state" = {
+                       set_if = "$openmanage_state$"
+                       description = "Prefix alerts with alert state"
+               }
+               "--tcp" = {
+                       set_if = "$openmanage_tcp$"
+                       description = "Use TCP instead of UDP [default=no]"
+               }
+               "--timeout" = {
+                       value = "$openmanage_timeout$"
+                       description = "Plugin timeout in seconds [default=30]"
+               }
+               "--vdisk-critical" = {
+                       set_if = "$openmanage_vdisk_critical$"
+                       description = "Make any alerts on virtual disks critical"
+               }
+               "--warning" = {
+                       value = "$openmanage_warning$"
+                       description = "Custom temperature warning limits"
+               }
+       }
+}