运行故障转移群集实例 - Linux 上的 SQL Server

适用于:SQL Server - Linux

本文介绍如何在 Linux 上运行 SQL Server 故障转移群集实例 (FCI)。 如果尚未在 Linux 上创建 SQL Server FCI,请参阅配置故障转移群集实例 - Linux 上的 SQL Server

故障转移

FCI 的故障转移类似于 Windows Server 故障转移群集 (WSFC)。 如果托管 FCI 的群集节点遇到某种故障,FCI 应自动故障转移到另一个节点。 与 WSFC 不同,无法设置首选所有者,因此 Pacemaker 选取即将成为 FCI 新主机的节点。

有时,可能需要将 FCI 手动故障转移到另一个节点。 此过程与 WSFC 上的 FCI 不同。 在 WSFC 上,可以在角色级别对资源进行故障转移。 在 Pacemaker 中,可以选择要移动的资源,并假设所有约束都是正确的,则其他所有约束也将随之移动。

故障转移的方式取决于 Linux 分发版。 按照 linux 分发版的说明进行操作。

手动故障转移(RHEL 或 Ubuntu)

若要执行手动故障转移,请在 Red Hat Enterprise Linux (RHEL) 或 Ubuntu 服务器上执行以下步骤。

  1. 发出以下命令:

    sudo pcs resource move <FCIResourceName> <NewHostNode>
    

    <FCIResourceName> 是 SQL Server FCI 的 Pacemaker 资源名称。

    <NewHostNode> 是要托管 FCI 的群集节点的名称。

    不会获得任何确认。

  2. 在手动故障转移过程中,Pacemaker 会对已选择手动移动的资源创建位置约束。 若要查看此约束,请运行 sudo pcs constraint

  3. 故障转移完成后,通过发出 sudo pcs resource clear <FCIResourceName> 来删除该约束。

<FCIResourceName> 是 FCI 的 Pacemaker 资源名称。

手动故障转移 (SLES)

在 SUSE Linux Enterprise Server (SLES) 中,使用 migrate 命令手动故障转移 SQL Server FCI。 例如:

crm resource migrate <FCIResourceName> <NewHostNode>

<FCIResourceName> 是故障转移群集实例的资源名称。

<NewHostNode> 是新目标主机的名称。