フェールオーバー クラスター インスタンスの操作 - SQL Server on Linux

適用対象: SQL Server - Linux

この記事では、Linux で SQL Server フェールオーバー クラスター インスタンス (FCI) を操作する方法について説明します。 Linux に SQL Server FCI を作成していない場合は、「フェールオーバー クラスター インスタンスの構成 - SQL Server on Linux (RHEL)」をご覧ください。

[フェールオーバー]

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) では、SQL Server FCI を手動でフェールオーバーするには、migrate コマンドを使います。 次に例を示します。

crm resource migrate <FCIResourceName> <NewHostNode>

<FCIResourceName> は、フェールオーバー クラスター インスタンスのリソース名です。

<NewHostNode> は、新しいフェールオーバー先ホストの名前です。