Forum Discussion

robert_carney's avatar
robert_carney
Icon for Nimbostratus rankNimbostratus
May 20, 2016

Irule to force node down anytime anther is up

I'm trying to set a Irule for a VIP that has many members that are setup in pairs to mark 1 member down if its partner is up. trying something like

 

when LB_SELECTED { if { [LB::status node 1.2.3.4 ] eq "up "} { LB::down node 1.2.3.5 } } and anther irule for atched to the vip for every node in the pool

 

Any ideas n ot sure when LB-SELECTED is the best way

 

2 Replies

  • Hi,

     

    If you could treat it as member pool (ip + port), I think you could try priority group or a reverse monitor to standby peer (e.g. where member B is down when specific monitoring to alias A is up).

     

    So, if you really need to do this in an iRule, I think that events HTTP_REQUEST or CLIENT_ACCEPTED are more appropriated to do that since the event LB SELECTED occurs when the member has already been done.

     

    I think too is not needed to down server B even you will check if server A is UP and being direct to him. Was this answer useful?

     

    Respectfully

     

  • Simple hack assuming you have 2 members (ip-1 & ip-2) in the pool:

    when HTTP_REQUEST {
    
          if { [LB::status pool WEB_POOL member $ip-1 $port] eq "up" } {
          LB::down pool WEB_POOL member $ip-2 $port
          }
    }