Forum Discussion

Glenn_Ruffus_10's avatar
Glenn_Ruffus_10
Icon for Nimbostratus rankNimbostratus
May 02, 2006

When a pool fails, internally send traffic to a different pool.

I am migrating from a Cisco CSS environment to an LTM (on v9) environment. I need to write an iRule that will replace the Cisco "sorry server" functionality. I need the LTM to monitor the health of the application's pool and if the pool fails (because all servers defined within it have failed) internally send the traffic to another pool (that will have one node - the "sorry server" or "down for maintenance server"). I do not want this to be handled via a redirect to the browser.

 

 

I downloaded the following iRule but don't know if it is exactly what I am looking for. I don't want this iRule to kick in just because one of the nodes in the pool failed. I want the pool to handle reselecting a new node in that instance. I only want the iRule to kick in if the whole pool is down.

 

 

When LB_FAILED {

 

pool errorPool

 

}

 

 

If the above iRule is what I am looking for, is the above "errorPool" the name of the pool with the "sorry server" node defined in it? Do I need to specify the name of the pool that the application is using or is it enough that the iRule is attaced to the application's virtual server?

 

 

Thanks.

 

 

Glenn

5 Replies

  • You might want to make sure all members of the pool are down before utilizing the sorry server:

    
    when LB_FAILED {
      if { [active_members yourPool] == 0 } {
        pool errorPool
      }
    }
  • Deb_Allen_18's avatar
    Deb_Allen_18
    Historic F5 Account
    Fallback host actually issues an HTTP redirect, is all, and Glenn was looking for a redirect-free solution.

     

  • -Just want to say thanks to both Colin and Deb. I really appreciate you guys jumping in to help!

     

     

    Glenn

     

  • Arie's avatar
    Arie
    Icon for Altostratus rankAltostratus
    Instead of pointing to a "sorry server", is it possible to have the Big-IP feed some HTML code back to the client (browser) to display the "sorry message"? If so, what would be the iRule?