Modifica delle impostazioni del proxy di un cluster

La versione 1.8 di GKE su AWS aggiunge la possibilità di modificare le impostazioni del proxy di un cluster senza ricrearlo.

Modificare il proxy per il servizio di gestione

Per modificare le impostazioni del proxy per il servizio di gestione GKE su AWS, segui questi passaggi:

  1. Aggiorna i contenuti del file proxy.json del servizio di gestione, come descritto in Creare il file JSON di configurazione del proxy.

  2. Esegui di nuovo anthos-gke aws management init e anthos-gke aws management apply per applicare le modifiche al servizio di gestione.

Modificare il proxy per il cluster utente

Quando crei un cluster utente, questo utilizza le impostazioni del proxy del servizio di gestione. Per modificare le impostazioni del proxy per un cluster utente senza modificare quelle del servizio di gestione, devi creare un secret di Kubernetes contenente le informazioni del proxy, quindi utilizzare kubectl per applicare le modifiche.

Creare un secret di Kubernetes

  1. Innanzitutto, crea un file YAML con i seguenti contenuti per descrivere il secret. Il secret deve essere definito come opaco e immutabile. Questo esempio utilizza il nome file proxy-secret.yaml.

     apiVersion: v1
     kind: Secret
     metadata:
       name: PROXY_SECRET
     type: Opaque
     immutable: true
     stringData:
       # You can include additional key value pairs as you do with Opaque Secrets
       httpProxy: HTTP_PROXY
       httpsProxy: HTTPS_PROXY
       noProxy: NO_PROXY_LIST
     

    Sostituisci:

    • HTTP_PROXY con l'indirizzo del server proxy attraverso cui instradare le richieste HTTP
    • HTTPS_PROXY con un indirizzo del server proxy facoltativo attraverso cui instradare le richieste HTTPS
    • NO_PROXY_LIST con un elenco facoltativo di IP, intervalli CIDR e domini all'interno della VPN per i quali non deve essere utilizzato un proxy
    • PROXY_SECRET con il nome che scegli per il secret
  2. Applica le modifiche per creare il secret:

    env HTTPS_PROXY=http://localhost:8118 \
       kubectl apply -f ./proxy-secret.yaml
    

Aggiornare le configurazioni del cluster utente e del pool di nodi

Poi, aggiorna la configurazione di AWSCluster e AWSNodePool in modo che faccia riferimento al nome del secret rispettivamente in spec.proxySecretName e spec.controlPlane.proxySecretName.

Infine, esegui il comando seguente per aggiornare il cluster utente.

   env HTTPS_PROXY=http://localhost:8118 \
     kubectl apply -f CLUSTER_YAML_FILE

Sostituisci CLUSTER_YAML_FILE con il nome del file YAML che definisce il cluster.

Modifiche dello stato del cluster utente

Dopo aver eseguito il comando kubectl apply per applicare le nuove impostazioni del proxy, lo stato del cluster utente cambierà da Provisioned a Updating, quindi tornerà a Provisioned al termine dell'operazione.

Impostare i proxy per più di un cluster utente

Se hai più cluster utente e vuoi configurare proxy diversi per ognuno, segui le istruzioni in Modificare il proxy per il cluster utente per ogni cluster. Devi creare un secret di Kubernetes diverso per ogni proxy e aggiornare separatamente ogni configurazione del cluster utente in modo che faccia riferimento al nome del secret per quel cluster utente.

Ruotare i proxy per un cluster utente

Per modificare le impostazioni del proxy per un cluster che ha già impostazioni del proxy individuali, crea e applica un nuovo secret con le nuove impostazioni del proxy e un nome del secret diverso. Se riutilizzi il nome del secret attuale, le impostazioni del proxy del cluster non verranno modificate.

Risoluzione dei problemi

Se il secret non è ben formato o mancano le chiavi obbligatorie, il comando non riesce e la modifica non viene applicata. Per verificare se il secret è stato convalidato correttamente, consulta il log degli eventi di Kubernetes per AWSCluster e AWSNodePool con il seguente comando:

   env HTTPS_PROXY=http://localhost:8118 \
     kubectl get events

Se si è verificato un errore nella configurazione del secret, elimina il secret con il seguente comando:

  env HTTPS_PROXY=http://localhost:8118 \
    kubectl delete secret SECRET_NAME
  

Sostituisci SECRET_NAME con il nome del secret.

Poi ricrea il secret con un file YAML del secret del proxy formattato correttamente e riapplica la modifica. Puoi utilizzare lo stesso nome del secret utilizzato nel primo tentativo.

Per ulteriori informazioni

Per configurare le impostazioni del proxy per la prima volta, consulta Utilizzare un proxy.

Per creare un VPC AWS dedicato, consulta Installare il servizio di gestione.