Auf dieser Seite wird die Einrichtung des Anthos Service Mesh für Ihr Cloud-Projekt und Google Kubernetes Engine-Cluster (GKE) für ein Mesh-Netzwerk aus Clustern, die sich im selben Projekt befinden, erklärt. Wenn Sie das von Google bereitgestellte Skript install_asm
verwenden, kann das Skript Ihr Projekt und Ihren Cluster für Sie konfigurieren, wenn Sie das Flag --enable_all
oder die detaillierteren Flags für die Aktivierungangeben.
Folgen Sie der Anleitung auf dieser Seite, wenn Sie die Änderungen lieber selbst vornehmen möchten, ohne dass install_asm
die Änderungen vornimmt. Wenn Sie bereits eine frühere Version von Anthos Service Mesh installiert haben, müssen Sie keine Änderungen an Ihrem Projekt oder Cluster vornehmen, bevor Sie mit install_asm
ein Upgrade auf die neueste Version von Anthos Service Mesh durchführen.
Hinweise
- Informieren Sie sich über die Unterschiede zwischen Anthos und Anthos Service Mesh
- Lesen Sie die Voraussetzungen
- Wählen Sie eine Zertifizierungsstelle (CA) aus
- Cluster registrieren
- Installieren Sie die erforderlichen Tools.
Projekt einrichten
Rufen Sie die Projekt-ID und die Projektnummer des Projekts ab, in dem der Cluster erstellt wurde.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud projects list
Console
Wechseln Sie in der Google Cloud Console zur Seite Dashboard.
Klicken Sie oben auf der Seite auf die Drop-down-Liste. Wählen Sie im angezeigten Fenster Auswählen aus Ihr Projekt aus.
Die Projekt-ID und die Projektnummer werden auf der Dashboard-Karte Projektinformationen des Projekts angezeigt:
Erstellen Sie die folgenden Umgebungsvariablen:
Legen Sie den Arbeitslastpool mithilfe der Projekt-ID fest:
export WORKLOAD_POOL=PROJECT_ID.svc.id.goog
Legen Sie die Mesh-ID mithilfe der Projektnummer fest:
export MESH_ID="proj-PROJECT_NUMBER"
Legen Sie die erforderlichen IAM-Rollen (Identitäts- und Zugriffsverwaltung) fest. Wenn Sie Projektinhaber sind, haben Sie alle erforderlichen Berechtigungen, um die Installation abzuschließen. Wenn Sie kein Projektinhaber sind, benötigen Sie jemanden, der Ihnen die folgenden spezifischen IAM-Rollen zuweisen kann. Ersetzen Sie im folgenden Befehl
PROJECT_ID
durch die Projekt-ID aus dem vorherigen Schritt undGCP_EMAIL_ADDRESS
durch das Konto, mit dem Sie sich bei Google Cloud anmelden.ROLES=( 'roles/servicemanagement.admin' \ 'roles/serviceusage.serviceUsageAdmin' \ 'roles/meshconfig.admin' \ 'roles/compute.admin' \ 'roles/container.admin' \ 'roles/resourcemanager.projectIamAdmin' \ 'roles/iam.serviceAccountAdmin' \ 'roles/iam.serviceAccountKeyAdmin' \ 'roles/gkehub.admin') for role in "${ROLES[@]}" do gcloud projects add-iam-policy-binding PROJECT_ID \ --member "user:GCP_EMAIL_ADDRESS" \ --role="$role" done
Wenn Sie beim Ausführen von
install_asm
das Flag--enable_all
oder--enable_gcp_iam_roles
angeben, werden die erforderlichen IAM-Rollen für Sie festgelegt.Aktivieren Sie folgende Google APIs:
gcloud services enable \ --project=PROJECT_ID \ container.googleapis.com \ compute.googleapis.com \ monitoring.googleapis.com \ logging.googleapis.com \ cloudtrace.googleapis.com \ meshca.googleapis.com \ meshtelemetry.googleapis.com \ meshconfig.googleapis.com \ iamcredentials.googleapis.com \ gkeconnect.googleapis.com \ gkehub.googleapis.com \ cloudresourcemanager.googleapis.com \ stackdriver.googleapis.com
Die Aktivierung der APIs kann einige Minuten dauern. Wenn die APIs aktiviert sind, sieht die Ausgabe in etwa so aus:
Operation "operations/acf.601db672-88e6-4f98-8ceb-aa3b5725533c" finished successfully.
Wenn Sie beim Ausführen von
install_asm
das Flag--enable_all
oder--enable_apis
angeben, werden die erforderlichen APIs für Sie aktiviert.
Cluster einrichten
Wenn Sie den Parameter-Flag --enable_all
oder einen der detaillierteren
Flags für die Aktivierung einschließen, richtet das install_asm
-Skript Ihren Cluster ein.
Legen Sie die Standardzone oder -region für das Google Cloud-CLI fest. Wenn Sie hier keine Standardeinstellung festlegen, müssen Sie in den
gcloud container clusters
-Befehlen auf dieser Seite entweder die Option--zone
oder--region
angeben.Wenn Sie einen Cluster mit einer einzelnen Zone haben, legen Sie die Standardzone fest:
gcloud config set compute/zone CLUSTER_LOCATION
Wenn Sie einen regionalen Cluster haben, legen Sie die Standardregion fest:
gcloud config set compute/region CLUSTER_LOCATION
Legen Sie das Label
mesh_id
für den Cluster fest. Wenn Sie die vorhandenen Labels des Clusters übernehmen möchten, müssen Sie diese Labels beim Hinzufügen des Labelsmesh_id
angeben.So prüfen Sie, ob Ihr Cluster vorhandene Labels hat:
gcloud container clusters describe CLUSTER_NAME \ --project PROJECT_ID
Suchen Sie in der Ausgabe nach dem Feld
resourceLabels
. Jedes Label wird in einer separaten Zeile unter dem FeldresourceLabels
gespeichert. Beispiel:resourceLabels: csm: '' env: dev release: stable
Zur Vereinfachung können Sie die Labels einer Umgebungsvariablen hinzufügen. Ersetzen Sie im Folgenden
YOUR_EXISTING_LABELS
durch eine durch Kommas getrennte Liste der vorhandenen Labels im Cluster im FormatKEY=VALUE
. Beispiel:env=dev,release=stable
export EXISTING_LABELS="YOUR_EXISTING_LABELS"
Legen Sie das Label
mesh_id
fest:Wenn Ihr Cluster bereits vorhandene Labels hat, die Sie beibehalten möchten, aktualisieren Sie den Cluster mit der
mesh_id
und den vorhandenen Labels:gcloud container clusters update CLUSTER_NAME \ --project PROJECT_ID \ --update-labels=mesh_id=${MESH_ID},${EXISTING_LABELS}
Wenn der Cluster keine vorhandenen Labels hat, aktualisieren Sie den Cluster nur mit dem Label
mesh_id
:gcloud container clusters update CLUSTER_NAME \ --project=PROJECT_ID \ --update-labels=mesh_id=${MESH_ID}
Aktivieren Sie Workload Identity:
gcloud container clusters update CLUSTER_NAME \ --project=PROJECT_ID \ --workload-pool=${WORKLOAD_POOL}
Die Aktivierung von Workload Identity kann bis zu 10 bis 15 Minuten dauern.
Initialisieren Sie Ihr Projekt, um es für die Installation vorzubereiten. Mit diesem Befehl wird unter anderem ein Dienstkonto erstellt, mit dem Komponenten der Datenebene, wie der Sidecar-Proxy, sicher auf die Daten und Ressourcen Ihres Projekts zugreifen können.
curl --request POST \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --data '' \ "https://meshconfig.googleapis.com/v1alpha1/projects/PROJECT_ID:initialize"
Der Befehl gibt ein Paar leere geschweifte Klammern zurück:
{}
Aktivieren Sie Cloud Monitoring und Cloud Logging in GKE:
gcloud container clusters update CLUSTER_NAME \ --project=PROJECT_ID \ --logging=SYSTEM,WORKLOAD \ --monitoring=SYSTEM
Ihr Projekt und Ihr GKE-Cluster sind jetzt für eine neue Installation oder Migration von Istio mit install_asm
bereit. Wenn Sie Anthos Service Mesh mit dem Profil install_asm
installieren, führt das Skript Folgendes aus:
- Validiert Ihr Projekt und den Cluster.
- Erstellt ein Dienstkonto in Ihrem Projekt, damit die Komponenten der Steuerungsebene auf die Daten und Ressourcen Ihres Projekts zugreifen können.
- Konfiguriert die erforderlichen benutzerdefinierten
IstioOperator
-Ressourcendateien mit Ihren Projekt- und Clusterinformationen, um Standardfeatures zu aktivieren. - Ruft
istioctl install
auf. Sie können zusätzliche benutzerdefinierteIstioOperator
-Ressourcendateien angeben, wenn Sieinstall_asm
aufrufen, um optionale Features zu aktivieren.
Nächste Schritte
- Für Neuinstallationen lesen Sie Anthos Service Mesh installieren.
- Informationen zum Migrieren von Istio zu Anthos Service Mesh finden Sie unter Von Istio migrieren.