Wenn Sie Anthos Service Mesh installieren, geben Sie das Anthos Service Mesh-Konfigurationsprofil an, das die unterstützten Standardfunktionen aktiviert, die auf der Seite Unterstützte Funktionen aufgeführt sind. Die Anthos Service Mesh-Konfigurationsprofile asm.yaml
und asm-onprem.yaml
befinden sich im Unterverzeichnis install/kubernetes/operator/profiles
innerhalb des Stammverzeichnisses in der Anthos Service Mesh-Installation. Die Konfigurationsprofile definieren und konfigurieren die Features, die mit Anthos Service Mesh installiert werden.
Sie können das ASM-Konfigurationsprofil überschreiben und in der Befehlszeile mithilfe von --set values
einzeln unterstützte optionale Features aktivieren. Wenn Sie viele Funktionen aktivieren möchten oder das Feature zahlreiche Einstellungen hat, können Sie alternativ eine IstioControlPlane
-Datei für die benutzerdefinierte Ressourcendefinition erstellen. Sie übergeben die Datei mit der Option -f
an istioctl
. Weitere Informationen finden Sie unter Konfiguration anpassen.
Wenn Sie optionale Funktionen aktivieren, beachten Sie Folgendes:
Achten Sie darauf, dass das aktivierte Feature unterstützt wird.
Geben Sie das entsprechende Konfigurationsprofil für Ihre Plattform an:
- Verwenden Sie für Google Kubernetes Engine
--set profile=asm
. - Verwenden Sie
--set profile=asm-onprem
für GKE on VMware
- Verwenden Sie für Google Kubernetes Engine
Befehlszeilenoptionen zum Aktivieren optionaler Funktionen
Die folgende Tabelle enthält die Befehlszeilenoptionen zum Aktivieren von optionalen und unterstützten Features.
Feature | Befehlszeilen-Optionen |
---|---|
mTLS-STRICT -Modus |
--set values.global.mtls.enabled=true |
Prometheus | --set values.prometheus.enabled=true |
Grafana (erfordert Prometheus) |
--set values.prometheus.enabled=true \
|
Envoy an stdout weiterleiten | --set
values.global.proxy.accessLogFile="/dev/stdout" Weitere Informationen finden Sie unter Zugriffs-Logging von Envoy aktivieren. |
Stackdriver-Tracing | --set values.tracing.enabled=true \ --set
values.global.proxy.tracer="stackdriver" |
Ausgehender Traffic über Egress-Gateways |
--set values.gateways.istio-egressgateway.enabled=true
Weitere Informationen finden Sie unter Gateway. |
Beispiele
Die Befehle zum Installieren von Anthos Service Mesh in GKE verwenden die folgenden Umgebungsvariablen:
Legen Sie Ihre Google Cloud-Projekt-ID fest:
export PROJECT_ID=
YOUR_PROJECT_ID
Legen Sie die Projektnummer fest:
export PROJECT_NUMBER=$(gcloud projects describe ${PROJECT_ID} --format="value(projectNumber)")
Legen Sie den Clusternamen fest.
export CLUSTER_NAME=YOUR_CLUSTER_NAME
Legen Sie für
CLUSTER_LOCATION
entweder Ihre Clusterzone oder Clusterregion fest.export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION
Legen Sie Arbeitslastpool fest.
export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog
Legen Sie die Mesh-ID fest. Diese ist erforderlich, damit die Messwerte auf den Anthos Service Mesh-Seiten in der Cloud Console angezeigt werden:
export MESH_ID="proj-${PROJECT_NUMBER}"
Ausgangsgateway aktivieren
So installieren Sie Anthos Service Mesh im mTLS-Authentifizierungsmodus (mutual TLS, gegenseitiges TLS) PERMISSIVE
und aktivieren das Ausgangsgateway:
GKE
istioctl manifest apply --set profile=asm \ --set values.global.trustDomain=${WORKLOAD_POOL} \ --set values.global.sds.token.aud=${WORKLOAD_POOL} \ --set values.nodeagent.env.GKE_CLUSTER_URL=https://container.googleapis.com/v1/projects/${PROJECT_ID}/locations/${CLUSTER_LOCATION}/clusters/${CLUSTER_NAME} \ --set values.global.meshID=${MESH_ID} \ --set values.global.proxy.env.GCP_METADATA="${PROJECT_ID}|${PROJECT_NUMBER}|${CLUSTER_NAME}|${CLUSTER_LOCATION}" \ --set values.gateways.istio-egressgateway.enabled=true
GKE On-Prem
istioctl manifest apply --set profile=asm-onprem} \ --set values.gateways.istio-egressgateway.enabled=true
mTLS-Modus STRICT
aktivieren
So installieren Sie Anthos Service Mesh im mTLS-Modus STRICT
:
GKE
istioctl manifest apply --set profile=asm \ --set values.global.trustDomain=${WORKLOAD_POOL} \ --set values.global.sds.token.aud=${WORKLOAD_POOL} \ --set values.nodeagent.env.GKE_CLUSTER_URL=https://container.googleapis.com/v1/projects/${PROJECT_ID}/locations/${CLUSTER_LOCATION}/clusters/${CLUSTER_NAME} \ --set values.global.meshID=${MESH_ID} \ --set values.global.proxy.env.GCP_METADATA="${PROJECT_ID}|${PROJECT_NUMBER}|${CLUSTER_NAME}|${CLUSTER_LOCATION}" \ --set values.global.mtls.enabled=true
GKE On-Prem
istioctl manifest apply --set profile=asm-onprem \ --set values.global.mtls.enabled=true
Internen Load-Balancer aktivieren
Bei Installationen auf GKE können Sie einen internen Load-Balancer für das Istio-Ingress-Gateway aktivieren. Interne Load-Balancer werden für GKE on VMware nicht unterstützt. Informationen zum Konfigurieren von GKE on VMware finden Sie unter Load-Balancer für GKE on VMware einrichten.
Kopieren Sie den folgenden Text in eine Datei und speichern Sie ihn als
ilb.yaml
:apiVersion: install.istio.io/v1alpha2 kind: IstioControlPlane spec: values: gateways: istio-ingressgateway: serviceAnnotations: cloud.google.com/load-balancer-type: internal ports: - name: status-port port: 15020 - name: http2 port: 80 - name: https port: 443
Geben Sie die Datei in der Befehlszeile an:
istioctl manifest apply --set profile=asm \ --set values.global.trustDomain=${WORKLOAD_POOL} \ --set values.global.sds.token.aud=${WORKLOAD_POOL} \ --set values.nodeagent.env.GKE_CLUSTER_URL=https://container.googleapis.com/v1/projects/${PROJECT_ID}/locations/${CLUSTER_LOCATION}/clusters/${CLUSTER_NAME} \ --set values.global.meshID=${MESH_ID} \ --set values.global.proxy.env.GCP_METADATA="${PROJECT_ID}|${PROJECT_NUMBER}|${CLUSTER_NAME}|${CLUSTER_LOCATION}" \ -f ilb.yaml