on 05-27-2014 10:41 PM
We are pleased to release Cisco UCS Manager Plugin 0.9.4 for Nagios
Nagios is an open source computer system monitoring, network monitoring and infrastructure monitoring software application. Nagios offers monitoring and alerting services for servers, switches, applications, and services.
The solution provides end-user with two components.
Supported Nagios Versions:
This plugin is supported on Nagios Core version 3.2 and higher versions.
Supported Cisco UCS Manager Releases:
This plugin is supported on Cisco UCS Manager Releases 2.1, 2.2 and 3.0.
Software Requirements for Release 0.9(4):
This release of the plugin requires Python SDK 0.8.3 to communicate with UCS Manager. Click here to download Python SDK Release 0.8(3) for UCS Manager.
New Features in Release 0.9(4):
Plugin Enhancements:
Auto-Discovery Add-On Enhancements:
Important Note regarding Backward Compatibility:
If you are using the add-on and upgrading from an older release of plugin to release 0.9.4 , you must re-discover all the domains using the new add-on to create new service definition files as the 'onlyFaults' flag in 'cisco_ucs_nagios' script is changed to 'faultDetails'.
Upgrading from Release 0.9.2 to Release 0.9.3 or above:
New Features in Release 0.9(3):
New Features in Release 0.9(2):
Refer to the attached user guide for installation/upgrade and usage details.
For any queries/feedback on Cisco UCSM Plugin for Nagios 3.x, please add a discussion to the Cisco Developed Integrations sub-space on Cisco UCS Communities.
I'm stumped. I am trying to use this plugin and filter various checks per rack-unit server just like the autodiscovery tool found and setup, however the issue I run into is that the filter logic for matching sys/rack-unit-1 matches rack units 1-19 instead. If I use filter of sys/rack-unit-1! I get a script failure message instead.
Any help?
start (^) and end ($) anchors around your pattern should resolve this problem. Eg "^sys/chassis-1$" works for chassis. Similarly "^sys/rack-unit-1$" should also work.
Unfortunately that doesn't work for me either. Below is an example command and the resulting output:
Intrepid:cisco_nagios_monitoring_plugin joerger$ ./cisco_ucs_nagios -u nagios --passEnc hideen -t class -q ProcessorUnit --filter "dn:sys/rack-unit-1$" --port 80 --NoSsl -H $host_or_ip
Check if the Class 'ProcessorUnit' exists on the given UCS host.
In case you have provided a filter then please check if the attribute that you want
to filter exists. Else there is no data for the provided filter value.
Can you try
/usr/local/nagios/libexec/cisco_ucs_nagios -u "admin" -p "xxxx" -H $host_or_ip -t class -q processorUnit --filter "dn:sys/rack-unit-1/*"
And incase you still find issues you can then use
/usr/local/nagios/libexec/cisco_ucs_nagios -u "admin" -p "xxx" -H $host_or_ip -t dn -q sys/rack-unit-1/board/cpu-1
/usr/local/nagios/libexec/cisco_ucs_nagios -u "admin" -p "xxx" -H $host_or_ip -t dn -q sys/rack-unit-1/board/cpu-2
If none of this work then can you please send the debug output of the cli using the cli option --debug
/usr/local/nagios/libexec/cisco_ucs_nagios -u "admin" -p "xxxx" -H $host_or_ip -t class -q processorUnit --filter "dn:sys/rack-unit-1/*" --debug
So this first command is a good example of the problem that I have in general in that filtering for -1 (or 2,3,4,5,etc) returns values for all numbers that start with 1:
Intrepid:cisco_nagios_monitoring_plugin joerger$ ./cisco_ucs_nagios -u nagios --passEnc hidden -t class -q ProcessorUnit --filter "dn:sys/rack-unit-1/*" --port 80 --NoSsl -H $host_or_ip
sys/rack-unit-1/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-1/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-10/board/cpu-1:OK - Cores : 6,Model : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz,CPU Speed(Mhz) : 2.666000
sys/rack-unit-10/board/cpu-2:OK - Cores : 6,Model : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz,CPU Speed(Mhz) : 2.666000
sys/rack-unit-12/board/cpu-2:OK - Cores : 6,Model : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz,CPU Speed(Mhz) : 2.666000
sys/rack-unit-12/board/cpu-1:OK - Cores : 6,Model : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz,CPU Speed(Mhz) : 2.666000
sys/rack-unit-11/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-11/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-15/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-15/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-14/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-14/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-17/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-17/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-13/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-13/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-18/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-18/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-16/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-16/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-19/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
sys/rack-unit-19/board/cpu-2:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
But filtering for the specific sys/rack-unit-1/board/cpu-1 works as expected:
Intrepid:cisco_nagios_monitoring_plugin joerger$ ./cisco_ucs_nagios -u nagios --passEnc hidden -t class -q ProcessorUnit --filter "dn:sys/rack-unit-1/board/cpu-1" --port 80 --NoSsl -H $host_or_ip
sys/rack-unit-1/board/cpu-1:OK - Cores : 4,Model : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz,CPU Speed(Mhz) : 2.400000
I can certainly send over the debug output, should it go here or somewhere else?
Great if the said solution works for you.
We will look into your concerns and will take it up in the upcoming releases.
New error when running this newest version with the UcsSdk 0.8.3 installed:
Intrepid:cisco_nagios_monitoring_plugin joerger$ ./cisco_ucs_nagios --help
Traceback (most recent call last):
File "./cisco_ucs_nagios", line 25, in <module>
from UcsSdk import *
File "/Library/Python/2.7/site-packages/UcsSdk/__init__.py", line 15, in <module>
from MoMeta import _VersionMeta,_ManagedObjectMeta
ImportError: cannot import name _VersionMeta
I've confirmed that the MoMeta files are present at "/Library/Python/2.7/site-packages/UcsSdk/MoMeta/"
Seems you have not cleaned the earlier version of UcsSdk installed on your setup.
Manually remove UcsSdk folder from site-packages folder.
Then try doing fresh install with UcsSdk 0.8.3 version.
Thanks
Rahul
Hi
I am getting the following error message
Error: Con' is not defined anywhere
How do i fix this ?
Running configuration check...
Nagios Core 4.0.8
Copyright (c) 2009-present Nagios Core Development Team and Community Contributo rs
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-12-2014
License: GPL
Website: http://www.nagios.org
Reading configuration data...
Read main config file okay...
Warning: failure_prediction_enabled is obsoleted and no longer has any effect in host type objects (config file '/usr/local/nagios/etc/cisco/ucsObjs/cisco_ucs_h ost.cfg', starting at line 1)
Warning: failure_prediction_enabled is obsoleted and no longer has any effect in service type objects (config file '/usr/local/nagios/etc/cisco/ucsObjs/cisco_uc s_service.cfg', starting at line 1)
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
Error: Con' is not defined anywhere
Error: Could not add con' to host (config file '/usr/local/nagios/etc/cisco/ucsO bjs/192.168.153.155/192.168.153.155.cfg', starting on line 1)
Error processing object config files!
***> One or more problems was encountered while processing the config files...
Check your configuration file(s) to ensure that they contain valid
directives and data defintions. If you are upgrading from a previous
version of Nagios, you should be aware that some variables/definitions
may have been removed or modified in this version. Make sure to read
the HTML documentation regarding the config files, as well as the
'Whats New' section to find out what has changed.
[root@localhost autodiscovery]# vi '/usr/local/nagios/etc/cisco/ucsObjs/cisco_uc s_host.cfg
> ^C
[root@localhost autodiscovery]# vi /usr/local/nagios/etc/cisco/ucsObjs/cisco_ucs _host.cfg
[root@localhost autodiscovery]# service nagios restart Running configuration check...
Nagios Core 4.0.8
Copyright (c) 2009-present Nagios Core Development Team and Community Contributo rs
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-12-2014
License: GPL
Website: http://www.nagios.org
Reading configuration data...
Read main config file okay...
Warning: failure_prediction_enabled is obsoleted and no longer has any effect in host type objects (config file '/usr/local/nagios/etc/cisco/ucsObjs/cisco_ucs_h ost.cfg', starting at line 1)
Warning: failure_prediction_enabled is obsoleted and no longer has any effect in service type objects (config file '/usr/local/nagios/etc/cisco/ucsObjs/cisco_uc s_service.cfg', starting at line 1)
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
WARNING: Extinfo objects are deprecated and will be removed in future versions
Error: Con' is not defined anywhere
Error: Could not add con' to service (config file '/usr/local/nagios/etc/cisco/u csObjs/192.168.153.155/services.cfg', starting on line 64)
Error processing object config files!
***> One or more problems was encountered while processing the config files...
Check your configuration file(s) to ensure that they contain valid
directives and data defintions. If you are upgrading from a previous
version of Nagios, you should be aware that some variables/definitions
may have been removed or modified in this version. Make sure to read
the HTML documentation regarding the config files, as well as the
'Whats New' section to find out what has changed.
Can you please provide us with the following details
- Which version of Cisco UCS Python SDK are you using currently ?
- What is the Cisco UCS firmware version on 192.168.153.155 that you are using ?
- Can you please provide us with the NagiosAutoDiscoveryUCS.cfg which you have used for Autodiscovery.
- Can you also please provide us with the /usr/local/nagios/etc/cisco/ucsObjs/192.168.153.155/services.cfg.
- If possible can you provide the output for the following
#./NagiosAutoDiscoveryUCS.py --version
Note : The command given below will re-discover your UCS domain
#./NagiosAutoDiscoveryUCS.py --debug
Cisco UCSM Nagios Auto Discovery version : 0.9.3
Can you please provide us with the following details
- Which version of Cisco UCS Python SDK are you using currently ?
0.8.3
- What is the Cisco UCS firmware version on 192.168.153.155 that you are using ?
2.2 3b
- Can you please provide us with the NagiosAutoDiscoveryUCS.cfg which you have used for Autodiscovery.
It’s the latest version I downloaded it yesterday cisco-ucs-nagios-0.9.3
- Can you also please provide us with the /usr/local/nagios/etc/cisco/ucsObjs/192.168.153.155/services.cfg.
What’s your email address ?
- If possible can you provide the output for the following
#./NagiosAutoDiscoveryUCS.py --version
Note : The command given below will re-discover your UCS domain
#./NagiosAutoDiscoveryUCS.py –debug
Its too long to paste
What’s your email address ?
Please send the details on tripathiprateek@gmail.com.
Also request you not to pass this email id any further.
hi all
I've successfully started using this plugin under nagios. working perfectly. my question is, that is there any option to show some results in pnp4nagios graph? for example I monitor fan speed this way:
check_ucs!dn!/sys/chassis-1/fan-module-1-1/fan-1/stats -a speed -w 3800 -c 4000
this gives back one number. how can I show these result in graph? if I click on the graph icon, i get error but only with this plugin: other graphs are working perfectly:
XML file "/usr/local/pnp4nagios/var/perfdata/<hostname>/Chassis_1_-_Fan_module_1_-_Fan_1.xml" not found. <a href="http://docs.pnp4nagios.org/faq/6">Read FAQ online</a>
application/models/data.php [312]:
Till now we have not worked with these third party graphing tools and we may take a look at it in near future.
So I tried this with my UCS C210 M2. My CIMC Firmware is 1.4(3k). Is THAT the software that is referred to?
Autodiscover failed. The problem I get is best seen running cisco_ucs_nagios with --debug and is:
ARRZAPLZUC02 <==== XML PARSING ERROR: Element 'configFindDnsByClassId': No matching global declaration available for the validation root.
Error is of Type : SyntaxError Message >> syntax error: line 1, column 0
Error while trying to run the UCS Nagios monitoring service.
Do I need to upgrade the firmware for this to work, or is it something else?
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: