在共享存储环境中,当多台主机访问同一 VMFS 数据存储时,将使用特定的锁定机制。这些锁定机制可防止多台主机同时写入元数据并确保不会发生数据损坏。

根据 VMFS 数据存储的配置和底层存储的类型,VMFS 数据存储可能会使用不同类型的锁定机制。它可能会以独占方式使用原子测试并设置锁定机制(仅限 ATS),也可能会结合使用 ATS 和 SCSI 预留 (ATS+SCSI)。

“仅限 ATS”机制

对于支持基于 T10 标准的 VAAI 规格的存储设备,VMFS 可提供 ATS 锁定,也称为硬件辅助锁定。ATS 算法支持按磁盘扇区进行离散锁定。如果基础存储支持,则所有新格式化的 VMFS5 和 VMFS6 数据存储都将使用“仅限 ATS”机制,绝不会使用 SCSI 预留。

在创建使用 ATS 的多数据区的数据存储时,vCenter Server 会筛选出非 ATS 设备。通过此筛选,您可以仅使用支持 ATS 原语的设备。

在某些情况下,您可能需要更改 VMFS5 或 VMFS6 数据存储的默认锁定机制。有关信息,请参见将锁定机制更改为 ATS+SCSI

注: 如果运行的是 VMware vSAN 环境或具有仅限 ATS 的 VMFS 卷,请勿取消激活 ATS。取消激活 ATS 可能会导致中断,因为没有可用的锁定机制。有关详细信息,请参见 VMware 知识库文章

ATS+SCSI 机制

支持 ATS+SCSI 机制的 VMFS 数据存储将配置为使用 ATS 并尽可能尝试使用该机制。如果 ATS 失败,则 VMFS 数据存储将恢复为 SCSI 预留。与 ATS 锁定不同,SCSI 预留在执行需要元数据保护的操作时锁定整个存储设备。操作完成后,VMFS 会释放预留,并且可继续执行其他操作。

使用 ATS+SCSI 机制的数据存储包括从 VMFS3 升级的 VMFS5 数据存储。此外,存储设备上不支持 ATS 的新 VMFS5 或 VMFS6 数据存储将使用 ATS+SCSI 机制。

如果 VMFS 数据存储恢复为 SCSI 预留,则您可能会注意到因过多 SCSI 预留而导致的性能降低。