Utilice un proxy HTTP
Este documento muestra cómo enrutar el tráfico desde GKE en Azure a través de un proxy HTTP/HTTPS. La configuración del proxy se especifica al crear un clúster.
Descripción general
GKE en Azure puede enrutar el tráfico de Internet saliente a través de un proxy por los siguientes motivos:
- Para registrar clústeres con Google Cloud a través de Connect
- Para ejecutar el Agente de Conexión
- Para descargar imágenes de Container Registry
Limitaciones
- Los campos
httpProxy
yhttpsProxy
no admiten URL que empiecen porhttps://
. Debe usarhttp://
. Las solicitudes al puerto 443 usan HTTPS. - Debe establecer valores para
httpProxy
,httpsProxy
ynoProxy
. - La configuración de proxy de un clúster (el ID del grupo de recursos y el ID secreto) es inmutable. Debe crear un nuevo clúster y un grupo de nodos para actualizar estos valores.
- Es posible que necesite agregar dominios, IP o CIDR adicionales al campo
noProxy
. Recomendamos agregar los CIDR de subred de los planos de control de su clúster (los CIDR de dirección de pod y de servicio se agregan de forma predeterminada).
Prerrequisitos
Esta sección describe los requisitos previos que debes aplicar antes de usar un proxy.
Configuración de Azure Key Vault
GKE en Azure almacena la información de configuración del proxy en Azure Key Vault. Para configurar un proxy con GKE en Azure, necesita permisos para crear un secreto en un Key Vault. El Key Vault debe ser accesible desde la red virtual del clúster.
Lista de permitidos de proxy
Para que GKE en Azure se conecte a Google Cloud servicios, el servidor proxy debe permitir el tráfico a dominios específicos de Google y Microsoft.
.azure.com
.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 su clúster de GKE Enterprise. Especifique us-west1
u otra región compatible .
Requisito del grupo de seguridad de red de subred
Si utiliza grupos de seguridad de red (NSG) para administrar el tráfico a sus subredes, sus reglas de NSG deben permitir el tráfico TCP saliente a los siguientes destinos:
- AzureCloud: TCP, puerto 80 y 443
Consulte Etiquetas de servicio de Azure para obtener más información sobre el uso de etiquetas de servicio con NSG.
Crear un archivo de configuración de proxy
La configuración del proxy se almacena en un secreto de Azure Key Vault como una cadena JSON. Puede pasar esta configuración a la herramienta de línea de comandos az
como un archivo. Esta sección describe cómo crear dicho archivo.
La siguiente tabla describe el contenido de este archivo.
Campo | Descripción | Ejemplos | Requerido |
---|---|---|---|
httpProxy | La URL de un servidor proxy. El valor debe incluir un nombre de host/dirección IP y, opcionalmente, un puerto, un nombre de usuario y una contraseña. | "http://user:[email protected]:80" "10.184.37.42" | Sí |
httpsProxy | Una URL de proxy para tráfico HTTPS cifrado. La URL httpProxy se usará si el valor de httpsProxy está vacío. | "http://10.101.16.31:80" | Sí |
noProxy | Una lista de URL separadas por comas que se excluirán del proxy. Cada valor puede ser una dirección IP, un rango CIDR, un nombre de dominio o el asterisco (*). Los dominios especificados con un punto inicial (por ejemplo, `.google.com`) indican que se requiere un subdominio. Un solo asterisco * ignora toda la configuración del proxy. | "1.2.3.4,10.0.0.0/16,example.com,.site.com" | Sí |
Para crear el archivo de configuración, cree un archivo JSON que contenga valores para
httpProxy
,noProxy
y claveshttpsProxy
opcionales.{ "httpProxy": "AUTHENTICATION_URL", "httpsProxy": "AUTHENTICATION_URL", "noProxy": "NO_PROXY_ADDRESSES" }
Reemplace lo siguiente:
-
AUTHENTICATION_URL
: URL codificada que contiene el nombre de usuario y la contraseña del proxy -
NO_PROXY_ADDRESSES
: Lista separada por comas de bloques CIDR y URL; por ejemplo,10.0.0.0/16,http://example.com
http://example.com
Guarde el archivo para utilizarlo en la siguiente sección.
-
Cree un secreto con estos datos JSON como secreto en Azure Key Vault mediante la herramienta de línea de comandos
az
.az keyvault secret set --name SECRET_NAME \ --vault-name KEY_VAULT_NAME \ --file PROXY_CONFIGURATION_FILE
Reemplace lo siguiente:
-
SECRET_NAME
: el nombre del nuevo secreto -
KEY_VAULT_NAME
: el nombre de su Key Vault PROXY_CONFIGURATION_FILE
: la ruta a su archivo de configuración de proxy.La salida incluye el nombre y el contenido del secreto. Ahora puedes hacer referencia a este secreto al crear un clúster.
-
Crear un clúster que utilice un proxy
Para configurar GKE en Azure para usar un proxy HTTP para la conectividad saliente, realice los siguientes pasos:
Siga los pasos que se indican en Crear un clúster y un grupo de nodos y pase los indicadores --proxy-resource-group-id
y --proxy-secret-id
.
gcloud container azure clusters create CLUSTER_NAME \
--proxy-resource-group-id=PROXY_RESOURCE_GROUP_ID \
--proxy-secret-id=PROXY_SECRET_ID
...
Reemplace lo siguiente:
-
CLUSTER_NAME
: el nombre de su clúster -
PROXY_RESOURCE_GROUP_ID
: el grupo de recursos que aloja su clúster -
PROXY_SECRET_ID
: el ID del secreto que contiene su configuración de proxy, por ejemplo,https:// VAULT_NAME .vault.azure.net/secrets/ SECRET_NAME / SECRET_VERSION
¿Qué sigue?
- Lea información adicional sobre cómo crear un clúster .