- How to use VMware vSAN ReadyNode Configurator - Fri, Dec 17 2021
- VMware Tanzu Kubernetes Toolkit version 1.3 new features - Fri, Dec 10 2021
- Disaster recovery strategies for vCenter Server appliance VM - Fri, Nov 26 2021
vSphere FT protects the VM all the time, and when there is an underlying host problem, the "shadow" VM (the secondary VM created when you activate FT) replaces the failed primary VM instantly without the users noticing.
However, you can't simply activate FT for every data center VM because there are some constraints, some rules to respect, and finally, some licensing limitations.
How does FT work, and what's the history? ^
Over the years, vSphere FT has evolved. It works by continuously replicating an entire running VM from one physical server to another. The protected VM is the primary VM. Activating FT creates a duplicate VM called a secondary VM, which runs on another host.
FT continuously replicates the primary VM to the secondary VM so the secondary VM can take over at any point, thereby providing fault-tolerant protection. In case of a hardware problem on the host that runs the primary VM, it will start a new secondary VM and reestablish FT redundancy automatically.
Note: This also works the other way around. In case there is a hardware problem on a machine that hosts a secondary VM, the primary VM detects it and re-creates a new secondary VM on another host within the vSphere cluster.
Use cases for FT ^
- An application that needs to be bulletproof: Its workload cannot have five minutes of downtime. It's a business-critical enterprise application. Every minute counts.
- A custom application that cannot do clustering any other way.
- Temporary protection: You might have a monthly report running one day per month every month, and you want to be absolutely sure your VM won't be down because of a hardware problem. You activate FT for a day for that particular VM.
- Clustering is too complicated to maintain and configure: There might be cases where your application can be clustered, but it's really problematic and difficult to install and maintain.
Requirements, limits, and licensing ^
- The physical CPUs need to support vMotion and hardware memory management unit (MMU) virtualization (Intel EPT or AMD RVI). They have to be Intel Sandy Bridge or later, and for AMD, they have to be AMD Bulldozer or later.
- You'll need 10 Gb networking for FT logging; check whether the network is a low-latency one. VMware recommends dedicated networking.
- The number of VMs protected by FT per cluster: by default, this is four (but configurable with the host advanced configuration parameter: maxftvmsperhost).
- The number of virtual CPUs (vCPUs) configured within VMs protected by FT: by default, this is eight (but configurable with the host advanced configuration parameter: maxftvcpusperhost).
The number of vCPUs supported by a single fault-tolerant VM is limited by the level of licensing you have purchased for vSphere.
FT support is as follows:
- vSphere Standard and Enterprise allow up to two vCPUs
- vSphere Enterprise Plus allows up to eight vCPUs
The VM needs to meet some requirements as well.
- There must be no unsupported devices attached to the VM.
- You must store the VM on shared storage, but not the VM disks (VMDKs).
- You can't have CD-ROMs, floppies, network interface controller (NIC) passthroughs, hotplug devices, serial or parallel ports, video cards with 3D-enabled features, or 2 TB+ VMDKs.
Best practices for VMware FT ^
You should follow some best practices when thinking of using FT within your virtual infrastructure.
- You should use approximately the same CPU frequencies on the hosts where the primary and secondary VMs will run. This is because the secondary VM might restart more frequently; configuring the host enforces low-frequency mode to save power. (Check the BIOS setup and configure your host not to use the economy energy mode for the CPU).
- You should configure your BIOS across all hosts to apply the same instruction set (enabled or disabled). You should also check your motherboard documentation on how to enable or disable instruction sets on your systems.
And you should also use:
- Processors from the same compatible processor group
- The same ESXi version
- Common access to data stores the VMs use
- The same VM network configuration
Where do you activate VMware Fault Tolerance? ^
First, on each host, create a new VMkernel network adapter and activate Fault Tolerance logging.
Start the vSphere Web Client and go to Host > Manage > Networking. Then go to VMkernel adapters > Add host networking; select the VMkernel network adapter and select an existing standard switch or a new vSwitch. On the Port properties, enable Fault Tolerance.
In addition, you must enable the vMotion VMkernel interface. Also, make sure the host has a license covering Fault Tolerance. Then, at the VM level, you can configure VMware FT.
It's fairly simple. Once you've met the requirements, simply right-click a VM and go to Fault Tolerance > Turn on Fault Tolerance.
Final words ^
VMware FT is the ultimate protection for your VMs and your workloads. It does not need any "in-guest" configuration, and you don't need to install any software inside the VM or do any special configuration inside of your VM(s).
Subscribe to 4sysops newsletter!
However, you must follow the host, VM, and cluster requirements to activate FT with success. Once it's active, you don't really have to pay particular attention as long as your cluster and your hosts within your cluster have identical or homogenous configurations.