Se la tua organizzazione utilizza un proxy HTTP per il traffico internet, devi configurare di conseguenza i cluster collegati a GKE. Questo documento descrive come eseguire questa configurazione.
Prima di iniziare
I cluster collegati a GKE richiedono la connettività a vari servizi Google Cloud. Assicurati che il tuo server proxy consenta il traffico ai seguenti domini:
.gcr.io
cloudresourcemanager.googleapis.com
container.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
oauth2.googleapis.com
securetoken.googleapis.com
storage.googleapis.com
sts.googleapis.com
www.googleapis.com
servicecontrol.googleapis.com
logging.googleapis.com
monitoring.googleapis.com
opsconfigmonitoring.googleapis.com
GCP_LOCATION-gkemulticloud.googleapis.com
Sostituisci GCP_LOCATION
con la regione Google Cloud in cui si trova il cluster. Specifica us-west1
o un'altra
regione supportata.
Configura il supporto del proxy per i cluster collegati a GKE
Per configurare il supporto del proxy per i cluster collegati a GKE, segui questi passaggi:
Crea un file di configurazione del proxy contenente valori per le chiavi
httpProxy
,noProxy
ehttpsProxy
:{ "httpProxy": HTTP_PROXY_AUTHENTICATION_URL, "httpsProxy": HTTPS_PROXY_AUTH_URL, "noProxy": NO_PROXY_ADDRESSES }
Sostituisci quanto segue:
HTTP_PROXY_AUTHENTICATION_URL
: l'URL del server proxy, costituito da un nome host/indirizzo IP e, facoltativamente, da una porta, un nome utente e una password. Ad esempio:http://user:password@192.0.2.0:80
o solo198.51.100.255
.HTTPS_PROXY_AUTH_URL
: l'URL proxy per il traffico HTTPS criptato, composto da un nome host/indirizzo IP e, facoltativamente, da una porta, un nome utente e una password.NO_PROXY_ADDRESSES
: un elenco separato da virgole di URL, blocchi CIDR e nomi DNS di risorse che possono ignorare il proxy. Questo indica ai cluster collegati a GKE di evitare di utilizzare il proxy per le risorse specificate. Tieni presente quanto segue:- I valori possono essere singoli indirizzi IP, intervalli CIDR, nomi di dominio o
persino il carattere asterix (*). L'utilizzo di un singolo asterisco (
*
) nel camponoProxy
indica ai cluster collegati a GKE di ignorare il proxy per tutto il traffico. - Un dominio che inizia con un punto, come
.google.com
, ha come target tutti i relativi sottodomini. Ad esempio,.google.com
include indirizzi comemail.google.com
edrive.google.com
, ma escludegoogle.com
. - Assicurati di includere i domini
kubernetes.default.svc.cluster.local
ekubernetes.default.svc
per il logging corretto. Ecco un esempio:198.51.100.0,192.0.2.0/16,examplepetstore.com,.altostrat.com,kubernetes.default.svc.cluster.local, kubernetes.default.svc
.
- I valori possono essere singoli indirizzi IP, intervalli CIDR, nomi di dominio o
persino il carattere asterix (*). L'utilizzo di un singolo asterisco (
Quando crei il file di configurazione del proxy, rispetta le seguenti linee guida:
- I campi
httpProxy
ehttpsProxy
non accettano prefissihttps://
. Utilizzahttp://
, anche se l'indirizzo del server proxy reale inizia conhttps://
. Ad esempio, rappresentahttps://proxy.example.com:3128
comehttp://proxy.example.com:3128
. - È obbligatorio fornire valori per tutti e tre i campi:
httpProxy
,httpsProxy
enoProxy
. - Valuta la possibilità di aggiungere ulteriori domini, indirizzi IP o CIDR all'elenco
noProxy
. Ti consigliamo di includere l'intervallo IP VPC.
Crea un secret di Kubernetes, che contiene la configurazione del proxy, eseguendo questo comando:
kubectl create secret generic SECRET_NAME \ --from-file=PROXY_CONFIGURATION_FILE
Sostituisci quanto segue:
SECRET_NAME
: il nome del secret di KubernetesPROXY_CONFIGURATION_FILE
: il percorso della configurazione del proxy creata nel passaggio 1.
Contrassegna il secret di Kubernetes come immutabile impostando il campo
immutable
sutrue
:kubectl edit secret SECRET_NAME
Sostituisci
SECRET_NAME
con il nome del secret di Kubernetes.Configura un cluster nuovo o esistente per utilizzare il proxy:
Nuovo cluster
Per registrare un nuovo cluster e applicare la configurazione del proxy, utilizza il comando
gcloud container attached clusters register
. Assicurati di fornire gli argomenti facoltativi--proxy-secret-name
e--proxy-secret-namespace
:gcloud container attached clusters register CLUSTER_NAME \ --proxy-secret-name=SECRET_NAME \ --proxy-secret-namespace=SECRET_NAMESPACE
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del clusterSECRET_NAME
: il nome del secret di Kubernetes contenente la configurazione proxySECRET_NAMESPACE
: lo spazio dei nomi Kubernetes in cui è archiviato il secret
Per informazioni su tutti gli argomenti che puoi utilizzare durante la registrazione di un cluster, consulta il comando
gcloud container attached clusters register
.Cluster esistente
Per aggiornare un cluster registrato in precedenza con una nuova configurazione proxy, utilizza il comando
gcloud container attached clusters update
. Assicurati di fornire gli argomenti facoltativi--proxy-secret-name
e--proxy-secret-namespace
:gcloud container attached clusters update CLUSTER_NAME \ --proxy-secret-name=SECRET_NAME \ --proxy-secret-namespace=SECRET_NAMESPACE
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del clusterSECRET_NAME
: il nome del secret di Kubernetes contenente la configurazione proxySECRET_NAMESPACE
: lo spazio dei nomi Kubernetes in cui è archiviato il secret
Questo passaggio è necessario se i dettagli del server proxy sono cambiati o se una registrazione iniziale del cluster ha trascurato i requisiti del proxy.
Per informazioni su tutti gli argomenti che puoi utilizzare durante l'aggiornamento di un cluster, consulta il comando
gcloud container attached clusters update
.
Dopo aver eseguito questi passaggi, i cluster collegati a GKE elaborano il traffico internet in uscita utilizzando il server proxy specificato nel file di configurazione.