このドキュメントでは、グローバル外部アプリケーション ロードバランサ インフラストラクチャから従来のアプリケーション ロードバランサ インフラストラクチャに移行されたリソースをロールバックする方法について説明します。
ロード バランシング スキームを変更してから 90 日以内に移行したリソースをロールバックするには、次の順序で操作します。
- 転送ルール。
- 転送ルールに関連付けられているバックエンド バケットへのトラフィック。
- 転送ルールに関連付けられているバックエンド サービス。
- 転送ルールに関連付けられているバックエンド サービスへのトラフィック。
バックエンド サービスを EXTERNAL
ロード バランシング スキームにロールバックするには、転送ルールもロールバックする必要があります。転送ルールを EXTERNAL
ロード バランシング スキームにロールバックする場合、関連付けられているバックエンド サービスをロールバックする必要はありません。バックエンド バケットが転送ルールに関連付けられている場合は、バックエンド バケットの状態を TEST_ALL_TRAFFIC
に変更する必要があります。
始める前に
移行したリソースをロールバックする前に、従来のアプリケーション ロードバランサのリソースをグローバル外部アプリケーション ロードバランサ インフラストラクチャに移行し、ロード バランシング スキームを EXTERNAL_MANAGED
に変更していることを確認します。ロールバックできるのは、過去 90 日以内に EXTERNAL
スキームから EXTERNAL_MANAGED
スキームに移行されたリソースのみです。
また、リソースのロールバックを開始する前に、リソースに構成されている新しい高度なトラフィック管理機能を削除する必要があります。
権限
このドキュメントの手順を行うには、ロードバランサ コンポーネントを管理する権限が必要です。Compute ネットワーク管理者のロール(roles/compute.networkAdmin
)があることを確認します。
詳しくは次のページをご覧ください。
転送ルールをロールバックする
転送ルールのロード バランシング スキームを
EXTERNAL_MANAGED
からEXTERNAL
に変更します。バックエンド バケットが転送ルールに関連付けられている場合は、この手順をスキップして、バックエンド バケットをロールバックします。
gcloud compute forwarding-rules update web-map-http-forwarding-rule \ --load-balancing-scheme=EXTERNAL \ --global
しばらく待ちます(約 6 分)。
省略可: 転送ルールのログをチェックします。ロード バランシング スキームが
EXTERNAL
に変更されていることがわかります。
バックエンド バケットをロールバックする
バックエンド バケットのスキーマを
EXTERNAL
に、移行状態をTEST_ALL_TRAFFIC
に変更します。gcloud compute forwarding-rules update web-map-http-forwarding-rule \ --load-balancing-scheme=EXTERNAL \ --external-managed-backend-bucket-migration-state=TEST_ALL_TRAFFIC \ --global
しばらく待ちます(約 6 分)。
省略可: 従来のアプリケーション ロードバランサのネットワーク トラフィックの一部をバックエンド バケットに送信するには、バックエンド バケットの移行状態を
TEST_BY_PERCENTAGE
に変更し、割合を設定します。gcloud compute forwarding-rules update web-map-http-forwarding-rule \ --external-managed-backend-bucket-migration-state=TEST_BY_PERCENTAGE \ --external-managed-backend-bucket-migration-testing-percentage=10 \ --global
しばらく待ちます(約 6 分)。
バックエンド バケットの移行状態を
PREPARE
に変更します。gcloud compute forwarding-rules update web-map-http-forwarding-rule \ --external-managed-backend-bucket-migration-state=PREPARE \ --global
しばらく待ちます(約 6 分)。
バックエンド バケットの移行状態を移行前の状態に変更します。
gcloud compute forwarding-rules update web-map-http-forwarding-rule \ --clear-external-managed-migration-state \ --global
しばらく待ちます(約 6 分)。
バックエンド サービスをロールバックする
バックエンド サービスのスキーマを
EXTERNAL
に変更し、移行状態をTEST_ALL_TRAFFIC
に変更します。gcloud compute backend-services update web-backend-service \ --load-balancing-scheme=EXTERNAL \ --external-managed-migration-state=TEST_ALL_TRAFFIC \ --global
しばらく待ちます(約 6 分)。
省略可: 従来のアプリケーション ロードバランサのネットワーク トラフィックの一部をバックエンド サービスに送信するには、バックエンド サービスの移行状態を
TEST_BY_PERCENTAGE
に変更し、割合を設定します。gcloud compute backend-services update web-backend-service \ --external-managed-migration-state=TEST_BY_PERCENTAGE \ --external-managed-migration-testing-percentage=10 \ --global
しばらく待ちます(約 6 分)。
バックエンド サービスの移行状態を
PREPARE
に変更します。gcloud compute backend-services update web-backend-service \ --external-managed-migration-state=PREPARE \ --global
しばらく待ちます(約 6 分)。
バックエンド サービスの移行状態を移行前の状態に変更します。
gcloud compute backend-services update web-backend-service \ --clear-external-managed-migration-state \ --global
しばらく待ちます(約 6 分)。
バックエンド サービスをロールバックしたら、そのログを確認します。ロード バランシング スキームが
EXTERNAL
に変更されていることがわかります。