Stay organized with collections
Save and categorize content based on your preferences.
These steps are specific to installations that identified that the ingress
gateway of the Istio on GKE
was configured in their cluster. In this process Cloud Service Mesh version
1.18 is installed with the managed control plane.
Before you begin
Migrating from the "Istio add-on" requires that you to use Cloud Service Mesh
with the
Google-managed control plane.
Therefore, the Cloud Service Mesh
In-cluster control plane is not
a supported migration option.
The commands on this page use the environment variables and migration script
from the upgrade preparation step.
It is important that you perform each step of this process in the
specified order.
Overview
In general, the process for migrating from the "Istio add-on" to Cloud Service Mesh
with the managed control plane includes:
Installing the Cloud Service Mesh managed control plane.
Using the migration script to configure the
Cloud Service Mesh ingress gateway.
Migrate to Cloud Service Mesh version 1.18
You must follow the detailed instructions in the Cloud Service Mesh document
"Migrating from Istio on GKE to Cloud Service Mesh".
After you complete the installation and have migrated your
workloads, return to this page to complete the remaining configuration steps.
Use the "Istio add-on migration instructions" to migrate your installation to
Cloud Service Mesh with the Google-managed control plane.
Key items to be aware of during that process:
If you are prompted that the custom envoy filters are not supported.
Simply, choose "yes" to continue the migration. Example:
Detected custom envoy filters are not supported by Cloud Service Mesh.
Please remove these if possible
NAMESPACE NAME AGE
gke-system allowconnect-cluster-local-gateway 26m
Continue anyways? [y/N] Y
The migration instructions include the section
Complete a successful migration, which performs steps to finalize your
Cloud Service Mesh installation.
Important: After performing those steps, you will no longer be able to
rollback your changes.
After you complete the migration steps and have
Migrated your workload to Cloud Service Mesh,
run the following commands to restart and label your ingress pods in the
knative-serving namespace:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Migrate the Istio add-on to Cloud Service Mesh\n\nThese steps are specific to installations that identified that the ingress\ngateway of the [Istio on GKE](/istio/docs/istio-on-gke/overview)\nwas configured in their cluster. In this process Cloud Service Mesh version\n1.18 is installed with the managed control plane.\n| **Important:** If you installed the bundled version of Istio that is included by default with the \"*GKE add-on* \", you must instead follow the steps in [migrate the bundled Istio to Cloud Service Mesh](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade/uninstall-istio-addon).\n\nBefore you begin\n----------------\n\n- Migrating from the \"*Istio add-on* \" requires that you to use Cloud Service Mesh\n with the\n [Google-managed control plane](/service-mesh/docs/managed/supported-features-mcp).\n Therefore, the Cloud Service Mesh\n [In-cluster control plane](/service-mesh/v1.18/docs/supported-features) is not\n a supported migration option.\n\n- You must first review and ensure that you meet the\n [requirements for upgrading](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade).\n\n- The commands on this page use the environment variables and migration script\n from the [upgrade preparation step](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade/prepare).\n\n- It is important that you perform each step of this process in the\n [specified order](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade#upgrading).\n\nOverview\n--------\n\nIn general, the process for migrating from the \"*Istio add-on*\" to Cloud Service Mesh\nwith the managed control plane includes:\n\n1. Installing the Cloud Service Mesh managed control plane.\n2. Using the [migration script](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade/prepare) to configure the Cloud Service Mesh ingress gateway.\n\nMigrate to Cloud Service Mesh version 1.18\n------------------------------------------\n\nYou must follow the detailed instructions in the Cloud Service Mesh document\n\"*Migrating from Istio on GKE to Cloud Service Mesh*\".\nAfter you complete the installation and have migrated your\nworkloads, return to this page to complete the remaining configuration steps.\n\n1. Use the \"Istio add-on migration instructions\" to migrate your installation to\n Cloud Service Mesh with the Google-managed control plane.\n\n Key items to be aware of during that process:\n - If you are prompted that the `custom envoy filters are not supported`.\n Simply, choose \"yes\" to continue the migration. Example:\n\n Detected custom envoy filters are not supported by Cloud Service Mesh.\n Please remove these if possible\n NAMESPACE NAME AGE\n gke-system allowconnect-cluster-local-gateway 26m\n Continue anyways? [y/N] Y\n\n - The migration instructions include the section\n *Complete a successful migration* , which performs steps to finalize your\n Cloud Service Mesh installation.\n **Important**: After performing those steps, you will no longer be able to\n rollback your changes.\n\n **Istio add-on migration instructions** :\n [Migrating from Istio on GKE to Cloud Service Mesh](/istio/docs/istio-on-gke/migrate-to-anthos-service-mesh)\n2. After you complete the migration steps and have\n [Migrated your workload to Cloud Service Mesh](/istio/docs/istio-on-gke/migrate-to-anthos-service-mesh#migrate-workloads),\n run the following commands to restart and label your ingress pods in the\n `knative-serving` namespace:\n\n 1. Restart your ingress pods:\n\n kubectl rollout restart deployment autoscaler activator webhook -n knative-serving\n\n 2. Add the `istio: ingressgateway` label:\n\n kubectl patch deployment ${INGRESS_NAME} --namespace ${INGRESS_NAMESPACE} --patch '{\"spec\": {\"template\": {\"metadata\": {\"labels\": {\"istio\": \"ingressgateway\"}}}}}'\n\nConfigure Cloud Service Mesh Ingress\n------------------------------------\n\nIn this section, the [migration script](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade/prepare) is used to\nset the\n[release channel](/service-mesh/docs/release-channels-managed-service-mesh#how_to_select_a_release_channel)\nto `asm-managed-rapid` for the Cloud Service Mesh managed control plane.\n\nRun the following command to start the migration script: \n\n ./migration-addon.sh \\\n --asm-revision asm-managed-rapid \\\n --command set-up-asm-ingress\n\nWhat's next\n-----------\n\n[Install the fleet component](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade/fleet-install-script)\n\nRollback\n--------\n\nIf you need to rollback the changes that you made through the steps above, you\ncan:\n\n- Use the migration script to delete the Cloud Service Mesh ingress.\n- Rollback the installation of Cloud Service Mesh.\n\nTo rollback the installation and configuration of Cloud Service Mesh with the\nGoogle-managed control plane:\n\n1. Run the following command to delete the Cloud Service Mesh ingress:\n\n ./migration-addon.sh --command rollback-set-up-asm-ingress\n\n The terminal output during the process looks similar to the following: \n\n Deleting Cloud Service Mesh ingress\n deployment.apps \"istio-ingressgateway\" deleted\n horizontalpodautoscaler.autoscaling \"istio-ingressgateway\" deleted\n role.rbac.authorization.k8s.io \"istio-ingressgateway-sds\" deleted\n rolebinding.rbac.authorization.k8s.io \"istio-ingressgateway-sds\" deleted\n Cloud Service Mesh ingress is successfully deleted.\n\n2. To verify the rollback, check that the `istio-ingressgateway` service\n no longer exists in the `gke-system` namespace:\n\n kubectl get deployment istio-ingressgateway -n gke-system\n\n3. [Rollback Cloud Service Mesh installation](/istio/docs/istio-on-gke/migrate-to-anthos-service-mesh#roll-back-changes)\n\n4. Run the following command to re-enable the \"*Istio add-on*\":\n\n ./migration-addon.sh --command rollback-uninstall-istio-addon\n\n5. To continue rolling back your changes to your installation's original state,\n [rollback the Istio add-on](/kubernetes-engine/enterprise/knative-serving/docs/install/on-gcp/upgrade/uninstall-istio-addon#rollback)."]]