Forum Discussion
Http and https monitors not working
I have configured below monitors and used them in the pools mentioned below, but the pool does not come up, but when i configure a gateway_icmp monitor the pools come up.
Currently the monitors work from the ACE load balancers. The config for monitors on ACE is as below.
probe https pre-idp interval 10 faildetect 2 passdetect interval 45 passdetect count 2 request method get url /FIM/Info/InfoService expect status 200 200
probe http http80 interval 12 passdetect interval 45 request method get url /ldprobe.html expect status 200 200
=============================================================================================
MONITORS
ltm monitor http http_http80 { defaults-from /Common/http description http_http80 destination *:http interval 12 ip-dscp 0 partition ilm-int-acc recv 200 send "GET /ldprobe.html" time-until-up 0 timeout 10 }
ltm monitor https https_pre-idp { cipherlist DEFAULT:+SHA:+3DES:+kEDH compatibility enabled defaults-from /Common/https description https_pre-idp destination *:https interval 10 ip-dscp 0 partition ilm-int-acc recv 200 send "GET /FIM/Info/InfoService" time-until-up 0 timeout 10 }
=============================================================================================
=============================================================================================
POOLS
ltm pool pre-holvi { description pre-holvi load-balancing-mode predictive-node members { IPREPRX3_10.129.50.135:any { address 10.129.50.135 session monitor-enabled state down } IPREPRX4_10.129.50.147:any { address 10.129.50.147 session monitor-enabled state down } } monitor http_http80 partition ilm-int-acc }
ltm pool pre-idp { description pre-idp load-balancing-mode predictive-node members { IPREPRX3_10.129.50.140:any { address 10.129.50.140 session monitor-enabled state down } IPREPRX4_10.129.50.143:any { address 10.129.50.143 session monitor-enabled state down } } monitor https_pre-idp partition ilm-int-acc }
ltm pool pre-sp { description pre-sp load-balancing-mode predictive-node members { IPREPRX3_10.129.50.139:any { address 10.129.50.139 session monitor-enabled state down } IPREPRX4_10.129.50.142:any { address 10.129.50.142 session monitor-enabled state down } } monitor https_pre-idp partition ilm-int-acc }
=============================================================================================
25 Replies
- IheartF5_45022
Nacreous
I don't suppose there's any network or host-based (like iptables) firewall inbetween the LTM and the pool members?
Try running tcpdump to see what's going on;-
tcpdump -i 0.0:nnn -s 0 -vv -XXX host 10.129.50.142 and port 80Paste the results here if you like.
- yogesh_gaikwad_
Nimbostratus
Hi - yogesh_gaikwad_
Nimbostratus
I am getting below output when i run the command tcpdump -i 0.0:nnn -s 0 -vv -XXX host 10.129.50.142 and port 443 - yogesh_gaikwad_
Nimbostratus
i am not able to paste the output
- IheartF5_45022
Nacreous
OK try less info, and also would help if I gave you correct IP :-)
tcpdump -i 0.0 -s 70 -X host 10.129.50.135 and port 80
You only need to do 12s (max) at a time to see a complete monitor. Try to stop it after 12s and paste the output.
- yogesh_gaikwad_
Nimbostratus
I am unable to paste the output here, also this site is not giving an option to upload an image
- Mark_van_D
Cirrostratus
What if you tried adding in the \r\n\r\n into the monitor?
ltm monitor http http_http80 { defaults-from /Common/http description http_http80 destination *:http interval 12 ip-dscp 0 partition ilm-int-acc recv 200 send "GET /ldprobe.html\r\n\r\n" time-until-up 0 timeout 10 }
ltm monitor https https_pre-idp { cipherlist DEFAULT:+SHA:+3DES:+kEDH compatibility enabled defaults-from /Common/https description https_pre-idp destination *:https interval 10 ip-dscp 0 partition ilm-int-acc recv 200 send "GET /FIM/Info/InfoService\r\n\r\n" time-until-up 0 timeout 10 }
- IheartF5_45022
Nacreous
Don't append HTTP/1.1 BTW. Do keep Marks suggestion of \r\n\r\n at the end.
Then let's go back to basics. Try this from the command line and paste output;
curl -0 -v http://10.129.50.135/ldprobe.html- yogesh_gaikwad_
Nimbostratus
* About to connect() to 10.129.50.135 port 80 (0) * Trying 10.129.50.135... connected * Connected to 10.129.50.135 (10.129.50.135) port 80 (0) > GET /ldprobe.html HTTP/1.0 > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 OpenSSL/1.0.1j zlib/1.2.3 libidn/0.6.5 > Host: 10.129.50.135 > Accept: */* > < HTTP/1.1 200 OK < connection: close < content-length: 0 < content-type: text/html < date: Fri, 09 Oct 2015 10:30:28 GMT < last-modified: Mon, 23 Sep 2013 09:40:19 GMT < p3p: CP="NON CUR OTPi OUR NOR UNI" < server: WebSEAL/6.1.1.13 (Build 141126) < Set-Cookie: PD-H-SESSION-ID=4_0_QYgqmmNGLUB6bgCZv+uZMM+WfHoX+7RKmMxz06g4NiyLGiU3; Path=/ < * Closing connection 0
- Mark_van_D
Cirrostratus
Hi Yogesh,
Did you have any luck with trying to post the tcpdump results? You should be able to add it as a picture if you post in answers rather than comments.
Mark
- yogesh_gaikwad_
Nimbostratus
- yogesh_gaikwad_
Nimbostratus
Finally I managed to insert the image :)
- IheartF5_45022
Nacreous
I'm sorry Yogesh - we should have taken more traffic - 70b wasn't enough. Get a binary cap file and email me the hc.cap;-
tcpdump -i 0.0:nnn -s 0 -w /var/tmp/hc.cap host 10.129.50.135 and port 80and/or read this article https://devcentral.f5.com/wiki/AdvDesignConfig.TroubleshootingLtmMonitors.ashx and try enabling debug on bigd.
- yogesh_gaikwad_
Nimbostratus
I have got the hc.cap file, how do i email it to you? - yogesh_gaikwad_
Nimbostratus
Also, it has captured 77 packets, is that enough ? - IheartF5_45022
Nacreous
Should be fine - look on my profile for email address, or else check your messages - I messaged you.
- IheartF5_45022
Nacreous
So the server isn't responding to the GET - it ACKs and then sends a FIN, however the curl works, as we saw above. Can you try to make your monitor more like the curl ie;-
Send String "GET /ldprobe.html HTTP/1.0\r\nHost: 10.129.50.135\r\n\r\n"
Does that make a difference?
- yogesh_gaikwad_
Nimbostratus
Hey Joanna that worked!! :) Also, i tried to edit the send string to "GET /ldprobe.html HTTP/1.0\r\n\r\n" and this worked too. Thank you so much
- IheartF5_45022
Nacreous
No worries. I feel ashamed I didn't get it earlier :-) - it's just that version numbers are not always mandatory (although it usually is if server only supports 1.1).
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com