Configura la connettività dell'autorità di certificazione tramite un proxy

Questa guida spiega come configurare la connettività delle autorità di certificazione (CA) attraverso un proxy quando la connettività diretta dai carichi di lavoro inseriti da sidecar non disponibile (ad esempio, a causa di firewall o altre funzionalità restrittive). Questa configurazione è applicabile solo per le installazioni di Cloud Service Mesh che utilizzano Certificate Authority Service.

In una tipica installazione di Cloud Service Mesh all'interno di un cluster, esegui il deployment dei sidecar nei pod di applicazione in cui è disponibile la connettività diretta ai servizi CA (come meshca.googleapis.com e privateca.googleapis.com). Nei scenari in cui non è disponibile una connessione diretta, devi configurare un proxy HTTPS esplicito basato su CONNECT.

Prerequisiti

Prima di configurare la connettività CA tramite un proxy, assicurati di avere:

  • Stabilito la connettività di rete da tutti i pod inseriti tramite sidecar a HTTPS proxy.
  • È stato concesso l'accesso per il proxy HTTPS di cui è stato eseguito il deployment a tutti i servizi Google Cloud.

Configurare una risorsa personalizzata ProxyConfig

  1. Configura una risorsa personalizzata (CR) Istio ProxyConfig da iniettare nel proxy sidecar in modo che indichi il proxy HTTPS. Ad esempio:

    apiVersion: networking.istio.io/v1beta1
    kind: ProxyConfig
    metadata:
     labels:
      istio.io/rev: <istio-rev>   # To target proxies mapped to a specific control plane if needed.
     name: test-proxy-inject
     namespace: istio-system      # To ensure side-cars injected into all namespaces process this CR
    spec:
     environmentVariables:
      CA_PLUGIN_PROXY_URL: http://<proxy-service>.<proxy-ns>:<proxy-port>
    

    dove:

    • CA_PLUGIN_PROXY_URL è la configurazione utilizzata dai sidecar per stabilire un handshake CONNECT con il proxy, che inoltra tutto il traffico destinato alla CA all'endpoint pertinente.
    • proxy-service è dipiegato nello spazio dei nomi proxy-ns e rimane in ascolto per i handshake CONNECT sulla porta proxy-port. Il formato di questo ambiente è simile alla variabile di ambiente HTTPS_PROXY standard.
  2. Una volta installato il piano di controllo di Cloud Service Mesh, applica il ProxyConfig CR appropriato (configurato nel passaggio 1) al cluster prima di riavviare i carichi di lavoro negli spazi dei nomi etichettati di Cloud Service Mesh per assicurarti che la configurazione venga iniettata correttamente nei sidecar. Questa configurazione è obbligatoria per consentire ai sidecar di ricevere certificati dei carichi di lavoro firmati dalla CA, il che garantisce che il pod iniettato dal sidecar possa avviarsi.