HP/Compaq ILO and check_http

Subhendu Ghosh sghosh at sghosh.org
Tue Jun 10 16:42:05 CEST 2003


Problem 1:
Your plugin (check_http) does not support SSL connections.  You need to 
make sure OpenSSL is locally installed and recompile the plugins to get 
"https" support.

Problem 2:
iLO (HP/Compaq's server management card) does seems to "prefer" IE5.5 and 
doesn't like the "check_http" user agent tag.

Problem 3:
iLO given proper url paths doesn't seem to stop streaming data.


Solutions to try:

check_http -H host -u "" -e "405"

This will tell you that iLO is up, but the method used to try to connect 
to it is not supported.


Other solutions:

1. Look at the contents of the file retrieved by wget 
   (wrapper -> wget -> parse)

2. modify check_http as proposed by Karl 
 2a. max bytes to read
 2b. configureable user-agent string


-sg



On Tue, 10 Jun 2003, Jens Kruse wrote:

> Hi Karl, hi *,
> 
> Karl DeBisschop wrote:
> > Does a broswer read the steam correctly, or do you have to press the
> > 'stop; button to stop loading the page?
> 
> Different browsers read the stream well (either 80 or 443), even links etc.
> 
> > Can you send us the last few lines of an output page?
> 
> monitor2-lx:/usr/local/nagios/libexec # telnet 10.35.178.154 80
> Trying 10.35.178.154...
> Connected to 10.35.178.154.
> Escape character is '^]'.
> GET
> HTTP/1.1 405 Method Not Allowed
> Content-Type:text/html
> 
> <HTML><HEAD><TITLE>Remote Insight</TITLE></HEAD><BODY>
> <H1>Request Error</H1>
> HTTP/1.1 405 Method Not Allowed
> </BODY></HTML>
> Connection closed by foreign host.
> 
> The following will show you more info on requiring http://10.35.178.154:
> 
> http://www.kruse-kiel.de/nagios/ilo-prob1.png
> 
> The device tells you that you'll need https:
> 
> http://www.kruse-kiel.de/nagios/ilo-prob2.png
> 
> And maybe the following will give you some more clues (requiring IE 5.5):
> 
> http://www.kruse-kiel.de/nagios/ilo-prob3.png
> 
> Regards, Jens
> 
> 
> >>>what about: check_http -S -H 10.35.178.154 -u / -t 30 -v (please post the 
> >>>transaction)
> >>
> >>monitor2-lx:/usr/local/nagios/libexec # ./check_http -S -H 10.35.178.154 
> >>-u / -t 30 -v
> >>check_http: invalid option - SSL is not available
> >>
> >>???
> >>
> >>So I tried it without -S and pushed the time amount up to 90 Seconds ...
> >>
> >>monitor2-lx:/usr/local/nagios/libexec # ./check_http -H 10.35.178.154 -u 
> >>/ -t 90 -v
> >>Socket timeout after 90 seconds
> >>
> >>Just no answer ...

> >>
> >>
> >>>Can you increase the timeout if above fails?
> >>
> >>???
> >>
> >>Regards, Jens
> >>
> >>
> >>
> >>
> >>>On Fri, 6 Jun 2003, Jens Kruse wrote:
> >>>
> >>>
> >>>
> >>>>Hi -sg,
> >>>>
> >>>>Subhendu Ghosh wrote:
> >>>>
> >>>>
> >>>>
> >>>>>have you tried the timeout option (-t) 
> >>>>>It defaults to 10 seconds and then sends a SIGALARM to self.
> >>>>
> >>>>Yes, same behavior ...
> >>>>
> >>>>
> >>>>
> >>>>>port 80 transaction looks fine - can you run it under "time" and see how 
> >>>>>long it took?
> >>>>
> >>>>Appr. 2 sec., so the -t option didn't help too ...
> >>>>
> >>>>
> >>>>
> >>>>>port 443 should be ssl so a regular telnet will not work. Try wget or 
> >>>>>curl.
> >>>>
> >>>>All right, it works with wget:
> >>>>
> >>>>monitor2-lx:/usr/local/nagios/libexec # wget https://10.35.178.154/
> >>>>--15:10:47--  https://10.35.178.154/
> >>>>           => `index.html'
> >>>>Connecting to 10.35.178.154:443... connected!
> >>>>HTTP request sent, awaiting response... 200 Ok
> >>>>Length: unspecified [text/html]
> >>>>
> >>>>    0K .
> >>>>
> >>>>Does this give you a clue?
> >>>>
> >>>>Regards, Jens
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>>>But, to start, have you tried the --verbose option? What was the output?
> >>>>>>
> >>>>>>Yes I did:
> >>>>>>
> >>>>>>monitor1-lx:~ # /usr/local/nagios/libexec/check_http -H 10.35.178.154 -p 
> >>>>>>80 --verbose
> >>>>>>Socket timeout after 10 seconds
> >>>>>>
> >>>>>>That's the result I receive with or without the --verbose option ...
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Have you tried just running the seesion over telnet?
> >>>>>>
> >>>>>>Yes. It works with port 80:
> >>>>>>
> >>>>>>monitor1-lx:~ # telnet 10.35.178.154 80
> >>>>>>Trying 10.35.178.154...
> >>>>>>Connected to 10.35.178.154.
> >>>>>>Escape character is '^]'.
> >>>>>>GET
> >>>>>>HTTP/1.1 405 Method Not Allowed
> >>>>>>Content-Type:text/html
> >>>>>>
> >>>>>><HTML><HEAD><TITLE>Remote Insight</TITLE></HEAD><BODY>
> >>>>>><H1>Request Error</H1>
> >>>>>>HTTP/1.1 405 Method Not Allowed
> >>>>>></BODY></HTML>
> >>>>>>Connection closed by foreign host.
> >>>>>>
> >>>>>>
> >>>>>>But not with 443:
> >>>>>>
> >>>>>>monitor1-lx:~ # telnet 10.35.178.154 443
> >>>>>>Trying 10.35.178.154...
> >>>>>>Connected to 10.35.178.154.
> >>>>>>Escape character is '^]'.
> >>>>>>GET
> >>>>>>
> >>>>>>
> >>>>>>I also tried it with 'strace':
> >>>>>>
> >>>>>>monitor1-lx:~ # strace /usr/local/nagios/libexec/check_http -H 
> >>>>>>10.35.178.154 -p 80 --verbose
> >>>>>>
> >>>>>>The final output
> >>>>>>...
> >>>>>>connect(3, {sin_family=AF_INET, sin_port=htons(80), 
> >>>>>>sin_addr=inet_addr("10.35.178.154")}}, 16) = 0
> >>>>>>send(3, "GET / HTTP/1.0\r\nHost: 10.35.178."..., 91, 0) = 91
> >>>>>>recv(3, "HTTP/1.1 200 Ok", 1023, 0)     = 15
> >>>>>>recv(3, "\r\nContent-Type: text/html\r\n", 1023, 0) = 27
> >>>>>>recv(3, "Expires: Fri, 30 Oct 1998 14:19:"..., 1023, 0) = 38
> >>>>>>recv(3, "\r\nCache-Control: no-cache\r\nConne"..., 1023, 0) = 44
> >>>>>>recv(3, "\r\nTransfer-Encoding: chunked\r\n\r\n", 1023, 0) = 32
> >>>>>>recv(3, "514", 1023, 0)                 = 3
> >>>>>>recv(3, "\r\n<!DOCTYPE HTML PUBLIC \"-//W3C/"..., 1023, 0) = 536
> >>>>>>brk(0x8052000)                          = 0x8052000
> >>>>>>recv(3, " licensed to the U.S. Government"..., 1023, 0) = 1023
> >>>>>>brk(0x8053000)                          = 0x8053000
> >>>>>>recv(3, " server is not configured to use"..., 1023, 0) = 49
> >>>>>>brk(0x8054000)                          = 0x8054000
> >>>>>>recv(3, "ou will not be able \r\nto communi"..., 1023, 0) = 168
> >>>>>>recv(3, 0x804f440, 1023, 0)             = ? ERESTARTSYS (To be restarted)
> >>>>>>--- SIGALRM (Alarm clock) ---
> >>>>>>fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
> >>>>>>old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
> >>>>>>-1, 0) = 0x40016000
> >>>>>>write(1, "Socket timeout after 10 seconds\n", 32Socket timeout after 10 
> >>>>>>seconds
> >>>>>>) = 32
> >>>>>>munmap(0x40016000, 4096)                = 0
> >>>>>>_exit(2)                                = ?
> >>>>>>
> >>>>>>
> >>>>>>It stops until it receives a SIGALRM ... (from whome? - The embedded 
> >>>>>>webserver? - Thats the part I do not understand)
> >>>>>>
> >>>>>>
> >>>>>>In addition: We use iLO Firmware 1.26
> >>>>>>
> >>>>>>Can I provide you more information to find a solution for this?
> >>>>>>
> >>>>>>Regards,
> >>>>>>
> >>>>>>Jens
> >>>>>>
> >>>>>
> >>>
> > 
> 
> 
> 

-- 








-------------------------------------------------------
This SF.net email is sponsored by:  Etnus, makers of TotalView, The best
thread debugger on the planet. Designed with thread debugging features
you've never dreamed of, try TotalView 6 free at www.etnus.com.
_______________________________________________
Nagios-users mailing list
Nagios-users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nagios-users
::: Please include Nagios version, plugin version (-v) and OS when reporting any issue. 
::: Messages without supporting info will risk being sent to /dev/null





More information about the Users mailing list