Forum Discussion

sgamer's avatar
sgamer
Icon for Nimbostratus rankNimbostratus
Mar 06, 2018

Load Balancing IBM VIPA

We are trying to load balance IBM VIPA hosts which are essentially already load balanced. Our intent is to locally load balance two or more VIPA hosts to create more redundancy and capacity and use GTM for global redundancy.

 

My understanding of the VIPA configuration is that the VIPA address is a virtual IP address which is bound to one of two physical interfaces addresses. When it's bound to "A" interface and that fails, it binds itself to the "B" interface. In testing it appears to assume the MAC address of the physical interface in which it is bound and does not have it's own MAC. So when there is a failure, (I assume) it sends a gratuitous ARP and, after a 2-3 second blip, the client sessions are reconnected where they left off. This works as described with a router between the client and hosts.

 

With a VIPA host behind an LTM, the same VIPA fail-over scenario causes the client connections to be reset and then they must create new connections which is not desirable for obvious reasons.

 

There may be a simple answer to make this work with F5 but so far I haven't found it. So I'm wondering if anyone has done this before. If so, and you had the same issue, how did you resolve it?

 

1 Reply

  • JG's avatar
    JG
    Icon for Cumulonimbus rankCumulonimbus

    What you can do is to delay the reset and try a few times more. E.g.:

    when CLIENT_ACCEPTED {
        set retries 0
    }
    
    when LB_FAILED {
        if { $retries < 4 } {
            incr retries
            LB::down
            after 3
            LB::reselect pool my_pool member 10.10.10.10
        }
    }
    

    assuming your pool contains one address only.

    [Edit: Changed event]