Diese Schritte gelten speziell für die gebündelte Version von Istio, die standardmäßig in der Knative Serving-Bereitstellung GKE-Add-on enthalten ist.
Da die gebündelte Version von Istio bei der Deinstallation des Knative-Serving-GKE-Add-ons deinstalliert wird, installieren die Schritte auf dieser Seite Cloud Service Mesh auf Ihrem Cluster und konfigurieren dann Ihr Ingress-Gateway.
Hinweise
Sie müssen zuerst prüfen, ob die Anforderungen für das Upgrade erfüllt sind.
In den Befehlen auf dieser Seite werden die Umgebungsvariablen und das Migrationsskript aus dem Vorbereitungsschritt für das Upgrade verwendet.
Es ist wichtig, dass Sie jeden Schritt dieses Prozesses in der angegebenen Reihenfolge ausführen.
Übersicht
Im Allgemeinen ist der Vorgang zur Installation von Cloud Service Mesh bei der Migration von der gebündelten Version von Istio mit dem Vorgang einer sauberen Installation von Cloud Service Mesh identisch. Bei diesem Prozess wird Cloud Service Mesh Version 1.18 mit der clusterinternen Steuerungsebene installiert.
Cloud Service Mesh Version 1.18 installieren
Sie installieren Cloud Service Mesh mithilfe der Cloud Service Mesh-Installationsdokumentation.
Hinweis:
Für die Migration muss das Ingress-Gateway während der nachfolgenden Konfigurationsschritte separat installiert werden. Das Installationsskript installiert das Ingress-Gateway nicht standardmäßig.
Optional: Wenn Sie die Cloud Service Mesh-Zertifizierungsstelle (Mesh CA) verwenden, müssen Sie auch das Flag
--ca mesh_ca
in das Installationsskript für Cloud Service Mesh einbeziehen.
So installieren Sie Cloud Service Mesh:
Folgen Sie der Anleitung in der Cloud Service Mesh-Dokumentation: Cloud Service Mesh-Version 1.18 installieren
- Beispiel
Das folgende Beispiel zeigt den Standardbefehl, der das erforderliche Flag enthält:
./asmcli install \ --project_id ${PROJECT_ID} \ --cluster_name ${CLUSTER_NAME} \ --cluster_location ${CLUSTER_LOCATION} \ --ca mesh_ca \ --output_dir DIR_PATH \ --enable_all
Cloud Service Mesh-Ingress konfigurieren
In diesem Abschnitt wird das Migrationsskript verwendet, um das Cloud Service Mesh-Ingress-Gateway im Namespace gke-system
zu erstellen.
Für die Migration wird der Namespace gke-system
verwendet, sodass das Ingress-Gateway in dem Namespace platziert wird, der vom kürzlich entfernten "gebündelten Istio" verwendet wurde. Daher können die Cloud Service Mesh-Ingress-Pods nahtlos Traffic ohne die erforderlichen Konfigurationsänderungen am Ingress-Dienst übernehmen. Beispielsweise müssen Sie keine neue externe IP-Adresse konfigurieren.
Führen Sie den folgenden Befehl aus, um das Ingress-Gateway im Namespace
gke-system
zu erstellen, um das Migrationsskript zu starten:./migration-addon.sh --command set-up-asm-ingress
Die Terminalausgabe während des Prozesses sieht in etwa so aus:
Setting up Cloud Service Mesh ingress. Note that the Cloud Service Mesh ingress is not serving traffic at this step. namespace/gke-system labeled deployment.apps/istio-ingressgateway created horizontalpodautoscaler.autoscaling/istio-ingressgateway created role.rbac.authorization.k8s.io/istio-ingressgateway-sds created rolebinding.rbac.authorization.k8s.io/istio-ingressgateway-sds created Cloud Service Mesh ingress is successfully installed.
Prüfen Sie mit dem folgenden Befehl, ob das Ingress-Gateway
istio-ingrerssgateway
im Namespacegke-system
ausgeführt wird:kubectl get deployment istio-ingressgateway -n gke-system
Beachten Sie, dass die Anzahl der
istio-ingressgateway
-Pods absichtlich0
ist. Nach der Installation der Knative Serving-Flottenkomponente gibt es einen nachfolgenden Schritt, um den gesamten Traffic zum Cloud Service Mesh-Ingress zu migrieren.
Nächste Schritte
Flottenkomponente installieren
Rollback
Wenn Sie ein Rollback der vorhergehenden Schritte durchführen müssen, können Sie das Migrationsskript für Folgendes verwenden:
- Löschen Sie das Cloud Service Mesh-Ingress-Gateway.
- Deinstallieren Sie Cloud Service Mesh.
So führen Sie ein Rollback der Cloud Service Mesh-Konfiguration und -Installation durch:
Führen Sie den folgenden Befehl aus, um das Rollback zu starten.
./migration-addon.sh --command rollback-set-up-asm-ingress
Die Terminalausgabe während des Prozesses sieht in etwa so aus:
Deleting Cloud Service Mesh ingress deployment.apps "istio-ingressgateway" deleted horizontalpodautoscaler.autoscaling "istio-ingressgateway" deleted role.rbac.authorization.k8s.io "istio-ingressgateway-sds" deleted rolebinding.rbac.authorization.k8s.io "istio-ingressgateway-sds" deleted Cloud Service Mesh ingress is successfully deleted.
Prüfen Sie, ob das Cloud Service Mesh-Ingress-Gateway entfernt wurde. Prüfen Sie dazu, ob der
istio-ingressgateway
-Dienst nicht mehr im Namespacegke-system
vorhanden ist:kubectl get deployment istio-ingressgateway -n gke-system
Wenn Sie alle Änderungen der ursprünglichen Installation weiterhin rückgängig machen möchten, führen Sie ein Rollback des Knative Serving-GKE-Add-on durch.