Keeping Your Cloud Online with VMware Fault Tolerance
Green House Data provides a 100% SLA – which means your cloud infrastructure is guaranteed to be online 24/7. But errors in application deployment, cyber attacks, configuration mishaps, heavy network traffic, and other issues can still cause your virtual machines to crash, if you are managing them yourself. One tool in the arsenal to fight cloud downtime is VMware Fault Tolerance.
Fault Tolerance (FT) increases availability of virtual machines by creating an identical copy of the production VM that is continuously updated and ready to replace the original VM in the event of downtime. VMware FT is part of vSphere High Availability and works with it to keep the backup VM in tandem.
FT is often used for applications that require constant availability, especially if they have continual or near-constant client connections, or for custom applications that require clustering.
How does Fault Tolerance work in vSphere?
FT is enabled for individual virtual machines manually. The second VM resides on a separate host in your cluster so it does not go down with the production VM in a downtime event. Because the VMs are running in lockstep, or parallel, on separate hosts, vMotion compatibility is required.
Each server continuously shares heartbeats, monitoring status of each other to ensure FT is maintained. The ultimate goal is no user interruptions and zero data loss. In addition, FT avoids a potential problem where two active, identical VMs run into storage and configuration problems when the original VM is restored by using atomic file locking to keep only one side of the failover running.
vCenter Server 4.x and 5.x support up to one vCPU per VM for FT, while vCenter Server 6 supports up to four vCPUs. Your cluster must meet certain requirements including:
- Enable host certificate checking
- Two or more hosts running the same version of FT, which you can see in the host Summary tab in vSphere
- ESX/i hosts access the same VM datastores and networks
- Configure FT logging and vMotion networking
- Create and enable VMware high Availability (HA) cluster
- FT compatible processors and licensing for FT on all hosts
- Enable Hardware Virtualization in the BIOS of each host
Your virtual machines also have specific requirements including:
- Detach all unsupported devices
- Use thick provisioning for all virtual RDM or virtual machine disk (VMDK) files
- Turn off all incompatible features, including Snapshots, Storage vMotion, linked clones, and VMware Consolidated Backup (VCB)
- Shared storage must be used, whether iSCSI, NFS, or NAS
The Difference Between High Availability and Fault Tolerance
HA is designed to prevent downtime due to the loss of the physical server, loss of a VM, or even loss of an application within a VM. With HA turned on, surviving servers detect downtime and the master node assigns failed VMs to other nodes. If the physical server does not go down, the VM is restarted on the original host.
Although FT works with HA, they do not achieve the same failover results. FT is part of HA, but not vice versa, and HA should therefore be configured first.
Both work to reduce downtime by transitioning VM workloads to a new host during failure of the original ESX/i host. High Availability is better suited to VMs for which 24/7 uptime is not essential. It allows the VM to fail fully before launching on another host. With Fault Tolerance, the failover is instantaneous, and the new VM also is copied to a new server, which in turn is kept in lockstep.
For mission-critical VMs, VMware Fault Tolerance can be a great way to minimize or eliminate downtime, as in the vast majority of cases, workloads are not interrupted at all. Read some best practices for Fault Tolerance from the VMware vSphere 6.0 Documentation Center before you configure your environment to ensure your FT works properly.