How toP addresses transfer when using VMware Fault Tolerance

fault-tolerancevmware-esx

I've been doing some thinking about VMware Fault Tolerance and I have a question about the networking side of things. I'll state how I think it works, and you can tell me where i'm wrong.

Lets say we have a virtual machine, running in FT mode. This VM is active on two physical hosts simultaneously, yet my switches and routers are directing packets from my desktops to only one of these VM instances on one physical machine. Is that correct?

So what happens if the "active" physical host dies? How do my desktops, switches, and routers know where to start sending their packets? How does the IP address of the VM on the "active" host transfer so quickly to the "backup" host? Do all my switches and routers need to update their MAC address tables?

It is this networking side of VMware FT that really confuses me. I just don't see how packets (lets for arguments sake say its a ICMP Ping) leave the desktop, to the switch, which decides which VMware physical host to send the packet to.

What if the two physical host machines are not plugged into the same switch? Because now we're involving routing and possibly large distances and delays.

Can anyone help me get my head round this? I've sort of grasped the idea of virtual switches, but this idea of a Virtual IP address appearing in two places on the same network confuses me greatly.

Best Answer

There's nothing to be confused about; both VM's vNICs have the same MAC/s but only the active VM's vNIC transmits packets, in the event of a failover the previously-standby-now-active VM's vNIC just sends out an ARP/InARP which tells the switches that the VM's IP/s and MAC/s are now associated with the secondary host's physical ports - it's the same prcoess used by vMotion - it's far simpler that you think. Oh and because the both the active and standby hosts have to have identical switches/VLANs there's no routing involved.

Related Topic