本文来自存储人生: [url]http://www.storageonline.com.cn/virtualtech/vmware/vmware-vcenter-fault-tolerant/[/url]
>1. VMware FT 容错简介
>Vmware fault tolerance(FT)功能创建一个虚拟机设置可以提供连续性能力。FT建立在ESX/ESXi主机平台。通过创建一个虚拟机一个完全相同的副本。
>虚拟机的主要副本,处于活动状态,接受请求,服务信息,并运行程序。次要副本,接收与主副本相同的输入。次要副本完成的所有任务都依照主副本的变动。主副本所有非决定性的活动都将被捕捉,发送到运行在其他host上的次要副本,次要副本在一秒内将活动进行重演。
>FT启动后,VM Tools从每个虚机中发送心跳到VMM,此心跳与HA的心跳类似。VMM检查以确保主要和次要副本都在运行。如果主副本所在的host丢失,VMM将不再发送心跳。此时,次要副本立刻变为活动的,并成为主要副本,服务不会经历任何中断。
>FT提供了比HA更高的商业连续性级别。FT发生时,次要立刻被激活,所有关于虚机状态的信息都会被完整的保留。存储在内存中的数据不需要被re-entered或reloaded。而HA则要将任何丢失的虚拟机进行重启。这会结束所有虚拟机进程和状态信息,程序和未保存的用户输入信息都会丢失。
>2. VMware FT 容错提供连续可用性
>VMware HA 通过在主机出现故障时重新启动虚拟机来为虚拟机提供基本级别的保护。VMware 容错可提供更高级别的可用性,允许用户对任何虚拟机进行保护以防止主机发生数据、事务或连接丢失等故障。
>容错使用 ESX/ESXi 主机平台上的 VMware vLockstep 技术以提供连续可用性。通过确保主虚拟机和辅助虚拟机的状态在虚拟机的指令执行的任何时间点均相同来完成此过程。vLockstep 通过使主虚拟机和辅助虚拟机执行相同顺序的 x86 指令来完成此过程。主虚拟机捕获所有输入和事件 — 从处理器到虚拟 I/O 设备 — 并在辅助虚拟机上进行重放。辅助虚拟机执行与主虚拟机同一系列的指令,而仅可看到单个虚拟机映像(主虚拟机)在执行工作负载。
>如果运行主虚拟机的主机或运行辅助虚拟机的主机发生故障,则会发生透明故障切换,仍在无缝工作的主机将借此变为主虚拟机的主机。使用透明故障切换,不会有数据损失,并且可以维护网络连接。 在发生透明故障切换之后,将自动重新生成新的辅助虚拟机,并将重新建立冗余。整个过程是透明且全自动的,并且即使 vCenter Server 不可用,也会发生。
>3. VMware FT 容错的工作方式
>VMware 容错可通过创建和维护等同于主虚拟机并可在发生故障切换时替换主虚拟机的辅助虚拟机来为虚拟机提供连续可用性。
>可以为大多数任务关键虚拟机启用容错。并会创建一个重复虚拟机(称为辅助虚拟机),该虚拟机会以虚拟锁步方式随主虚拟机一起运行。VMware vLockstep 可捕获主虚拟机上发生的输入和事件,并将这些输入和事件发送到正在另一主机上运行的辅助虚拟机。使用此信息,辅助虚拟机的执行将等同于主虚拟机的执行。因为辅助虚拟机与主虚拟机一起以虚拟锁步方式运行,所以它可以无中断地接管任何点处的执行,从而提供容错保护。
>虚拟机和辅助虚拟机可持续交换检测信号。这使得虚拟机对中的虚拟机能够监控彼此的状态以确保持续提供容错保护。如果运行主虚拟机的主机发生故障,系统将会执行透明故障切换,此时会立即启用辅助虚拟机以替换主虚拟机,并将启动新的辅助虚拟机,同时在几秒钟内重新建立容错冗余。如果运行辅助虚拟机的主机发生故障,则该主机也会立即被替换。在任一情况下,用户都不会遭遇服务中断和数据丢失的情况。
>容错虚拟机及其辅助副本不允许在相同主机上运行。容错功能使用反关联性规则,这些规则可确保容错虚拟机的两个实例永远不会在同一主机上。这可确保主机故障无法导致两个虚拟机都缺失。
>容错可避免“裂脑”情况的发生,此情况可能会导致虚拟机在从故障中恢复后存在两个活动副本。共享存储器上锁定的原子文件用于协调故障切换,以便只有一端可作为主虚拟机继续运行,并由系统自动重新生成新辅助虚拟机。
>4. VMware FT 容错与HA协作
>关于VMware HA,参考《VMware vCenter 高可用性 HA 详解》。
>5. VMware FT容错的要求
>与 VMware HA 在默认情况下保护群集内的每个虚拟机不同,VMware 容错在单个虚拟机上启用。要使群集支持VMware 容错,必须满足以下必备条件:
>群集/主机必备条件
>虚拟机要求
>在可以打开容错前,虚拟机必须满足最低要求。
>虚拟机文件必须存储在共享存储器上。可接受共享的存储解决方案包括光纤通道、(硬件和软件)iSCSI、NFS 和 NAS。
>虚拟机必须存储在虚拟 RDM 或厚置备的虚拟机磁盘 (VMDK) 文件(已启用“群集功能”选项)中。如果将虚拟机存储在精简置备或厚置备的 VMDK 文件(未启用群集功能)中,则在尝试启用容错时将会出现一则指示必须转换 VMDK 文件的消息。用户可以接受此自动转换(需要关闭虚拟机),允许转换磁盘并使用容错保护虚拟机。此转换过程所需的时间根据磁盘的大小和主机处理器类型而有所不同。
>虚拟机必须在一个受支持的客户机操作系统上运行。有关详细信息,请参见 VMware 知识库文章,网址为 [url]http://kb.vmware.com/kb/1008027[/url]。
>6. VMware FT 容错互操作性
>6.1 容错和不支持的 vSphere 功能
>容错虚拟机不支持以下 vSphere 功能。
>快照 在虚拟机上启用容错前,必须移除或提