Vyatta HA Clustering with MAC failover

In the land of Cisco HA, the MAC address is actually failed over during a transition.  This makes for a fairly clean switch between devices.  Vyatta however, doesn’t work that way.  It simply moves the IP address and uses gratuitous ARP to get the switch(es) to recognize the change.

There is a way to have Vyatta mimic the MAC failover mechanism through the use of Pseudo Ethernet devices.  These make use of macvlans to allow you to add multiple MAC addresses to a single interface.  The basics are, you create a peth on both devices with the same MAC address but no assigned IP address and create a cluster service which fails over the IP address.  The configuration is actually very simple.

In this example we create peth0 which is tied to eth0.  The shared MAC address is 00:1f:aa:bb:cc:dd and the IP address we are going to failover is 192.168.1.1

set interfaces pseudo-ethernet peth0 link eth0
set interfaces pseudo-ethernet peth0 mac 00:1f:aa:bb:cc:dd
set cluster group test service 192.168.1.1/24/peth0/192.168.1.254

The end result is the active node will have an address on the peth and the standby node will not have any addresses.  No address effectively make the secondary node inactive.

https://www.nnbfn.net/2011/06/vyatta-ha-clustering-with-mac-failover/

This work, unless otherwise expressly stated, is licensed under a Creative Commons Attribution 3.0 Unported License.

This entry was posted in Vyatta and tagged , , . Bookmark the permalink.

4 Responses to Vyatta HA Clustering with MAC failover

  1. SuperCthulhu says:

    Strong and short. This is how every technical post should look like IMHO.
    Thanks mrjester!

  2. vonrabbe says:

    Good!

  3. Cartman says:

    mrjester, you’ve done an excellent job.
    I’ll use this small trick in my current datacenter project.
    BTW I’ve placed “Continue reading” in the center of your post,
    hope you don’t mind.

    Thanks!

  4. nice one, and good to know

Add Comment Register

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>