Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
このページでは、復元力の高い(高可用性)環境でデータベースのフェイルオーバー テストを実行する方法について説明します。
環境のフェイルオーバー テストでは、データセンター内のゾーンの完全な停止をシミュレートします。このようなシナリオでは、データベースのゾーン停止が発生する可能性があります。フェイルオーバー テストを実行することで、復元力の高い環境でフェイルオーバーがどのように実行されるかをモニタリングし、DAG とタスクへの影響をチェックできます。
始める前に
フェイルオーバー テストを実行するには、Google アカウントに次のロールと権限が必要です。
composer.environments.update権限。この権限を持つロールの一覧については、IAM を使用したアクセス制御をご覧ください。
Cloud Composer 3 では、環境のクラスタは環境のテナント プロジェクトに配置されているため、ゾーンの停止をシミュレートすることはできません。
環境が正常であることを確認する
フェイルオーバー テストは、正常な環境でのみ実行してください。環境が正常であることを確認するには:
Google Cloud コンソールで、[環境] ページに移動します。
環境のリストで、ご利用の環境の名前をクリックします。[環境の詳細] ページが開きます。
[Monitoring] タブに移動します。
すべての健全性指標が緑色であることを確認します。
データベース フェイルオーバー テストを実行する
Google Cloud CLI コマンドでトリガーすることで、ゾーンの停止をシミュレートするデータベース フェイルオーバー テストを実行できます。たとえば、環境のデータベースが別のゾーンに切り替わるまでの時間を測定できます。
ご使用の環境でデータベース フェイルオーバー テストを実行するには:
環境が正常であることを確認します。
環境のデータベースのプライマリ ゾーンを取得します。
gcloud composer environments fetch-database-properties \ ENVIRONMENT_NAME \ --location LOCATION以下を置き換えます。
ENVIRONMENT_NAME: Cloud Composer 環境の名前LOCATION: 環境が配置されているリージョン。
例:
gcloud composer environments fetch-database-properties \ example-environment \ --location us-central1データベース フェイルオーバー テストを開始します。
gcloud composer environments database-failover \ ENVIRONMENT_NAME \ --location LOCATION以下を置き換えます。
ENVIRONMENT_NAME: Cloud Composer 環境の名前LOCATION: 環境が配置されているリージョン。
例:
gcloud composer environments database-failover \ example-environment \ --location us-central1データベース フェイルオーバー テストが完了するまで待ちます。この処理には最長で 3 分ほどかかる場合があります。
環境のデータベースのプライマリ ゾーンが変更されていることを確認します。
gcloud composer environments fetch-database-properties \ ENVIRONMENT_NAME \ --location LOCATION環境の健全性指標を調べて、環境が正常であることを確認します。
フェイルオーバーに使用できるデータベース(
composer.googleapis.com/environment/database/available_for_failover)環境指標がTrueになると、環境のデータベースが別のフェイルオーバーに対する準備が整います。Cloud Monitoring で環境の指標を表示する方法の詳細については、環境をモニタリングするをご覧ください。