11-Jun-2020 11:35
Hi All ,
When the service on the member node 10.179.16.19 is DOWN, the F5 monitor is not marking the pool member status as offline .
When server team changes the receive string code to 503 from 200 from the server end , pool member is not marked as DOWN ,
We then tested it and decided to change the monitor string to "200 OK" from 200 on the F5 ,it than worked correctly .
Meaning when server team now changed the string to 503 , monitor on the F5 marked pool member down .
So what is the issue here ? What is the difference with string 200 and 200 OK ?
ltm pool gw-internet-test_POOL {
description gw-internet-test
members {
10.179.16.19%6:https {
address 10.179.16.19%6
session user-disabled --------------> Manually disabled
state user-down
}
10.179.18.12%6:https {
address 10.179.18.12%6
session monitor-enabled
state up
}
}
monitor gw-internet-test_Monitor
partition CORP
ltm monitor https gw-internet-test_Monitor {
adaptive disabled
cipherlist DEFAULT:+SHA:+3DES:+kEDH
compatibility enabled
defaults-from /Common/https
destination *:*
interval 5
ip-dscp 0
partition CACF
recv 200 >>>>>>>>>>>>>>>>>>>>>>>> When we changed the string to "200 OK" , it worked
recv-disable none
send "GET /test/admin/login.jsp HTTP/1.1\r\nHost:gw-internet-test.corp.com"
time-until-up 0
timeout 16
}
Solved! Go to Solution.
16-Jun-2020
10:16
- last edited on
21-Nov-2022
16:22
by
JimmyPackets
Hello,
Probably the string "200" appears on head or body, while the string "200 OK" appears only on http response code status in headers.
e.g.
This output has "200 OK" on header and "200" on body.
# curl -kv http://172.30.0.1/default.asp
* Trying 172.30.0.1...
* Connected to 172.30.0.1 (172.30.0.1) port 80 (#0)
> GET /default.asp HTTP/1.1
> Host: 172.30.0.1
> User-Agent: curl/7.47.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Cache-Control: private
< Content-Type: text/html
< Server: Microsoft-IIS/10.0
< Set-Cookie: ASPSESSIONIDCADABDAD=OPKBINHAKLGGIGHNPBCBEDGP; path=/
< Date: Tue, 16 Jun 2020 17:04:22 GMT
< Content-Length: 118
<
<html>
<head>
</head>
<body>
200 is a number that matches 200
2002 is a number that matches 200 as well
</body>
</html>
* Connection #0 to host 172.30.0.1 left intact
This other response header example, the HTTP code is 503 while content-length is 200 that matches your recv param.
HTTP/1.1 503 Service Unavailable
Cache-Control: private
Content-Type: text/html
Content-Length: 200
Regards.
12-Jun-2020 03:10
Can anyone help here please ....
12-Jun-2020
07:30
- last edited on
04-Jun-2023
21:25
by
JimmyPackets
Hello,
That status means that you forced offline a member.
If you need to grab availability from members, you can run 'show" instead of "list" command:
Also, you can have this output in field format as well:
show ltm pool gw-internet-test_POOL members field-fmt
Look for "status.availability-state" field for each member and you will get member's availability.
For a monitor status result, there is a little difference when you disable or force offline a member, where this is "down" when monitor failed and "user-down" when forced offline.
I hope it helps
cjunior
16-Jun-2020 09:57
Hi Cjunior ,
Thanks for your response .
Sorry I have corrected my question ,
Issue reported : When the service on the member node 10.179.16.19 is DOWN, the F5 monitor is not marking the pool member status as offline .
When server team changes the receive string code to 503 from 200 from the server end , pool member is not marked as DOWN ,
Action taken : We decided to change the monitor string to "200 OK" from 200 on the F5 ,it than worked correctly .
Meaning when server team now changed the string to 503 , monitor on the F5 marked pool member down .
So what is the issue here ? What is the difference with string 200 and "200 OK"
16-Jun-2020
10:16
- last edited on
21-Nov-2022
16:22
by
JimmyPackets
Hello,
Probably the string "200" appears on head or body, while the string "200 OK" appears only on http response code status in headers.
e.g.
This output has "200 OK" on header and "200" on body.
# curl -kv http://172.30.0.1/default.asp
* Trying 172.30.0.1...
* Connected to 172.30.0.1 (172.30.0.1) port 80 (#0)
> GET /default.asp HTTP/1.1
> Host: 172.30.0.1
> User-Agent: curl/7.47.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Cache-Control: private
< Content-Type: text/html
< Server: Microsoft-IIS/10.0
< Set-Cookie: ASPSESSIONIDCADABDAD=OPKBINHAKLGGIGHNPBCBEDGP; path=/
< Date: Tue, 16 Jun 2020 17:04:22 GMT
< Content-Length: 118
<
<html>
<head>
</head>
<body>
200 is a number that matches 200
2002 is a number that matches 200 as well
</body>
</html>
* Connection #0 to host 172.30.0.1 left intact
This other response header example, the HTTP code is 503 while content-length is 200 that matches your recv param.
HTTP/1.1 503 Service Unavailable
Cache-Control: private
Content-Type: text/html
Content-Length: 200
Regards.