使用多写入器标记启用或禁用 VMFS 提供的同步写入保护
search cancel

使用多写入器标记启用或禁用 VMFS 提供的同步写入保护

book

Article ID: 324789

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Symptoms:

免责声明:本文为 Enabling or disabling simultaneous write protection provided by VMFS using the multi-writer flag (1034165) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。



VMFS 是一个群集文件系统,该文件系统在默认情况下会禁止多个虚拟机打开或写入同一个虚拟磁盘(.vmdk文件)。这样可以防止多个虚拟机无意间访问同一个.vmdk文件。

 

多写入器选项可以使多个虚拟机共享由 VMFS 支持的磁盘。可以使用此选项来支持 VMware Fault Tolerance,从而使主虚拟机和备用虚拟机可以同时访问一个.vmdk文件。

可以使用此选项禁用对某些群集感知应用程序的保护,从而使应用程序可以确保从两个或更多个不同虚拟机进行写入而不会导致数据丢失。本文档介绍了为虚拟磁盘设置多写入器标记的方法。

警告:禁用此保护时请谨慎。如果虚拟机中的应用程序不能使对共享磁盘的写入保持一致性,则此更改可能导致数据损坏。因此,不支持某些虚拟机操作和 vSphere 功能,下面列出了这些操作和功能。

用例:

  • VMware FT 依靠 VMware vLockstep 技术来建立和维护以虚拟锁步方式与主虚拟机一起运行的活动辅助虚拟机。该辅助虚拟机驻留在另一台主机上,并按照与主虚拟机完全相同的虚拟(客户机)指令顺序来执行。在 vSphere Client 中打开 FT 时,将自动启用多写入器标记。
     
  • 第三方群集感知应用程序,其中,应用程序可以确保从两个或更多个不同虚拟机进行写入不会导致数据丢失(例如,可以对 Oracle RAC 虚拟机使用此功能)。对于此情况,使用本文中的说明手动启用多写入器标记。使用虚拟 RDM 时请按照相同的过程执行操作。
     
  • 要使 Oracle RAC 虚拟机在启用多写入器标记的情况下正常运行,必须将正在运行虚拟机的 ESXi 5.5 主机修补到 VMware ESXi 5.5, Patch ESXi550-201407401-BG: Updates esx-base (2077407) 或更高版本。
     
  • 有关使用 VMware vSAN 的配置,请参见 在 vSphere 6.x vSAN 数据存储上使用 Oracle RAC (2126079)
支持和不支持的操作或功能:
 
操作或功能受支持不受支持备注
打开和关闭虚拟机电源以及重新启动虚拟机  
挂起虚拟机 × 
热添加虚拟磁盘 仅适用于现有适配器
热移除设备  
热扩展虚拟磁盘 × 
连接和断开设备  
快照 ×虚拟备份解决方案通过 vStorage API 利用快照;例如,VMware Data Recovery 和 vSphere Data Protection。这些解决方案也不受支持。
包含独立持久磁盘的虚拟机的快照 在 vSphere 5.1 update2 及更高版本中受支持
克隆 × 
Storage vMotion ×由于需要关闭虚拟机来启动存储迁移,无法使用 Storage vMotion 迁移共享或非共享磁盘。
更改块跟踪 (CBT) × 
vSphere Flash Read Cache (vFRC) ×失效的写入会导致数据丢失和/或损坏
vMotion 仅受 ORAC 支持,并且仅限于 8 个 ESX/ESXi 主机
限制:


Environment

VMware vSphere ESXi 6.0
VMware ESXi 4.0.x Embedded
VMware ESXi 4.1.x Embedded
VMware vSphere ESXi 5.0
VMware vSphere ESXi 5.1
VMware ESXi 4.1.x Installable
VMware ESX 4.1.x
VMware vSphere ESXi 5.5
VMware ESX 4.0.x
VMware vSphere ESXi 6.5
VMware ESXi 4.0.x Installable

Resolution

启用虚拟磁盘共享

要通过设置多写入器标记配置共享虚拟磁盘,请执行以下操作:
  1. 使用任何可接受的方法创建要共享的虚拟磁盘。 例如,通过 vSphere Client:
    1. 在 VMFS 数据存储上为虚拟机创建新磁盘:


       
    2. 创建磁盘窗口中,对于低于 5.0 的 ESX/ESXi 版本,单击支持 Fault Tolerance 等群集功能,以所需的厚置备置零格式创建新的虚拟磁盘。



      在 ESXi 5.x 版本中,创建磁盘窗口在“磁盘置备”下提供了“厚置备延迟置零”、“厚置备置零”和“精简置备”选项。 请确保选择厚置备置零。 此外请注意,该文档可能会将此称为平面预初始化。

    3. 选择某个“虚拟设备节点”设置,如 SCSI (1:0)。 将其记录下来,因为稍后将会需要。

  2. 添加多写入器标记以配置共享。

    注意: 请勿更改 SCSI 控制器的 SCSI 总线共享选项。 保留默认选择无。

    要为共享特定磁盘而启用多写入器标记,请应用以下某个选项:
    1.  
      1. 关闭虚拟机电源。
      2. 在定义虚拟机的.vmx 文件中,添加以下类似条目:
        scsiX:Y.sharing = "multi-writer"

        其中,X 是控制器 ID,Y 是该控制器上的磁盘 ID。 虚拟机的设置屏幕将显示以下值。



        为要共享的每个虚拟磁盘添加此设置。 例如,要共享四个磁盘,配置文件条目类似于:
        scsi1:0.sharing = "multi-writer"
        scsi1:1.sharing = "multi-writer"
        scsi1:2.sharing = "multi-writer"
        scsi1:3.sharing = "multi-writer"

         
      3. 保存 .vmx 文件,然后打开虚拟机电源。
        注意:在 ESXi 6.0 中,GUI 可以直接设置多写入器标记,无需编辑 .vmx 文件。
         
    2. 在 vSphere Client 中,关闭虚拟机电源,导航到编辑设置 > 选项 > 高级 > 常规 > 配置参数。为每个共享磁盘添加行,然后将它们的值设置为 multi-writer

  3. 将此磁盘添加到另一个虚拟机中:
     
    1. 在 vSphere Client 清单中,右键单击虚拟机,然后单击编辑设置
    2. 单击硬件,然后单击添加
    3. 选择硬盘,然后单击下一步
    4. 选择使用现有虚拟磁盘

      注意: 您不需要创建磁盘,因为已经创建了磁盘。
       
  4. 使用步骤 2 中列出的方法之一在此虚拟机上启用共享。


Additional Information

Enabling or disabling simultaneous write protection provided by VMFS using the multi-writer flag