asmcli-Referenz
Auf dieser Seite werden die für asmcli verfügbaren Argumente erläutert.
Optionen
Sie haben folgende Möglichkeiten, den Cluster zu identifizieren:
Nur GKE
-p|--project_id CLUSTER_PROJECT_ID- Die Projekt-ID des Projekts, in dem der Cluster erstellt wurde.
-n|--cluster_name CLUSTER_NAME- Der Name des Clusters.
-l|--cluster_location CLUSTER_LOCATION- Entweder die Zone (bei Einzelzonenclustern) oder die Region (bei regionalen Clustern), in der der Cluster erstellt wurde.
Alle Plattformen
--kubeconfig KUBECONFIG_FILE
Der vollständige Pfad zur kubeconfig-Datei. Die Umgebungsvariable $PWD funktioniert hier nicht.
--ctx|--context KUBE_CONTEXT
Der zu verwendende kubeconfig-Kontext. Wenn keine Angabe erfolgt, verwendet asmcli den Standardkontext.
-c|--ca {mesh_ca|gcp_cas|citadel}Die Zertifizierungsstelle, die zum Verwalten von Zertifikaten für gegenseitiges TLS verwendet werden soll. Geben Sie
mesh_caan, um die Cloud Service Mesh-Zertifizierungsstelle zu verwenden,gcp_casum Certificate Authority Service zu verwenden, odercitadelum die Istio-Zertifizierungsstelle zu verwenden. Managed Cloud Service Mesh unterstützt keine Istio-CA. Weitere Informationen finden Sie hier:--co|--custom_overlay OVERLAY_FILEVerwenden Sie
--custom_overlymit dem Namen einer YAML-Datei (als Overlay-Datei bezeichnet) mit der benutzerdefinierten RessourceIstioOperator, um die Steuerungsebene im Cluster zu konfigurieren. Sie geben eine Overlay-Datei an, um ein Feature zu aktivieren, das nicht standardmäßig aktiviert ist. Managed Cloud Service Mesh unterstützt dieIstioOperator-API nicht. Sie können also nicht--custom_overlayverwenden, um die verwaltete Steuerungsebene zu konfigurieren.asmclimuss die Overlay-Datei finden können. Sie muss sich daher entweder im selben Verzeichnis wieasmclibefinden oder Sie müssen einen relativen Pfad angeben. Wenn Sie mehrere Dateien hinzufügen möchten, geben Sie--co|--custom_overlayund den Dateinamen ein. Beispiel:--co overlay_file1.yaml --co overlay_file2.yaml --co overlay_file3.yaml--hub-registration-extra-flags HUB_REGISTRATION_EXTRA_FLAGSWenn Sie angehängte Amazon EKS-Cluster verwenden, nutzen Sie
--hub-registration-extra-flags, um den Cluster in der Flotte zu registrieren, wenn er nicht bereits registriert ist.-k|--key_file FILE_PATHDie Schlüsseldatei für ein Dienstkonto. Lassen Sie diese Option weg, wenn Sie kein Dienstkonto verwenden.
--network_id NETWORK_IDVerwenden Sie
--network_id, um das Labeltopology.istio.io/networkfestzulegen, das auf den Namespaceistio-systemangewendet wird. Bei GKE ist--network_idstandardmäßig der Netzwerkname für den Cluster. In anderen Umgebungen wirddefaultverwendet.-o|--option OVERLAY_FILEDer Name der Overlay-Datei (ohne die Erweiterung
.yaml), dieasmcliaus demanthos-service-mesh-Repository herunterlädt, um ein optionales Feature zu aktivieren. Sie benötigen eine Internetverbindung, um--optionzu verwenden. Die Optionen--optionund--custom_overlaysind ähnlich, aber ihr Verhalten unterscheidet sich geringfügig:Verwenden Sie
--custom_overlay, wenn Sie die Einstellungen in der Overlay-Datei ändern müssen.Verwenden Sie
--option, um ein Feature zu aktivieren, das keine Änderungen an der Overlay-Datei erfordert, z. B. zum Konfigurieren von Audit-Richtlinien für Ihre Dienste.
Wenn Sie mehrere Dateien hinzufügen möchten, geben Sie
-o|--optionund den Dateinamen ein. Beispiel:-o option_file1 -o option_file2 -o option_file3-D|--output_dir DIR_PATHWenn keine Angabe erfolgt, erstellt
asmcliein temporäres Verzeichnis, in das die Dateien und Konfigurationen für die Installation von Cloud Service Mesh heruntergeladen werden. Verwenden Sie das Flag--output-dir, um einen relativen Pfad zu einem Verzeichnis anzugeben, das stattdessen verwendet werden soll. Nach Abschluss enthält das angegebene Verzeichnis die Unterverzeichnisseasmundistio-1.19.10-asm.6. Das Verzeichnisasmenthält die Konfiguration für die Installation. Das Verzeichnisistio-1.19.10-asm.6enthält den extrahierten Inhalt der Installationsdatei, dieistioctl, Beispiele und Manifeste enthält. Wenn Sie--output-dirangeben und das Verzeichnis bereits die erforderlichen Dateien enthält, verwendetasmclidiese Dateien, anstatt sie noch einmal herunterzuladen.--platform PLATFORM {gcp|multicloud}Die Plattform oder der Anbieter des Kubernetes-Clusters. Standardmäßig ist
gcpfestgelegt (für GKE-Cluster). Verwenden Sie für alle anderen Plattformenmulticloud.-r|--revision_name REVISION NAMEEin Überarbeitungslabel ist ein Schlüssel/Wert-Paar, das auf der Steuerungsebene festgelegt wird. Der Labelschlüssel ist immer
istio.io/rev. Standardmäßig legtasmcliden Wert für das Überarbeitungslabel anhand der Cloud Service Mesh-Version fest, z. B.asm-11910-9. Fügen Sie diese Option ein, wenn Sie den Standardwert überschreiben und einen eigenen Wert angeben möchten. Das ArgumentREVISION NAMEmuss ein DNS-1035-Label sein. Für den Namen gilt also Folgendes:- Er darf höchstens 63 Zeichen enthalten.
- Er darf nur kleingeschriebene, alphanumerische Zeichen und "-" enthalten.
- Er muss mit einem Buchstaben beginnen.
- Er muss mit einem alphanumerischen Zeichen enden.
Der für die Validierung verwendete Regex lautet: '[a-z]([-a-z0-9]*[a-z0-9])?'
-s|--service_account ACCOUNT- Der Name eines Dienstkontos, das zum Installieren von Cloud Service Mesh verwendet wird. Wenn nicht angegeben, wird das aktive Nutzerkonto in der aktuellen
gcloud-Konfiguration verwendet. Wenn Sie das aktive Nutzerkonto ändern müssen, führen Sie gcloud auth login aus.
Optionen für benutzerdefiniertes Istio-CA-Zertifikat
Wenn Sie --ca citadel angegeben haben und eine benutzerdefinierte Zertifizierungsstelle nutzen, verwenden Sie die folgenden Optionen:
--ca_cert FILE_PATH: Zwischenzertifikat--ca_key FILE_PATH: Schlüssel für das Zwischenzertifikat--root_cert FILE_PATH: Root-Zertifikat--cert_chain FILE_PATH: Zertifikatskette
Weitere Informationen finden Sie unter Vorhandene CA-Zertifikate einbinden.
Flags zur Aktivierung
Über die Flags, die mit --enable beginnen, kann asmcli die erforderlichen Google APIs aktivieren, die erforderlichen IAM-Berechtigungen (Identity and Access Management) festlegen und Ihre Cluster aktualisieren. Sie können Ihr Projekt und Ihren Cluster auch selbst aktualisieren, bevor Sie asmcli ausführen. Alle Aktivierungs-Flags sind nicht mit asmcli validate kompatibel. Wenn Sie beim Ausführen von asmcli validate ein Aktivierungs-Flag angeben, wird der Befehl mit einem Fehler beendet.
-e|--enable_all- Damit lassen Sie zu, dass
asmclialle unten beschriebenen einzelnen Aktivierungsaktionen ausführt. --enable_cluster_roles- Damit erlauben Sie
asmcli, zu versuchen, den Google Cloud Nutzer oder das Dienst konto, auf demasmcliausgeführt wird, an diecluster-adminRolle in Ihrem Cluster zu binden.asmclibestimmt das Nutzerkonto über dengcloud config get core/accountBefehl. Wenn Sieasmclilokal mit einem Nutzerkonto ausführen, stellen Sie sicher, dass Sie den Befehlgcloud auth loginaufrufen, bevor Sieasmcliausführen. Wenn Sie das Nutzerkonto ändern müssen, führen Sie dengcloud config set core/account GCP_EMAIL_ADDRESSBefehl aus. Dabei ist GCP_EMAIL_ADDRESS das Konto, mit dem Sie sich anmelden Google Cloud. --enable_cluster_labels- Damit lassen Sie zu, dass
asmclidie erforderlichen Clusterlabels festlegt. --enable_gcp_componentsDamit erlauben Sie
asmcli, die folgenden erforderlichen Google Cloud verwalteten Dienste und Komponenten zu aktivieren:Workload Identity, mit der GKE-Anwendungen sicher auf Google Cloud Dienste zugreifen können.
--enable_gcp_apisDamit lassen Sie zu, dass
asmclialle erforderlichen Google APIs aktiviert.--enable_gcp_iam_rolesDamit lassen Sie zu, dass
asmclidie erforderlichen IAM-Berechtigungen festlegt.--enable_meshconfig_initDamit erlauben Sie dem Skript, den meshconfig-Endpunkt in Ihrem Namen zu initialisieren. Wird durch
--enable_gcp_componentsund--managedimpliziert.--enable_namespace_creationErlauben Sie
asmcli, den Stamm-Namespaceistio-systemzu erstellen.--enable_registrationDamit erlauben Sie
asmcli, den Cluster in dem Projekt zu registrieren, in dem sich der Cluster befindet. Wenn Sie dieses Flag nicht hinzufügen, führen Sie die Schritte unter Cluster registrieren aus, um den Cluster manuell zu registrieren. Im Gegensatz zu den anderen Aktivierungs-Flags ist--enable_registrationnur dann in--enable_allenthalten, wenn Sie eine Option wie--option hub-meshcaangeben, für die eine Clusterregistrierung erforderlich ist. Andernfalls müssen Sie dieses Flag separat angeben.
Weitere Flags
--dry_run- Befehle drucken, aber nicht ausführen.
--fleet_id- Registrieren Sie einen Cluster mit der Hostprojekt-ID des Gerätepools für eine Flotte. Dieses Flag ist
für Nicht-Google Cloud Cluster erforderlich. Wenn nicht für
Google Cloud Cluster angegeben, wird standardmäßig die Projekt-ID des Clusters verwendet. Sie können
asmcli installvor der Installation zusammen mit--fleet_idoder als Teil der Installation ausführen, indem Sie die Flags--enable-registrationund--fleet-idübergeben. Diese Einstellung kann nach der Konfiguration nicht mehr geändert werden. --managed- Stellen Sie eine verwaltete Remote-Steuerungsebene bereit, anstatt eine clusterintern zu installieren.
--offline- Führen Sie eine Offlineinstallation mit dem vorab heruntergeladenen Paket im Ausgabeverzeichnis durch. Wenn das Verzeichnis nicht angegeben ist oder die erforderlichen Dateien nicht enthält, wird das Skript mit einem Fehler beendet.
--only_enable- Führen Sie die angegebenen Schritte aus, um den aktuellen Nutzer/Cluster einzurichten. Es wird aber nichts installiert.
--only_validate- Führen Sie die Validierung durch, aber aktualisieren Sie nicht das Projekt oder den Cluster und installieren Sie nicht Cloud Service Mesh. Dieses Flag ist nicht mit den
Flags zur Aktivierung kompatibel.
asmcliendet mit einem Fehler, wenn Sie--only_validatemit einem Aktivierungs-Flag angeben. --print_config- Anstatt die Cloud Service Mesh zu installieren, drucken Sie die gesamte kompilierte YAML als Standardausgabe (stdout). Alle anderen Ausgaben werden in Standardfehler (stderr) geschrieben, auch wenn sie normalerweise an stdout gesendet würden.
asmcliüberspringt alle Validierungen und die Einrichtung, wenn Sie dieses Flag angeben. --disable_canonical_service- Standardmäßig stellt
asmcliden kanonischen Dienstüberwacher in Ihrem Cluster bereit. Wenn Sie nicht möchten, dassasmcliden Überwacher bereitstellt, geben Sie--disable_canonical_servicean. Weitere Informationen finden Sie unter kanonischen Dienstüberwacher aktivieren und deaktivieren. -h|--help- Zeigt eine Hilfemeldung an, in der die Optionen und Flags beschrieben und der Vorgang beendet wird.
--use_managed_cni- Verwenden Sie das verwaltete CNI. Wenn dieses Flag nicht übergeben wird, wendet
asmclidie statischen CNI-Manifeste an. --use_vpcsc- Dieses Flag ist nicht mehr erforderlich, um VPC Service Controls für Ihr Projekt zu verwenden.
-v|--verbose- Beim Ausführen von
asmcliwird der Befehl ausgegeben, der als Nächstes ausgeführt wird. Mit dem Flag--verbosegibtasmcliden Befehl auch nach der Ausführung aus. --version- Gibt die Version von
asmcliaus und beendet den Vorgang. Wenn Sie nicht die neueste Version haben, können Sie die neueste Version vonasmcli_1.19herunterladen.
Nächste Schritte
So richten Sie ein Multi-Cluster-Mesh-Netzwerk ein:
Wenn Ihr Mesh-Netzwerk vollständig aus GKE-Clustern besteht, finden Sie weitere Informationen unter Multi-Cluster-Mesh-Netzwerk in GKE einrichten.
Wenn Ihr Mesh aus Clustern außerhalb von Google Cloud besteht, lesen Sie Multi-Cluster-Mesh-Netzwerk außerhalb von Google Cloud einrichten.
Beispielanwendung Online Boutique auf Anthos Service Mesh bereitstellen