Si su organización utiliza un proxy HTTP para el tráfico de internet, deberá configurar los clústeres conectados a GKE según corresponda. Este documento describe cómo realizar esta configuración.
Antes de empezar
Los clústeres conectados a GKE requieren conectividad a varios Google Cloud Servicios. Asegúrese de que su servidor proxy permita el tráfico a los siguientes dominios:
-
.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
Reemplace GCP_LOCATION
con el Google Cloud Región donde reside el clúster. Especifique us-west1
u otra región compatible .
Configurar la compatibilidad de proxy para clústeres conectados a GKE
Para configurar la compatibilidad de proxy para clústeres conectados a GKE, siga estos pasos:
Cree un archivo de configuración de proxy que contenga valores para las claves
httpProxy
,noProxy
yhttpsProxy
:{ "httpProxy": HTTP_PROXY_AUTHENTICATION_URL, "httpsProxy": HTTPS_PROXY_AUTH_URL, "noProxy": NO_PROXY_ADDRESSES }
Reemplace lo siguiente:
-
HTTP_PROXY_AUTHENTICATION_URL
: la URL del servidor proxy, que consta de un nombre de host/dirección IP y, opcionalmente, un puerto, nombre de usuario y contraseña. Por ejemplo:http://user:password@192.0.2.0:80
o simplemente198.51.100.255
. -
HTTPS_PROXY_AUTH_URL
: la URL del proxy para el tráfico HTTPS cifrado, que consta de un nombre de host/dirección IP y, opcionalmente, un puerto, un nombre de usuario y una contraseña. -
NO_PROXY_ADDRESSES
: una lista separada por comas de URL, bloques CIDR y nombres DNS de recursos que pueden omitir el proxy. Esto indica a los clústeres conectados a GKE que eviten usar el proxy para los recursos especificados. Tenga en cuenta lo siguiente:- Los valores pueden ser direcciones IP individuales, rangos CIDR, nombres de dominio o incluso el asterisco (*). Usar un solo asterisco (
*
) en el camponoProxy
indica a los clústeres conectados a GKE que omitan el proxy para todo el tráfico. - Un dominio que empieza con un punto, como
.google.com
, se dirige a todos sus subdominios. Por ejemplo,.google.com
incluye direcciones comomail.google.com
ydrive.google.com
, pero excluyegoogle.com
. - Asegúrese de incluir los dominios
kubernetes.default.svc.cluster.local
ykubernetes.default.svc
para un registro correcto. Por ejemplo:198.51.100.0,192.0.2.0/16,examplepetstore.com,.altostrat.com,kubernetes.default.svc.cluster.local, kubernetes.default.svc
.
- Los valores pueden ser direcciones IP individuales, rangos CIDR, nombres de dominio o incluso el asterisco (*). Usar un solo asterisco (
Al crear el archivo de configuración del proxy, siga las siguientes pautas:
- Los campos
httpProxy
yhttpsProxy
no aceptan el prefijohttps://
. Usehttp://
incluso si la dirección del servidor proxy real empieza porhttps://
. Por ejemplo, representehttps://proxy.example.com:3128
comohttp://proxy.example.com:3128
. - Es obligatorio proporcionar valores para los tres campos:
httpProxy
,httpsProxy
ynoProxy
. - Considere agregar dominios, direcciones IP o CIDR adicionales a la lista
noProxy
. Le recomendamos incluir el rango de IP de la VPC.
-
Cree un secreto de Kubernetes, que contenga la configuración del proxy, ejecutando el siguiente comando:
kubectl create secret generic SECRET_NAME \ --from-file=PROXY_CONFIGURATION_FILE
Reemplace lo siguiente:
-
SECRET_NAME
: el nombre del secreto de Kubernetes -
PROXY_CONFIGURATION_FILE
: la ruta a la configuración del proxy que creó en el paso 1.
-
Marque el secreto de Kubernetes como inmutable estableciendo su campo
immutable
entrue
:kubectl edit secret SECRET_NAME
Reemplace
SECRET_NAME
con el nombre del secreto de Kubernetes.Configurar un clúster nuevo o existente para usar el proxy:
Nuevo clúster
Para registrar un nuevo clúster y aplicar la configuración del proxy, use el comando
gcloud container attached clusters register
. Asegúrese de proporcionar los argumentos opcionales--proxy-secret-name
y--proxy-secret-namespace
.gcloud container attached clusters register CLUSTER_NAME \ --proxy-secret-name=SECRET_NAME \ --proxy-secret-namespace=SECRET_NAMESPACE
Reemplace lo siguiente:
-
CLUSTER_NAME
: el nombre del clúster -
SECRET_NAME
: el nombre del secreto de Kubernetes que contiene la configuración del proxy -
SECRET_NAMESPACE
: el espacio de nombres de Kubernetes donde se almacena el secreto
Para obtener información sobre todos los argumentos que puede utilizar al registrar un clúster, consulte el comando
gcloud container attached clusters register
.Clúster existente
Para actualizar un clúster registrado previamente con una nueva configuración de proxy, use el comando
gcloud container attached clusters update
. Asegúrese de proporcionar los argumentos opcionales--proxy-secret-name
y--proxy-secret-namespace
.gcloud container attached clusters update CLUSTER_NAME \ --proxy-secret-name=SECRET_NAME \ --proxy-secret-namespace=SECRET_NAMESPACE
Reemplace lo siguiente:
-
CLUSTER_NAME
: el nombre del clúster -
SECRET_NAME
: el nombre del secreto de Kubernetes que contiene la configuración del proxy -
SECRET_NAMESPACE
: el espacio de nombres de Kubernetes donde se almacena el secreto
Este paso es necesario si los detalles de su servidor proxy han cambiado o si un registro de clúster inicial pasó por alto los requisitos del proxy.
Para obtener información sobre todos los argumentos que puede utilizar al actualizar un clúster, consulte el comando
gcloud container attached clusters update
.-
Después de realizar estos pasos, los clústeres conectados a GKE procesan el tráfico de Internet saliente utilizando el servidor proxy especificado en el archivo de configuración.