district09 / check_netapp_ontap

:four_leaf_clover: Check NetApp Ontap :four_leaf_clover:
https://outsideit.net/monitoring-netapp-ontap/
GNU General Public License v3.0
40 stars 27 forks source link

Zapi::invoke fails #13

Closed Tjololo12 closed 7 years ago

Tjololo12 commented 8 years ago

When attempting to run a check:

./check_netapp_ontap.pl -H x.x.x.x -u username -p pass -o cluster_health

I am getting the following error:

Failed test query: in Zapi::invoke, cannot connect to socket

Through some debug statements, I've found the message is originating on line 655 of NaServer.pm, looks like it's a result of this if statement:

if (!$sock->connect($that_sockaddr)) {

I'm trying to figure out what could be causing this, but I'm not sure. The server is running NetApp 8.3, C-Mode (not 7-mode as the other issue in github had). I'm sure this is a configuration issue, but I'm not very strong with perl or nagios, so I'm having trouble figuring it out.

packetwar commented 7 years ago

Around line 1649 in check_netapp_ontap.pl, try changing:

$nahStorage->set_transport_type("HTTP"); to $nahStorage->set_transport_type("HTTPS");

Using cDOT 9.1, it seems HTTP has been deprecated in favor of HTTPS for default, out-of-the-box configurations.

Copis commented 7 years ago

Hi @packetwar

I tested it on 7-Mode systems, Ontap 8 and lastest Ontap 9 and seems to work fine.

f-vt commented 7 years ago

Yes if you want you can also specify port :

# Create the NetApp API handle and test that the connection works.
my $nahStorage = NaServer->new($strHost, 1, 15); $nahStorage->set_style("LOGIN"); $nahStorage->set_admin_user($strUser, $strPassword); $nahStorage->set_transport_type("HTTPS"); $nahStorage->set_port(443); my $nahResponse = $nahStorage->invoke("system-get-version"); validate_ontapi_response($nahResponse, "Failed test query: ");

willemdh commented 7 years ago

@Tjololo12 Closing this, let us know if you are still experiencing issues with the latest release