Active-Active IBM Spectrum Scale デプロイメントの構成

IBM Spectrum Scale 1 次インスタンスをデプロイし、デプロイ済みの IBM Spectrum Scale ミラー・インスタンスと IBM Spectrum Scale タイブレーカー・インスタンスを接続すると、可用性の高い Active-Active IBM Spectrum Scale 構成を作成できます。

このタスクについて

Active-Active は、高可用性 (HA) 構成です。 この構成では、一方がダウンした場合、他方がすぐに処理を引き継ぎ、クライアントにデータ損失は発生しません。 1 次サーバー、2 次サーバー、クラスター・マネージャー、またはファイル・システム・マネージャーのいずれかが、ダウンした側に存在する場合に、IBM Spectrum Scale サーバー・クラスターの failureDetectionTime パラメーターおよび leaseRecoveryWait パラメーターの設定によっては、この期間にファイル・システムに接続を試みるクライアントにタイムアウトが設定される可能性があります。 タイムアウトは、最長で failureDetectionTime + leaseRecoveryWait になります。 これらのパラメーターの値を検索するには、いずれかの IBM Spectrum Scale サーバー・ノードに以下のコマンドをコマンド行から実行してください。
su - gpfsprod -c '/usr/lpp/mmfs/bin/mmlsconfig leaseRecoveryWait'
su - gpfsprod -c '/usr/lpp/mmfs/bin/mmlsconfig failureDetectionTime'
「クラスター状況の取得」操作を実行して、これらのプロパティーの値をリストします。
警告: leaseRecoveryWait および failureDetectionTime の最小許容値は 10 秒で、デフォルトは 35 秒です。 低い値に設定すると、クラスター内のノードがダウンしたときにデータ破損が生じるおそれがあるため、これらのプロパティーの更新は慎重に行ってください。 これらの値を更新する前に IBM Spectrum Scale サービス・チームに問い合わせたり IBM Spectrum Scale の資料を読んだりして、更新の影響を理解してください。
計画したフェイルオーバーにおいて一方がダウンしたときに、このタイムアウトを回避するには、停止する前に、1 次サーバー、2 次サーバー、クラスター・マネージャーおよびファイル・システム・マネージャーをアクティブな状態で維持される側に移動します。 これらのクラスター変更を行う操作については、 フェイルオーバー・アクティブ-アクティブ操作を参照してください。 IBM Spectrum Scale パターン 1.2.15.0 以前を使用してデプロイされた IBM Spectrum Scale サーバー・インスタンスが存在する場合、すべての IBM Spectrum Scale サーバー・ノードに対して以下のコマンドをコマンド行から実行して、クラスター・マネージャーとファイル・システム・マネージャーを更新します。
注: V1.2.16.0では、コマンドは自動的に管理されます。 コマンドを排他的に実行する必要はありません。 あるノードがダウンすると、もう一方のノード・マネージャーが自動的に更新され、クラスター・マネージャーおよびファイル・システム・マネージャーになります。

su - gpfsprod -c 'sudo /usr/lpp/mmfs/bin/mmchmgr -c nodeIP' (nodeIP をクラスター・マネージャーにする場合)。

su - gpfsprod -c 'sudo /usr/lpp/mmfs/bin/mmchmgr fileSystemName nodeIP' は、 fileSystemNamenodeIP マネージャーになります。

アクティブ/アクティブ構成では、複製は同期され、アクティブ・ミラー・レプリカを使用して IBM Spectrum Scale によって管理されます。 この構成は Active-Passive 構成とは異なります。Active-Passive 構成では、複製が IBM Spectrum Scaleによって管理されるのではなく、ボリューム複製を使用して行われます。 この理由により、1 次インスタンスが同時に Active-Active 構成と Active-Passive 構成の両方の一部になることはありえません。 1 次インスタンスは、次のいずれかとなります。
  • Active-Active 構成の一部。アクティブな「ミラー」レプリカを利用する IBM Spectrum Scale の同期複製を使用する。または
  • IBM Spectrum Scale パッシブ・サイドでテークオーバーの準備ができた状態で、Active-Passive 複製の一部であり、ボリューム複製を使用します。

以下の手順は、アクティブ/アクティブ IBM Spectrum Scale デプロイメントを高可用性用に構成するために実行できる一般的なステップを示しています。 この構成では、IBM Spectrum Scale 1 次インスタンスは 1 つのラック (1 次ラック と呼ばれる) にデプロイされるのに対し、IBM Spectrum Scale ミラー・インスタンスと IBM Spectrum Scale タイブレーカー・インスタンスは、別々の場所 (可能な場合) にある別個のラック (ミラー・ラック およびタイブレーカー・ラック と呼ばれる) にそれぞれデプロイされます。 一般に、このタイプの構成は、データ転送における待ち時間の問題を避けるため、地理的な距離が 300 km 未満の場合にのみサポートされます。

重要: 高可用性を確保するためのベスト・プラクティスとして、1 次構成、ミラー構成、およびタイブレーカー構成は、いずれか 1 つの IBM Spectrum Scale 構成が使用不可になっても影響を受けず、引き続き機能することができるように、環境内の別々のシステムに配置する必要があります。

IBM Cloud Pak® 製品が ( Cloud Pak ソフトウェア または Cloud Pak System Softwareのいずれかで) 異なるデータ・センターにインストールされているか、単一データ・センターの異なるゾーンにインストールされている 3 つのシステムがある場合は、これらの 3 つの IBM Spectrum Scale サーバー構成をそれぞれ別個のシステムにデプロイする必要があります。

IBM Spectrum Scale タイブレーカー構成をデプロイする代わりに、 IBM Cloud Pak 製品がインストールされている 2 つのシステムがある場合は、以下のようにします。 外部タイブレーカー・ノードを別のシステムにインストールし、その別のノードを IBM Spectrum Scale クラスターに接続することができます。 代わりにこの外部タイブレーカー・ノードを設定する方法について詳しくは、関連リンクを参照してください。

IBM Spectrum Scale タイブレーカー構成をデプロイすることを選択し、 IBM Cloud Pak 製品がインストールされている 2 つのシステムに制限されている場合は、以下のようになります。 IBM Spectrum Scale タイブレーカー構成は、1 次構成またはミラー構成のいずれかと同じシステム上に配置できます。 可用性を最大にするには、計算ノードを共有しない個別クラウド・グループに各構成を割り当てます。 このセットアップでは、1 次ノードまたはミラー・ノードと同じ計算ノードにタイブレーカー・ノードは存在せず、いずれか 1 つの計算ノードで障害が発生しても、他の 2 つの IBM Spectrum Scale インスタンスは同時にダウンしません。

追加の考慮事項として、 IBM Spectrum Scale タイブレーカー構成を 1 次構成またはミラー構成のいずれかと同じシステムに配置する際に、 IBM Cloud Pak 製品がインストールされている 1 つのシステムが他のシステムより大きい場合は、以下のようになります。 IBM Spectrum Scale 1 次構成とタイブレーカー構成は最大のシステム上に配置し、 IBM Spectrum Scale ミラー構成は最大のシステム上に配置することを選択できます。

手順

  1. 1 次システムで、必要に応じて、適切なボリュームを作成します。
  2. ミラー・システムで、1 次ラックと (数およびサイズが) 同じボリュームを作成します。
  3. タイブレーカー・システムで、タイブレーカー構成が IBM Spectrum Scale メタデータの保管に使用するボリュームを接続します。
    ファイル・システムごとに 1 つのボリュームを接続する必要があります。 タイブレーカー・ボリュームには IBM Spectrum Scale メタデータのみが保持されるため、タイブレーカーで使用するボリュームのサイズは 1 GB で十分です。
    注: 1 次構成、ミラー構成、またはタイブレーカー構成をデプロイするときに、ボリュームを再利用できます。 ただし、既存のボリュームはパーティション化されていてはならず、 IBM Spectrum Scale パターン・インスタンスによってのみ使用されている必要があります。 ボリュームが IBM Spectrum Scale ノードに接続されると、 IBM Spectrum Scale がボリュームを再フォーマットするため、再使用されたボリュームからのデータはすべて失われることに注意してください。
  4. IBM Spectrum Scale ミラー・インスタンスをミラー・ラックにデプロイします。 「配置」ダイアログ・ボックスで、ミラー・ラックからのボリュームを接続します。
    次の要件を満たしていることを確認してください。
    • このミラー・インスタンスには、接続先となる 1 次構成と同じ数の IBM Spectrum Scale ノードがある。
    • 同じ数で同じサイズのボリュームが、指定されたファイル・システムのミラー・デプロイメントと 1 次デプロイメントの両方で使用される。
    • ミラー・デプロイメントでのファイル・システム名が、1 次デプロイメントでのファイル・システム名と同じであること。

    仮想マシンが割り振られるまで待機し、その IBM Spectrum ® Scale_manager ノードの IP アドレスをメモします。

  5. IBM Spectrum Scale タイブレーカー・インスタンスをタイブレーカー・ラックにデプロイします。 「配置」ダイアログ・ボックスで、ボリュームを接続します。
    タイブレーカー・デプロイメントでのファイル・システム名は、1 次デプロイメントでのファイル・システム名と同じになるようにしてください。 仮想マシンが割り振られるまで待機し、その IBM Spectrum Scale_manager ノードの IP アドレスをメモします。

    IBM Spectrum Scale タイブレーカー・パターンを使用してタイブレーカー・インスタンスを Cloud Pak Systemにデプロイする代わりに、外部タイブレーカーを外部仮想マシンにデプロイすることを選択できます。 外部タイブレーカー・ノードのセットアップと、タイ・ノードおよびディスクのインストールの検査について詳しくは、『関連概念』を参照してください。

  6. これら 2 つの仮想アプリケーションの開始処理が完了するまで待ちます。 処理が完了すると、それぞれに「実行中」という状況が表示されます。
  7. IBM Spectrum Scale 1 次インスタンスを 1 次ラックにデプロイします。
    1 次インスタンスをデプロイする場合、デプロイメント中にミラー・インスタンスおよびタイブレーカー・インスタンスを構成して接続するか、ここでは 1 次インスタンスを単独でデプロイし、ミラー・インスタンスとタイブレーカー・インスタンスを後で接続するか、いずれかを選択することができます。
    • デプロイ済みのミラー・インスタンスとタイブレーカー・インスタンスをこの 1 次デプロイメントの中で構成して接続することを選択した場合は、「アクティブ構成」セクションを展開し、ミラー・インスタンスとタイブレーカー・インスタンスの両方の IBM Spectrum Scale_manager ノード の IP アドレスを指定します。
    • 外部タイブレーカー・ノードを使用する場合、1 次デプロイメントの実行時にタイブレーカー・インスタンスを接続することはできません。 まず 1 次インスタンスをデプロイしてから、1 次デプロイメントから取得したバイナリー・ファイルを使用して外部タイブレーカー・ノードをインストールします。 その後、タイブレーカー・ノードを 1 次構成に接続することができます。
  8. 配置 」ダイアログ・ボックスに進み、適切なボリュームを接続します。
  9. デプロイメント・プロセスを開始します。
    処理が完了すると、「実行中」という状況が表示されます。
  10. 1 次インスタンスを単独でデプロイした場合は、1 次システムから 「新規メンバーの追加」 操作を実行し、ミラー・インスタンスの IBM Spectrum Scale_manager ノード の IP アドレスを指定して、1 次インスタンスに接続します。
    次に、この操作を繰り返して、タイブレーカー・インスタンスの IBM Spectrum Scale_manager ノード の IP アドレスを指定し、それを 1 次インスタンスに接続します。

結果

この手順により、ミラー構成とタイブレーカー構成が 1 次構成に接続され、Active-Active 環境が作成されます。

次のタスク

IBM Spectrum Scale の IBM® 共有サービス のインスタンスをまだデプロイしていない場合はデプロイし、新しいクラスターを使用するように構成することができます。 IBM Spectrum Scale パターン V1.2.5.0以降では、 IBM Spectrum Scale 共有サービスを使用する代わりに、 クライアントは、デプロイメント時に IBM Spectrum Scale サーバー接続情報を直接提供できます。

IBM Spectrum Scale クライアント・ポリシー (または代替となる IBM Spectrum Scale クライアント ・スクリプト・パッケージ) を含むその他のワークロード・パターンをデプロイします。 これで、これらのワークロードは、IBM Spectrum Scale クラスターで使用可能なボリュームにアクセスできるようになります。

フェイルオーバー状態が発生した場合、問題の性質によっては、いくつかの方法でリカバリーできる可能性があります。 一般に、1 次構成またはミラー構成で障害が発生した場合は、IBM Spectrum Scale クラスターをリカバリーできる可能性があります。 1 次構成またはミラー構成で障害が発生し、タイブレーク構成で障害が発生した場合、IBM Spectrum Scale クラスターは機能しなくなります。

1 次構成が失われるか、またはミラー構成とタイブレーク構成が失われて、その障害がリカバリー可能な場合:
  • 存続している 1 次構成またはミラー構成で、「単一ラックにする」操作を実行できます。
  • 障害が発生した構成での問題を修正したら、「複製されるクラスターにする」操作を実行できます。
単一の 1 次構成、ミラー構成、またはタイブレーク構成が停止し、障害からリカバリーできない場合、クラスターから障害が発生したインスタンスを削除し、新しい構成を再作成する必要があります。
  • 存続しているインスタンスで「メンバーの削除」操作を実行し、障害が発生したインスタンスを指定してそのインスタンスをクラスターから削除することができます。 例えば、障害が発生したインスタンスがミラー・インスタンスの場合、「メンバーの削除」操作を実行し、「ミラー」オプションを選択します。 1 次構成を削除する必要がある場合、「メンバーの削除」操作を実行し、「1 次」オプションを選択します。 操作が正常に終了するまで待機します。 「クラスター状況の取得」操作を実行して、障害が発生したインスタンスのノードおよびディスクがクラスターの一部になっていないことを確認します。
  • 前のステップで削除したインスタンスがまだ実行されている場合、接続されているボリュームを再使用できるようにするために、そのインスタンスを削除します。
  • 前のステップで削除したインスタンスと同じタイプの新規インスタンスをデプロイします。 可能な場合は、削除したインスタンスが使用していた同じボリュームを再接続します。 これらのボリュームが使用不可の場合、つまり、ボリュームが正常ではない場合、または新規インスタンスを削除したインスタンスとは異なるクラウド・グループまたはラックにデプロイした場合、新規ボリュームを使用してかまいません。
  • 「メンバーの追加 (Add Member)」操作を使用して、存続する 1 次インスタンスまたはミラー・インスタンスに新規インスタンスを追加します。
  • 存続するインスタンスで複数のファイル・システムが使用可能の場合、新規デプロイメントでこれらのすべてのファイル・システムにボリュームを追加します。
    注: 新規ノードを使用してクラスターを拡張する場合、ミラー・インスタンスまたはタイブレーク・インスタンスを 1 次インスタンスに接続すると、1 次ボリューム上のデータが保持されます。 また、既存のクラスターからメンバーを削除する場合、少なくとも 1 つのミラー・インスタンスまたは 1 次インスタンスが実行されていれば、データは保持されます。 クラスターを拡張する場合、既存のクライアントの機能停止はありません。 クラスターからメンバーを削除する場合、操作が完了するまで一時的な機能停止が発生する場合があります。

クラスター・メンバーのサーバーやディスクが (保守または手操作による介入のために) 停止した場合は、「失われた接続の回復」操作を実行することで、そのメンバーのディスクやサーバーを再始動できます。