4.9. マネージドクラスター間のサブスクリプションベースのアプリケーションフェイルオーバー
フェイルオーバーとは、プライマリークラスターに障害が発生した場合に、アプリケーションをプライマリークラスターからセカンダリークラスターに移行するプロセスです。フェイルオーバーにより、アプリケーションは最小限の中断でセカンダリークラスター上で実行できるようになりますが、情報に基づいてフェイルオーバーを決定すると、気づかない間に、プライマリークラスターからセカンダリークラスターへのレプリケーションの障害が発生した場合にデータが完全に失われるなど、悪影響が生じる可能性があります。最後にレプリケーションが成功してからかなりの時間が経過した場合は、障害が発生したプライマリーが回復するまで待つことを推奨します。
LastGroupSyncTime は、アプリケーションに関連付けられたすべての PVC に対して最後に成功したレプリケーションが発生してからの時間を反映するため、重要なメトリクスです。本質的には、プライマリークラスターとセカンダリークラスター間の同期の正常性を測定します。したがって、あるクラスターから別のクラスターへのフェイルオーバーを開始する前に、このメトリックを確認し、LastGroupSyncTime が、過去の妥当な時間内にある場合にのみフェイルオーバーを開始します。
フェイルオーバー中に、フェイルオーバーされるクラスター上の Ceph RBD ミラーデプロイメントがスケールダウンされ、ストレージプロビジョニングとして Ceph RBD でバックされるボリュームのフェイルオーバーが正常に行われるようにします。
前提条件
- セットアップにアクティブおよびパッシブの RHACM ハブクラスターがある場合は、Red Hat Advanced Cluster Management を使用したハブのリカバリー を参照してください。
プライマリークラスターが
Ready
以外の状態にある場合は、更新に時間がかかる可能性があるため、クラスターの実際のステータスを確認してください。-
RHACM console
Infrastructure Clusters Cluster list タブに移動します。 フェイルオーバー操作を実行する前に、両方のマネージドクラスターのステータスを個別に確認してください。
ただし、フェイルオーバー先のクラスターが Ready 状態にある場合でも、フェイルオーバー操作は実行できます。
-
RHACM console
ハブクラスターで次のコマンドを実行して、
lastGroupSyncTime
が現在時刻と比較して許容可能なデータ損失ウィンドウ内にあるかどうかを確認します。$ oc get drpc -o yaml -A | grep lastGroupSyncTime
出力例:
[...] lastGroupSyncTime: "2023-07-10T12:40:10Z"
手順
- ハブクラスターで、Applications に移動します。
- アプリケーション行の最後にある Actions メニューをクリックして、使用可能なアクションのリストを表示します。
- Failover application をクリックします。
- Failover application モーダルが表示されたら、障害時に関連付けられたアプリケーションがフェイルオーバーする ポリシー と ターゲットクラスター を選択します。
Select subscription group ドロップダウンをクリックして、デフォルトの選択を確認するか、この設定を変更します。
デフォルトでは、アプリケーションリソースをレプリケートするサブスクリプショングループが選択されています。
フェイルオーバーの準備 状況を確認します。
-
ステータスが
Ready
で緑色のチェックマークが付いている場合は、ターゲットクラスターでフェイルオーバーを開始する準備ができていることを示しています。手順 7 に進みます。 -
ステータスが
Unknown
またはNot ready
の場合は、ステータスがReady
に変わるまで待ちます。
-
ステータスが
- Initiate をクリックします。busybox アプリケーションが現在、セカンダリーで管理されているクラスター にフェイルオーバーしています。
- モーダルウィンドウを閉じ、Applications ページの Data policy 列を使用してステータスを追跡します。
アプリケーションのアクティビティーステータスが FailedOver と表示されていることを確認します。
-
Applications
Overview タブに移動します。 - Data policy 列で、ポリシーを適用したアプリケーションの policy リンクをクリックします。
- Data policy ポップオーバーで、View more details リンクをクリックします。
- アプリケーションで使用されているポリシーに関連付けられている 1 つ以上のポリシー名と進行中のアクティビティー (最終同期時間とアクティビティーステータス) が表示されることを確認します。
-
Applications