- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I had the same problem ( CHECK_ESX CRITICAL - Server version unavailable ), and I spent a lot of time searching. Most of the suggestions were to set the environment variable to tell the IO::Socket::SSL to not check the self-signed certificate (adding the following line near the top of the check_esx script):
$ENV{SSL_verify_mode} = 0x00;
This didn't work for me, and after much debugging I figured out that the script isn't using IO::Socket::SSL -- it's using LWP. The proper change to check_esx when using LWP is:
$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
I put it after the line use File::Basename; so it looks like:
use Nagios::Plugin;
use File::Basename;
$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
my $perl_module_instructions="
Download the latest version of Perl Toolkit from VMware support page.
After making this change, the check_esx plugin again works perfectly.
Additionally, please note that this worked fine for me previously - it only broke after my last yum update on my CentOS server hosting Nagios.