可以在同一个群集中启用 vSphere HA 和 Virtual SAN。就传统数据存储而言,vSphere HA 为 Virtual SAN 数据存储中的虚拟机提供相同级别的保护。但当 vSphere HA 和 Virtual SAN 交互时,需特别注意一些事项。

ESXi 主机要求

仅当满足以下条件时,才能将 Virtual SAN 与 vSphere HA 群集配合使用:

  • 群集的所有 ESXi 主机的版本必须全部为 5.5 或更高版本。

  • 群集必须最低具有三个 ESXi 主机。

网络连接差异

Virtual SAN 具有自己的网络。为同一群集启用 Virtual SAN 和 vSphere HA 时,HA 代理间流量将流经此存储网络,而非管理网络。管理网络仅当禁用了 Virtual SAN 时才由 vSphere HA 使用。vCenter Server 将在主机上配置 vSphere HA 时选择恰当的网络。

注:

仅当禁用了 vSphere HA 时才能启用 Virtual SAN。

下表显示了使用或不使用 Virtual SAN 时 vSphere HA 网络连接的差异。

表 1. vSphere HA 网络连接差异

Virtual SAN 已启用

Virtual SAN 已禁用

vSphere HA 使用的网络

Virtual SAN 存储网络

管理网络

检测信号数据存储

挂载到 1 台以上主机的任何数据存储,但非 Virtual SAN 数据存储

挂载到 1 台以上主机的任何数据存储

声明已隔离的主机

隔离地址不可 ping,并且 Virtual SAN 存储网络无法访问

隔离地址不可 ping,并且管理网络无法访问

如果您更改了 Virtual SAN 网络配置,vSphere HA 代理将不自动获取新网络设置。因此,要更改 Virtual SAN 网络,必须在 vSphere Web Client 中执行以下步骤:

  1. 为 vSphere HA 群集禁用主机监控。

  2. 更改 Virtual SAN 网络。

  3. 右键单击群集中的所有主机,然后选择重新配置 HA

  4. 重新为 vSphere HA 群集启用主机监控。

容量预留设置

通过接入控制策略为 vSphere HA 群集预留容量时,必须与确保出现故障时的数据可访问性的相应 Virtual SAN 设置协商此设置。具体来说,Virtual SAN 规则集中的“允许的故障数目”设置不得低于 vSphere HA 接入控制策略预留的容量。

例如,如果 Virtual SAN 规则集仅允许两个故障,则 vSphere HA 接入控制策略预留的容量必须只能等于一个或两个主机故障。如果您为具有八个主机的群集使用“预留的群集资源的百分比”策略,则预留的容量不得超过群集资源的 25%。在同一群集中,使用“群集允许的主机故障数目”策略时,该设置不得大于两个主机。如果 vSphere HA 预留的容量较少,则故障切换活动可能不可预知,但预留太多容量则会过分限制打开虚拟机的电源和群集间 vMotion 迁移操作。

Virtual SAN 和 vSphere HA 在多主机发生故障时的行为

在 Virtual SAN 群集失败并且失去了虚拟机对象的故障切换仲裁后,vSphere HA 可能无法重新启动虚拟机,即使群集仲裁还原后也无法重新启动。vSphere HA 只保证在其拥有群集仲裁并且可以访问虚拟机对象的最新副本时,才可以重新启动。最新副本是写入的最后一个副本。

请考虑一个置备了 Virtual SAN 虚拟机以允许一个主机出现故障的示例。虚拟机在一个 Virtual SAN 群集中运行,该群集包含 H1、H2 和 H3 三个主机。所有这三个主机按顺序出现故障,H3 是最后出现故障的主机。

在 H1 和 H2 恢复后,群集具有一个仲裁(允许一个主机故障)。尽管如此,vSphere HA 依然无法重新启动虚拟机,因为最后一个出现故障的主机 (H3) 包含虚拟机对象的最新副本,并且仍然无法访问。

在此例中,要么所有这三个主机都必须同时恢复,要么双主机仲裁必须包括 H3。如果这两个条件都无法满足,HA 将尝试在主机 H3 恢复在线时重新启动虚拟机。