[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-22。"],[],[],null,["# Roll back migrated resources to classic Application Load Balancer\n\nThis document describes how to roll back the [migrated\nresources](/load-balancing/docs/https/migrate-from-classic-global) from the\nglobal external Application Load Balancer infrastructure to the classic Application Load Balancer\ninfrastructure.\n\nUse the following order to roll back a migrated resource within 90 days of\nchanging its load balancing scheme:\n\n1. Roll back the forwarding rule.\n2. Roll back the backend buckets.\n3. Roll back all the backend services attached to the forwarding rule.\n\nTo roll back a backend service to the `EXTERNAL` load balancing scheme, you must\nfirst roll back the forwarding rule.\n\nBefore you begin\n----------------\n\nBefore you roll back migrated resources, make sure that you've [migrated the\nclassic Application Load Balancer resources to the global external Application Load Balancer\ninfrastructure](/load-balancing/docs/https/migrate-from-classic-global) and\nchanged their load balancing schemes to `EXTERNAL_MANAGED`. Remember, only\nresources that were migrated to the `EXTERNAL_MANAGED` scheme from the\n`EXTERNAL` scheme in the last 90 days can be rolled back.\n\nYou must also remove any [advanced traffic management\nfeatures](/load-balancing/docs/https/traffic-management-global) configured on\nthe resources before you start the rollback process.\n\n### Permissions\n\nTo follow this document, you must have permissions to manage load balancer\ncomponents. Make sure you have the [Compute Network Admin\nrole](/compute/docs/access/iam#compute.networkAdmin)\n(`roles/compute.networkAdmin`).\n\nFor more information, see the following pages:\n\n- [Roles and permissions](/load-balancing/docs/access-control)\n- [IAM Conditions for forwarding rules](/load-balancing/docs/access-control/iam-conditions)\n\nRoll back the forwarding rule\n-----------------------------\n\n### Console\n\nTo roll back forwarding rules, use the gcloud CLI.\n\n### gcloud\n\n1. Change the load balancing scheme of the forwarding rule from\n `EXTERNAL_MANAGED` to `EXTERNAL`.\n\n If a backend bucket is attached to the forwarding rule, skip this step and\n [roll back the backend bucket](#roll-back-backend-bucket). \n\n ```\n gcloud compute forwarding-rules update web-map-http-forwarding-rule \\\n --load-balancing-scheme=EXTERNAL \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n2. Optional: Check the logs of the forwarding rule. You see the load\n balancing scheme has changed to `EXTERNAL`.\n\nRoll back the backend bucket\n----------------------------\n\n### Console\n\nTo roll back backend buckets, use the gcloud CLI.\n\n### gcloud\n\n1. Change the scheme of the backend bucket to `EXTERNAL` and the migration\n state to `TEST_ALL_TRAFFIC`.\n\n ```\n gcloud compute forwarding-rules update web-map-http-forwarding-rule \\\n --load-balancing-scheme=EXTERNAL \\\n --external-managed-backend-bucket-migration-state=TEST_ALL_TRAFFIC \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n2. To send some classic Application Load Balancer network traffic to\n the backend bucket, change the migration state of the backend bucket to\n `TEST_BY_PERCENTAGE` and set the percentage.\n\n ```\n gcloud compute forwarding-rules update web-map-http-forwarding-rule \\\n --external-managed-backend-bucket-migration-state=TEST_BY_PERCENTAGE \\\n --external-managed-backend-bucket-migration-testing-percentage=10 \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n\n You can check the [load balancer's\n metrics](/load-balancing/docs/https/https-logging-monitoring#monitoring_metrics)\n to verify that the overall balance of requests matches your configured\n rollback rate.\n3. Change the migration state of the backend bucket to `PREPARE`.\n\n ```\n gcloud compute forwarding-rules update web-map-http-forwarding-rule \\\n --external-managed-backend-bucket-migration-state=PREPARE \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n4. Change the migration state of the backend bucket to its pre-migration state.\n\n ```\n gcloud compute forwarding-rules update web-map-http-forwarding-rule \\\n --clear-external-managed-backend-bucket-migration-state \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n\nRoll back the backend service\n-----------------------------\n\n### Console\n\n**Send traffic to the classic Application Load Balancer infrastructure**\n\n1. In the **Backend services** section, for **`web-backend-service`** , verify the following, and click **Revert** .\n - **Status** : **Migrated**\n - **Migration rate** : **100%**\n - **Scheme activity** : **EXTERNAL: 0% EXTERNAL_MANAGED: 100%**\n2. In the **Manage migration** pane, for **Status change** , select **Test\n all traffic**. This means that all requests are still sent to the global external Application Load Balancer infrastructure.\n3. Click **Save** .\n Wait for some time (at least six minutes) for the\n resource to be migrated. The **Status** column changes to\n **Testing all traffic** and **Scheme activity** to **EXTERNAL: 0%\n EXTERNAL_MANAGED: 100%**.\n\n4. Click **Manage migration** again.\n\n5. In the **Manage migration** pane, for **Status change** , select **Test\n by percentage**.\n\n6. For **Testing percentage** , enter `90`. This means that 90 percent of\n requests continue to go to the global external Application Load Balancer infrastructure\n and the remaining 10 percent of requests will go to the\n classic Application Load Balancer infrastructure for testing.\n\n7. Click **Save**.\n\n Wait for some time (at least six minutes) for the resource to be\n ready. The **Status** column changes to **Testing by %** , **Migration\n rate** to **90%** , and **Scheme activity** will be **EXTERNAL: 10%\n EXTERNAL_MANAGED: 90%**.\n\n After the resource is ready, it sends 90% of requests to the\n global external Application Load Balancer infrastructure and 10% of requests to\n the classic Application Load Balancer infrastructure.\n8. Test the load balancer to ensure that requests are being served as\n expected.\n\n Enter `http://`\u003cvar translate=\"no\"\u003eIP_ADDRESS\u003c/var\u003e in the\n address bar of the web browser. You should see the `Page served\n from: lb-backend-example-xxxx` message.\n9. You can repeat these steps to progressively decrease the percentage of\n traffic sent to the global external Application Load Balancer infrastructure.\n\n The backend service rollback process is complete when you are sending all\n traffic to the classic Application Load Balancer. The **Status** column will be\n **Testing by %** , **Migration rate** set to **0%** , and **Scheme\n activity** will be **EXTERNAL: 100% EXTERNAL_MANAGED: 0%**.\n\n### gcloud\n\n1. Change the scheme of the backend service to `EXTERNAL` and the migration\n state to `TEST_ALL_TRAFFIC`.\n\n ```\n gcloud compute backend-services update web-backend-service \\\n --load-balancing-scheme=EXTERNAL \\\n --external-managed-migration-state=TEST_ALL_TRAFFIC \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n2. To send some classic Application Load Balancer network traffic to\n the backend service, change the migration state of the backend service to\n `TEST_BY_PERCENTAGE` and set the percentage.\n\n ```\n gcloud compute backend-services update web-backend-service \\\n --external-managed-migration-state=TEST_BY_PERCENTAGE \\\n --external-managed-migration-testing-percentage=10 \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n\n You can check the [load balancer's\n metrics](/load-balancing/docs/https/https-logging-monitoring#monitoring_metrics)\n to verify that the overall balance of requests matches your configured\n rollback rate.\n3. Change the migration state of the backend service to `PREPARE`.\n\n ```\n gcloud compute backend-services update web-backend-service \\\n --external-managed-migration-state=PREPARE \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n4. Change the migration state of the backend service to its pre-migration state.\n\n ```\n gcloud compute backend-services update web-backend-service \\\n --clear-external-managed-migration-state \\\n --global\n ```\n\n Wait for some time (at least six minutes).\n5. After rolling back the backend service, check its log. You see the load\n balancing scheme has changed to `EXTERNAL`."]]