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.

Modifica del proxy per il servizio di gestione

Per modificare le impostazioni 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 Creazione del 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.

Modifica del proxy per il cluster utente

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

Crea 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 per instradare le richieste HTTP
    • HTTPS_PROXY con un indirizzo del server proxy facoltativo per indirizzare 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 segreto:

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

Aggiorna le configurazioni del cluster utente e pool di nodi

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

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 allo stato del cluster utente

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

Impostazione di proxy per più di un cluster di utenti

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

Rotazione dei proxy per un cluster utente

Per modificare le impostazioni del proxy per un cluster che dispone già di 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 proxy del cluster non verranno modificate.

Risoluzione dei problemi

Se il secret non è ben formato o mancano le chiavi richieste, il comando non va a buon fine e la modifica non viene applicata. Per verificare se il secret è stato convalidato correttamente, controlla il log eventi di Kubernetes per AWSClusters e AWSNodePools 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 tuo secret.

Poi, ricrea il secret con un file YAML del secret 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 proxy per la prima volta, consulta Utilizzare un proxy.

Per creare un VPC AWS dedicato, vedi Installazione del servizio di gestione.