Configurazione degli attributi di bootstrap di Envoy

Quando i proxy Envoy e le librerie gRPC alla base del tuo mesh di servizi vengono inizializzati, questi devono connettersi a Cloud Service Mesh e diventare client Cloud Service Mesh. Per stabilire questa connessione, è necessario eseguire il bootstrap di un client con le informazioni di configurazione, ad esempio:

  • Dove trovare Cloud Service Mesh (trafficdirector.googleapis.com)
  • Il nome della rete VPC per cui il client deve richiedere la configurazione
  • Altre informazioni facoltative, ad esempio se abilitare il logging

Questo documento spiega come fornire informazioni di bootstrap quando si utilizza Envoy con Cloud Service Mesh. Il metodo che utilizzi per fornire la configurazione del bootstrap varia a seconda di come esegui il deployment dei servizi:

È supportato solo xDS v3. Se utilizzi xDS v2, esegui la migrazione a xDS v3 seguendo le istruzioni riportate in Eseguire la migrazione da xDS v2 a xDS v3.

Configurazione di bootstrap richiesta per i deployment manuali di Envoy

La tabella seguente contiene tutti gli attributi di configurazione del bootstrap obbligatori.

Attributo Valore Descrizione
TRAFFICDIRECTOR_NETWORK_NAME Una stringa. Ad esempio, default.

Nome della rete VPC di Google Cloud per il quale è richiesta la configurazione (si tratta del nome della rete VPC a cui viene fatto riferimento nella regola di forwarding nell'API Google Cloud). Con l'API xDS v3, devi specificare il nome della rete.

Non è consigliabile lasciare vuoto questo valore. Non è garantito che un valore vuoto sia supportato nelle release future.

TRAFFICDIRECTOR_GCP_PROJECT_NUMBER Una stringa di cifre. Ad esempio, 123456789. Il progetto Google Cloud in cui sono configurate le risorse Cloud Service Mesh. Si tratta dell'identificatore numerico del progetto (ad esempio, 111222333444).

Puoi ottenere un elenco di tutti i tuoi progetti con i numeri di progetto corrispondenti utilizzando il comando gcloud projects list o esaminando la sezione Informazioni sul progetto della console Google Cloud. Con l'API xDS v3, devi fornire il numero del progetto.

Configurazione di bootstrap facoltativa per i deployment manuali di Envoy

La tabella seguente contiene tutti gli attributi di configurazione facoltativi del bootstrap.

Attributo Valore Descrizione
TRAFFICDIRECTOR_INTERCEPTION_PORT Un numero intero compreso tra 0 e 65535

Un numero di porta per il listener di intercettazione. Il traffico destinato ai servizi configurati in Cloud Service Mesh deve essere reindirizzato a questa porta.

Se questo valore viene lasciato vuoto, il listener di intercettazione non è configurato da Cloud Service Mesh. Se la configurazione dipende dall'intercettazione del traffico in uscita, l'assenza del listener di intercettazione interrompe il flusso del traffico. Questo campo non è obbligatorio per i casi d'uso del proxy intermedio in cui deve essere intercettato solo il traffico in entrata.

TRAFFICDIRECTOR_ACCESS_LOG_PATH Un percorso al file di log degli accessi, rappresentato da una stringa. Ad esempio: "/var/log/sidecar/access.log" Il valore di questo parametro viene utilizzato per la configurazione del log di accesso ai file, inviato a un proxy da Cloud Service Mesh con altri parametri. Tutte le richieste in entrata e in uscita vengono registrate in questo file. Per ulteriori informazioni, consulta la documentazione relativa al log di accesso ai file del proxy Envoy.
TRAFFICDIRECTOR_ENABLE_TRACING Valore booleano, rappresentato come una stringa; ad esempio, true Abilita il proxy sidecar per generare informazioni di tracciamento distribuito. Se impostato su true, i parametri di tracciamento di Envoy vengono programmati nel proxy sidecar da Cloud Service Mesh e generate_request_id impostati su "true".

Di seguito è riportato un esempio in formato YAML di come configurare gli attributi supportati nella sezione dei metadati dei nodi della configurazione del bootstrap del proxy Envoy:

node:
  metadata:
    TRAFFICDIRECTOR_INTERCEPTION_PORT: "15001"
    TRAFFICDIRECTOR_NETWORK_NAME: "default"
    TRAFFICDIRECTOR_GCP_PROJECT_NUMBER: "111222333444"
    TRAFFICDIRECTOR_ACCESS_LOG_PATH: "/tmp/sidecar/access.log"
    TRAFFICDIRECTOR_ENABLE_TRACING: "true"