Forum Discussion

farache_28983's avatar
farache_28983
Icon for Nimbostratus rankNimbostratus
Jul 17, 2013

Question and assistance with monitor

Hi Guys,

 

 

I am ttrying to configure a monitor for a few webservers that will do the following:

 

1. Use the below URL for health check

 

 

=1 \r\nHost: \r\nConnection: Close\r\n

 

Receive String is:

 

HTTP/1\.(0|1) (2|3)

 

Receive Disable String is

 

HTTP/1.\(0|1) (4|5)

 

This does not work. So the question is , does the port number has to do anything with it? can I use the URI or should i use the full URL? this URL is in each server, So i technically just need to change the host portion.

 

 

--->For (2) and (3), I've created an Irule for checking the response for each request as follows

 

when HTTP_RESPONSE {

 

when HTTP_RESPONSE {

 

if { ([HTTP::status] == 500 ) and ([active_members [LB::server pool]] >= 5 )} {

 

LB::down

 

}

 

}

 

 

Question with this type of passive monitoring is, when the pool member is marked down when an 500 error shows, what happens with it when the error goes away and the server is healthy? How can it be enable again? I think that i can obtain the same monitoring with only this passive monitoring, but not sure how to mark the pool member as up when healthy.

 

 

 

hope tihs makes sense

 

1 Reply

  • For (1) , I've created a monitor that will do a GET to the uri like this

     

    GET /hotelrates/getSampleExpressDeals.do?noOfDeals=1 \r\nHost: \r\nConnection: Close\r\n

     

     

    Receive String is:

     

    HTTP/1\.(0|1) (2|3)

     

     

    Receive Disable String is

     

    HTTP/1.\(0|1) (4|5)

     

     

    This does not work. So the question is , does the port number has to do anything with it? can I use the URI or should i use the full URL? this URL is in each server, So i technically just need to change the host portion.have you run tcpdump on bigip to see what is going on? Aaron has written excellent monitor troubleshooting article as below.

     

     

    Troubleshooting Ltm Monitors by Aaron

     

    https://devcentral.f5.com/wiki/advdesignconfig.TroubleshootingLtmMonitors.ashx

     

     

    to change host name for each server in pool, i understand you have to use external monitor.

     

     

    HTTP Monitor cURL GET With Host Specific Headers

     

    https://devcentral.f5.com/wiki/advdesignconfig.httpmonitor_curl_getwithhostspecificheaders.ashx

     

     

    when the pool member is marked down when an 500 error shows, what happens with it when the error goes away and the server is healthy? How can it be enable again?Note: Calling LB::down in an iRule triggers an immediate monitor probe regardless of the monitor interval settings.

     

     

    LB::down

     

    https://devcentral.f5.com/wiki/iRules.lb__down.ashx

     

     

    hope this helps.