02-26-2009 08:35 AM
Team,
Below is a snapshot of the HTTP Probe that I currently have confgured:
probe http http-probe
interval 10
passdetect interval 3
request method head
expect status 200 200
My question is, what if one of my reservers has a bad URL but the subsystem in IIS is responding with a 200 status? How do I protect myself from this situation and have the ACE module take this rserver out of rotation?
Thank you,
John...
02-26-2009 10:54 AM
With your defined probe, you are simply looking for the availability of root url.
Instead you should probe an application specific URL.This way ACE will only declare a server active if that particular URL gives 200 ok to ACE.
Syed Iftekhar Ahmed
02-26-2009 11:02 AM
Could you please provide an example? Does this mean that I would have to create a probe for each of my URL's?
John...
02-26-2009 10:09 PM
For example instead of root url you can probe a specific url pointing to the app like
probe http http-probe
interval 10
passdetect interval 3
request method head
request method get url /testpage.html
expect status 200 200
Where tespage.html is the app specific page.
There could also be situations where requirement would be to keep track of the backend server along with the front end/Web server and mark the Web server down if a backend server (like application /database server is down).
This can be achieved by if APP can be tweaked by developers such that it make calls to backend servers (like DB server) and populate a page with some value from the database. In http probe you can look for that value and if that value doesnt exist then you can mark the server down.
for e.g in following example if ACE will mark the server down if it gets 200 ok but doesnt get "DBISUP" in response
probe http http-probe
interval 10
passdetect interval 3
request method head
request method get url /checkdbpage.html
expect status 200 200
expect regex DBISUP
HTH
Syed Iftekhar Ahmed
02-26-2009 10:27 PM
Hi,
To check the URL plz do the following:
probe http HTTP-Probe
port 8000
interval 2
faildetect 2
passdetect interval 15
request method head url /OA_HTML/AppsLocalLogin.jsp
expect status 200 210
expect status 302 302
open 1
Plz rate if it helps
02-27-2009 08:21 AM
What does these commands do?
expect status 302 302
open 1
02-27-2009 09:15 AM
Status code 302 (this info you will get from the application guy) or if you do " sh probe detail"--it will give the status code whih needs to be enabled...
02-27-2009 10:57 AM
"expect status x y" command in an HTTP probe tells ACE to consider the the probe result a success if the http response from server carries any response code between x & Y.
For a successfull page access you get response code 200 from server. You get a 302 from server when it is configured to redirect the request to a new location.
You must have seen 404 many times.This response code tell you that the URI you tried to accessed doesnt exist on the server.
For a complete list of response code
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Syed Iftekhar Ahmed
02-27-2009 11:13 AM
Team,
Thank you for all your very good responses. I just received the following question from one of my Web Engineers:
I was more concerned with "in-flight" requests that happen before a server is marked down and start to make their way back to the client.
I'm not sure about the BigIP, however, the Netscaler has a feature (since these boxes are basically reverse proxies) where you can inspect outbound traffic from the real to the client and when it detects a header that has a predefined error code (400, 500 etc) it will rewrite the URL and send it to the other real server that is up.
I'm not sure what he is asking me, any assistance will be greatly appreciated.
John...
02-27-2009 11:20 AM
What is the question!!
02-27-2009 01:23 PM
I attached a visio of what we are being asked to do. Let me attempt to describe the scenario:
1) Client sends an HTTP request my URL http://www.test.com
2) The ACE module receives that request and sends it to RSERVER-1
3) RSERVER-1 is down but due to the HTTP probe timer, the server is not yet out of rotation.
4) The ACE module intercepts the packet that was returned from RSERVER-1 sees a return code of 404 or 500+ rewrites the packet and sends it to RSERVER-2
Is the above scenario possible?
John...
02-27-2009 03:35 PM
Its do-able using "Inband HTTP return code checking". With this in place you can configure ACE to mark a server down if ACE notices X number of 404s (or any response code you want to check) from a particular server.
For more details visit
Syed Iftekhar Ahmed
03-02-2009 08:09 AM
Syed,
Thank you, this was really helpful.
Is anyone in this community using retcode checking in their server farms?
John...
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: