Quando installi Anthos Service Mesh, specifichi il profilo di configurazione di Anthos Service Mesh, che attiva le funzionalità predefinite supportate elencate nella pagina Funzionalità supportate. I profili di configurazione di Anthos Service Mesh, asm.yaml
e asm-onprem.yaml
, si trovano nella sottodirectory install/kubernetes/operator/profiles
all'interno della directory principale dell'installazione di Anthos Service Mesh. I profili di configurazione definiscono e configurano le funzionalità installate con Anthos Service Mesh.
Puoi eseguire l'override del profilo di configurazione di ASM e attivare singolarmente le funzionalità facoltative supportate dalla riga di comando utilizzando --set values
. In alternativa, se devi abilitare molte funzionalità o se la funzionalità ha numerose impostazioni, puoi creare un file di definizione delle risorse personalizzate di IstioControlPlane
. Passi il file a istioctl
utilizzando l'opzione -f
. Per ulteriori informazioni, vedi
Personalizzazione della configurazione.
Quando attivi le funzionalità facoltative:
Assicurati che la funzionalità che abiliti sia supportata.
Specifica il profilo di configurazione applicabile per la tua piattaforma:
- Per Google Kubernetes Engine, utilizza
--set profile=asm
- Per GKE su VMware, utilizza
--set profile=asm-onprem
- Per Google Kubernetes Engine, utilizza
Opzioni della riga di comando per abilitare le funzionalità facoltative
La tabella seguente fornisce le opzioni della riga di comando per abilitare le funzionalità facoltative e supportate.
Funzionalità | Opzioni della riga di comando |
---|---|
Modalità mTLS STRICT |
--set values.global.mtls.enabled=true |
Prometheus | --set values.prometheus.enabled=true |
Grafana (che richiede Prometheus) |
--set values.prometheus.enabled=true \
|
Indirizzare Envoy a stdout | --set
values.global.proxy.accessLogFile="/dev/stdout" Per ulteriori informazioni, vedi Abilita il logging degli accessi di Envoy. |
Stackdriver Tracing | --set values.tracing.enabled=true \ --set
values.global.proxy.tracer="stackdriver" |
In uscita tramite gateway in uscita |
--set values.gateways.istio-egressgateway.enabled=true
Per ulteriori informazioni, consulta Gateway. |
Esempi
I comandi per installare Anthos Service Mesh su GKE utilizzano le seguenti variabili di ambiente:
Imposta l'ID progetto Google Cloud:
export PROJECT_ID=
YOUR_PROJECT_ID
Imposta il numero del progetto:
export PROJECT_NUMBER=$(gcloud projects describe ${PROJECT_ID} --format="value(projectNumber)")
Imposta il nome del cluster.
export CLUSTER_NAME=YOUR_CLUSTER_NAME
Imposta
CLUSTER_LOCATION
sulla zona o sulla regione del cluster.export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION
Imposta il pool di carichi di lavoro.
export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog
Imposta l'ID mesh, necessario per visualizzare le metriche nelle pagine Anthos Service Mesh nella console Google Cloud:
export MESH_ID="proj-${PROJECT_NUMBER}"
Abilita il gateway in uscita
Per installare Anthos Service Mesh in PERMISSIVE
modalità di autenticazione mTLS (mutual TLS) e abilitare il gateway in uscita:
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
Attiva la modalità mTLS di STRICT
Per installare Anthos Service Mesh in modalità mTLS 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
Abilita un bilanciatore del carico interno
Per le installazioni su GKE, puoi abilitare un bilanciatore del carico interno per il gateway in entrata Istio. I bilanciatori del carico interni non sono supportati per GKE su VMware. Per informazioni sulla configurazione di GKE su VMware, consulta Configurazione del bilanciatore del carico per GKE su VMware.
Copia il seguente testo in un file e salvalo come
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
Specifica il file nella riga di comando:
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