2.9. SPM 选择的过程

如果没有主机被手工指定为 SPM,Red Hat Virtualization Manager 将会启动并管理 SPM 的选择过程。
首先,Red Hat Virtualization Manager 会要求 VDSM 确认哪个主机已经有了“存储为中心的租約”。
Red Hat Virtualization Manager 会跟踪从存储域创建以来的 SPM 分配记录。主机是否可以作为 SPM 由以下 3 方面决定:
  • "getSPMstatus" 命令:Manager 使用 VDSM 检查主机的 SPM 状态。它会返回以下 3 个状态之一:"SPM"、"Contending" 或 "Free"。
  • 存储域的元数据卷中包括了最后一个具有 SPM 身份的主机信息。
  • 存储域的元数据卷中包括了最后一个具有 SPM 身份的主机版本信息。
如果当前的 SPM 可以正常工作,这个主机会继续保持“存储为中央的租約”,Red Hat Virtualization Manager 在管理门户中把那台主机标识为 SPM,并不再进行以下操作。
如果当前的 SPM 主机没有响应,它被认为处于“无响应”状态。如果那个主机已经配置了电源管理功能,它会被自动隔离(fence)。如果自动隔离失败,就需要手工隔离。在当前的 SPM 被隔离前,SPM 的角色不能分配给其它主机。
当 SPM 角色和存储为中心的租約都空闲时,Red Hat Virtualization Manager 会把它们分配给数据中心中的一个随机选取的主机。
如果为一个新主机分配 SPM 角色的操作失败,Red Hat Virtualization Manager 会把这个主机加入到一个包括了所有被分配 SPM 角色失败的主机列表中(这个列表中的主机被标记为无法成为 SPM)。这个列表中的内容会在开始下一次进行 SPM 选择的过程前被清除,从而使这个列表中的主机又有机会成为 SPM。
Red Hat Virtualization Manager 会一直尝试把 SPM 角色和存储为中央的租約分配给一个主机,直到有一个主机成功成为了 SPM。
在当前的 SPM 没有响应或无法完成正常的任务时,Red Hat Virtualization Manager 就会启动 SPM 选择的过程。