vSphere Fault Tolerance通过创建和维护与主虚拟机相同,并且可在发生故障切换时随时替换主虚拟机的辅助虚拟机,来确保虚拟机的连续可用性,其实就是一为某一个虚拟机创建一个完全相同的副本。可以为虚拟机启用vSphere Fault Tolerance。比获得比vSphere HA所提供的级别更高的可用性和数据保护,从而确保业务连续性。Fault Tolerance时基于ESXi主机平台构建的(使用VMware vLockstep技术),它通过在单独主机上一虚拟锁步方式运行相同的虚拟机来提供连续可用性。
使用FT技术,允许虚拟机在无须中断的情况下从服务器故障恢复,实现零停机时间和零数据丢失。基于vLockstep技术,该技术时主虚拟机和辅助虚拟机保持虚拟同步运行。VMware FT独立于应用程序和操作系统,允许以更低的成本和复杂性保护更多应用程序,并且可以和其他的vSphere功能集成。
(一)vSphere中的FT
vSphere HA通过在主机出现故障时重新启动虚拟机来为虚拟机提供基本级别的保护。vSphere FT可提供更高级别的可用性,允许用户对任何虚拟机运行保护以防止主机发生故障时丢失数据、事务或连接。FT通过确保主虚拟机和辅助虚拟机的状态在虚拟机的指令执行的任何时间点均相同来提供连续可用性。使用ESXi平台上的额VMware vLockstep技术来完成此过程。vLockstep通过使主虚拟机和辅助虚拟机执行相同顺序的X86指令来完成此过程。主虚拟机捕获所有输入和事件(从处理器到虚拟I/O设备),并在辅助虚拟机上进行重放。辅助虚拟机执行与主虚拟机相同的指令序列,而仅单个虚拟机映像(主虚拟机)执行工作负载。如果运行主虚拟机的主机或运行辅助虚拟机的主机发生故障,则会发生即时且透明的故障切换。正常运行的ESXi主机将无缝变成主虚拟机的主机,而不会断开网络连接或中断正在处理的事务。使用透明故障切换,不会有数据损失,并且可以维护网络连接。在进行透明故障切换之后,将重新生成新的辅助虚拟机,并且将重新建立冗余。整个过程是透明且全自动的,并且即使vCenter Server不可用,也会发生。
(二)vSphere FT的工作方式
VMware 容错可通过创建和维护等同于主虚拟机并可在发生故障切换时替换主虚拟机的辅助虚拟机来为虚拟机提供连续可用性。当启用Fault Tolerance时,会创建一个重复虚拟机(称为辅助虚拟机),该虚拟机会以虚拟锁步方式随主虚拟机一起运行。VMware vLockstep可捕获主虚拟机上发生的输入和事件,并将这些输入和事件发送到正在另一个主机上运行的辅助虚拟机。使用此信息,辅助虚拟机的执行将等同于主虚拟机的执行。因为辅助虚拟机与主虚拟机一起以虚拟锁步的方式运行,所以它可以无中断地接管任何点处的执行,从而提供容错保护,如图:
主虚拟机和辅助虚拟机可持续交换检测信号。此交换使得虚拟机对中的虚拟机能够监控彼此的状态,以确保持续提供FT保护。如果运行主虚拟机的主机发生故障,系统会执行透明故障切换,此时会立即启用辅助虚拟机以替换主虚拟机,并且将重新启动新的辅助虚拟机,同时在几秒内重新建立FT冗余。如果运行辅助虚拟机的主机发生故障,则该主机也会立刻被替换。在任一情况下,用户都不会遭遇服务中断和数据丢失的情况。容错虚拟机及其辅助副本不允许在相同主机上运行。此限制可确保出故障的主机不会使两个虚拟机同时丢失。也可以使用虚拟机-主机关联性规则来确定要在其上运行指定虚拟机的主机。如果使用这些规则,应了解对于受这种规则影响的任何主虚拟机,其关联的辅助虚拟机也受这些规则影响,如图:
(三)vSphere FT的要求
在使用FT之前,必须满足的要求包括群集要求、主机要求、虚拟机要求和硬件要求。
群集要求:至少有两台通过FT认证的主机运行相同的FT版本号或主机内部版本号,如FT版本:2.0.1-3.0.0-3.0.0.ESXi主机可以访问相同的虚拟机数据存储和网络,配置了FT日志记录和vMotion网络,vSphere HA群集已创建并启用。
主机要求:主机上的物理处理器必须来自与FT兼容的处理器组。要确认群集内的主机是否兼容,从而判断其是否支持FT。
虚拟机要求:虚拟机文件必须存储在共享存储上。可接受共享的存储解决方案包括光纤通道、(硬件和软件)iSCSI、NFS和NAS。虚拟机必须存储在虚拟RDM或厚置备的虚拟机磁盘(VMDK)文件(已启用“群集功能”选项)中。虚拟机必须在一个受制裁的客户机操作系统上运行。