Questa pagina descrive come abilitare le funzionalità facoltative su un piano di controllo nel cluster. Per informazioni sul piano di controllo gestito da Google, consulta Configurare Anthos Service Mesh gestito.
Quando installi Anthos Service Mesh, le funzionalità abilitate per impostazione predefinita variano in base alla piattaforma. Puoi abilitare le funzionalità facoltative includendo un file di overlay durante l'installazione (o l'upgrade) di Anthos Service Mesh. Un file di overlay è un file YAML contenente una risorsa (RP) personalizzata di IstioOperator
che utilizzi per configurare il piano di controllo. Puoi eseguire l'override della configurazione predefinita e attivare una funzionalità facoltativa o disattivare una funzionalità predefinita in un file di overlay. Specifica una funzionalità per file di overlay. Puoi sovrapporre più overlay e ogni file di overlay sostituisce la configurazione dei livelli precedenti.
Informazioni sui file di overlay
I file degli overlay in questa pagina si trovano all'interno del pacchetto anthos-service-mesh
in GitHub. Questi file contengono personalizzazioni comuni alla configurazione predefinita. Puoi utilizzare questi file così come sono o apportare ulteriori modifiche in base alle esigenze.
Quando installi Anthos Service Mesh utilizzando lo script asmcli
fornito da Google, puoi specificare uno o più file overlay con le opzioni --option
o --custom_overlay
. Se non devi apportare modifiche ai file nel repository anthos-service-mesh
, puoi utilizzare --option
e lo script recupera il file da GitHub per te. In caso contrario, puoi apportare
modifiche al file dell'overlay e poi utilizzare l'opzione --custom_overlay
per
inoltrarlo a asmcli
.
Non includere più RP in un unico file di overlay | Creare file di overlay separati per ogni RP |
---|---|
Download del pacchetto anthos-service-mesh
in corso...
Per scaricare il pacchetto anthos-service-mesh
:
I passaggi seguenti utilizzano kpt
per scaricare il pacchetto asm
dal repository GitHub. Se preferisci, puoi utilizzare git clone
.
Se non l'hai ancora fatto, installa
kpt
:gcloud components install kpt
Scarica il pacchetto che contiene i file:
kpt pkg get \ https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.10-asm asm
Gli esempi seguenti presuppongono che il pacchetto
asm
si trovi nella tua directory di lavoro attuale.
Come attivare le funzionalità facoltative
I seguenti esempi sono semplificati in modo che vengano visualizzati solo utilizzando gli overlay personalizzati per abilitare le funzionalità facoltative. Sostituisci OTHER_FLAGS
con le
altre opzioni della riga di comando .
Il comando asmcli install
offre due modi per abilitare una funzionalità facoltativa. Il metodo da utilizzare varia a seconda che tu debba o meno apportare modifiche al file dell'overlay.
Utilizza
--option
se non devi apportare modifiche al file dell'overlay. Con--option
,asmcli
recupera automaticamente il file dal repository GitHub, quindi devi disporre di una connessione a internet../asmcli install \ OTHER_FLAGS \ --option OPTION_NAME
Sostituisci
OPTION_NAME
con l'opzione che vuoi attivare. Per un elenco delle opzioni, consulta il pacchettoanthos-service-mesh
.Usa
--custom_overlay
quando devi personalizzare il file dell'overlay../asmcli install \ OTHER_FLAGS \ --custom_overlay PATH_TO_FILE
Sostituisci
PATH_TO_FILE
con il percorso del file dell'overlay che vuoi utilizzare.
YAML per funzionalità facoltative
Le seguenti sezioni forniscono il codice YAML per abilitare le funzionalità facoltative e supportate.
Modalità mTLS STRICT
La configurazione di global.mtls.enabled
è stata rimossa dalla risposta predefinita IstioOperator
per evitare problemi con gli upgrade e offrire un'installazione più flessibile.
Per attivare la tecnologia mTLS di STRICT
, configura invece un criterio di autenticazione peer.
Indirizza Envoy a stdout
Per ulteriori informazioni, vedi Abilitare il logging degli accessi di Envoy.
Cloud Trace
Cloud Trace è disponibile con le installazioni di Anthos Service Mesh sulle seguenti piattaforme:
- GKE su Google Cloud
- Cluster GKE Enterprise on-premise se installi l'autorità di certificazione Anthos Service Mesh (Mesh CA)
Per informazioni più dettagliate sui prezzi, consulta la pagina dei prezzi di Cloud Trace.
La frequenza di campionamento predefinita è pari all'1%, ma puoi sostituire quella predefinita specificando un valore tracing.sampling
. Il valore deve essere compreso tra 0,0 e 100,0 con una precisione di 0,01. Ad esempio, per tracciare 5 richieste ogni 10.000,utilizza 0, 05.
L'esempio seguente mostra una frequenza di campionamento del 100% (che useresti solo a scopo dimostrativo o per la risoluzione dei problemi).
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
meshConfig:
enableTracing: true
defaultConfig:
tracing:
sampling: 100
values:
global:
proxy:
tracer: stackdriver
Tieni presente che, attualmente la configurazione del tracer fa parte della configurazione del bootstrap del proxy, quindi è necessario riavviare il pod e reinserirlo per recuperare l'aggiornamento del tracer. Ad esempio, puoi utilizzare il comando seguente in cui i pod di riavvio appartengono a un deployment:
kubectl rollout restart deployment -n NAMESPACE DEPLOYMENT_NAME
Trace la propagazione del contesto
Sebbene i proxy collaterali possano inviare automaticamente intervalli di traccia, hanno bisogno di alcuni suggerimenti per collegare l'intera traccia. Le applicazioni devono propagare le intestazioni HTTP appropriate in modo che, quando i proxy inviano informazioni sugli intervalli, gli intervalli possano essere correlati correttamente in un'unica traccia.
A questo scopo, un'applicazione deve raccogliere e propagare le seguenti intestazioni dalla richiesta in entrata a qualsiasi richiesta in uscita:
- x-request-id
- traccia x-b3
- x-b3-spanid
- x-b3-parentspanid
- campionato x-b3
- flag x-b3
- x-ot-span-context
- x-cloud-trace-context
- Traceparent
- grpc-trace-bin
Per esempi di propagazione delle intestazioni, consulta Tracciare la propagazione del contesto.
Crea una traccia dal client con un ID personalizzato
Per creare una traccia da un client con un ID personalizzato, usa il comando curl
per creare una richiesta con un client esterno e forzare la visualizzazione di una traccia. Ad esempio:
curl $URL --header "x-client-trace-id: 105445aa7843bc8bf206b12000100000"
Per ulteriori informazioni su x-client-trace-id
, consulta la
documentazione di Envoy.
In uscita tramite gateway in uscita
Ti consigliamo di installare un gateway inserito come descritto in Installare ed eseguire l'upgrade dei gateway.
Interfaccia di rete del container Istio
L'abilitazione dell'interfaccia CINI (Container Network Interface) per Istio dipende dall'ambiente in cui è installato Anthos Service Mesh.
Scegli il file dell'overlay che corrisponde alla tua piattaforma.
Abilita CNI su GKE
Abilita CNI on-premise
Abilita un bilanciatore del carico interno
Ti consigliamo di installare un gateway iniettato come descritto in Installare ed eseguire l'upgrade dei gateway per configurare un bilanciatore del carico interno su GKE. Quando configuri il servizio gateway,
includi l'annotazione: cloud.google.com/load-balancer-type: "internal"
Gestione dei certificati esterni sul gateway in entrata
Per informazioni su come abilitare la gestione dei certificati esterni sul gateway in entrata utilizzando Envoy SDS, consulta Gateway sicuri.