Forum Discussion

Julian_46783's avatar
Julian_46783
Icon for Nimbostratus rankNimbostratus
Jul 06, 2009

Can I drain/bleed a node through an Irule?

I'm looking for a way to allow only persistent or active connections to any given node.

 

 

LB::down node -> is the closest thing I can find, but it goes all the way and only allows active connections node.

 

 

I was wondering if there's a way to drain/bleed through a similar method

 

 

Thanks jpereira
  • hoolio's avatar
    hoolio
    Icon for Cirrostratus rankCirrostratus
    Hi jpereira,

     

     

    What are you trying to accomplish and for what scenario? Is it for HTTP or some other protocol?

     

     

    Aaron
  • A set of Application servers hold sessions and we want to start draining/bleeding them on a given event, say a response of 404?

     

    To keep it simple, for instance:

     

     

    when HTTP_RESPONSE {

     

    if { [HTTP::status] eq "404" } {

     

    [DRAIN MEMBER xxx.xxx.xxx.xx 80]

     

    }

     

    }

     

     

    Just want to know if it's possible

     

     

    Thanks

     

    Jpereira

     

     

  • hoolio's avatar
    hoolio
    Icon for Cirrostratus rankCirrostratus
    What if you use LB::down with no arguments? I believe that this will set the status of just the pool member to down--not the node--and might have the effect you're looking for. If that doesn't work, you might try explicitly setting the pool member down.

     

     

    I think you can get the selected pool member info using LB::server (Click here) in HTTP_RESPONSE. If you get a runtime TCL error from trying this, you could save it in the LB_SELECTED event and then reference it in HTTP_RESPONSE. You might first try hardcoding the pool info with LB::down to see if the effect is what you're looking for.

     

     

    Aaron