This content is part of the Essential Guide: Avoiding downtime with VMware Fault Tolerance and High Availability

How does VMware Fault Tolerance work?

When a business needs a workload to run uninterrupted, the Fault Tolerance feature in vSphere ensures VMs will continue to run even when a server fails.

VMware Fault Tolerance creates a duplicate of a selected workload that runs on a different host server within a...

cluster. This establishes two working versions of the same workload. Activity logs track inputs, storage activity and other actions, which are shared with the duplicate VM; logging keeps the original and duplicate VMs synchronized.

Normally, when a VM fails, it has to be restarted or restored from a snapshot, possibly resulting in data loss. With fault-tolerant VMs, a problem detected with the original VM would cause the application to fail over automatically to the duplicate VM, which would assume control with no loss of data or disruption to the user. Also, the fault-tolerance feature will create a duplicate VM on another available host server to maintain availability.

It's important to note that host-server selection is fixed within a server cluster. Server selection is intended to be flexible: Once a duplicate VM takes over, it becomes the new original VM and the newly created duplicate becomes the backup VM. If the original server becomes available later, it returns to the server pool and can be used at another time to host duplicate VMs as needed. The arrangement will not revert to some pre-established server selections. Still, it is possible to migrate original and duplicate VMs to preferred servers using tools like vMotion or Distributed Resource Scheduler.

A similar behavior occurs when the duplicate VM's server encounters a problem: A new duplicate VM is established on another available server within the cluster. This poses no disruption for the original (unaffected) VM.

Dig Deeper on VMware High Availability and Fault Tolerance