Compatibilidad con proxy para clústeres adjuntos de AKS
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Si tu organización usa un proxy HTTP para el tráfico de Internet, debes configurar los clústeres conectados de GKE según corresponda. En este documento, se describe cómo realizar esta configuración.
Antes de comenzar
Los clústeres conectados de GKE requieren conectividad a varios servicios de Google Cloud. Asegúrate de que tu 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
Reemplaza GCP_LOCATION por la región de Google Cloud en el que reside tu clúster. Especifica us-west1 o alguna otra región compatible.
Configura la compatibilidad con el proxy para clústeres adjuntos de GKE
Para configurar la compatibilidad con proxy para clústeres adjuntos de GKE, sigue estos pasos:
Crea un archivo de configuración de proxy que contenga valores para las claves httpProxy, noProxy y httpsProxy:
HTTP_PROXY_AUTHENTICATION_URL: La URL del servidor proxy, que consta de un nombre de host y una dirección IP, y de forma opcional un puerto, un nombre de usuario y una contraseña. Por ejemplo, http://user:password@192.0.2.0:80 o solo 198.51.100.255.
HTTPS_PROXY_AUTH_URL: La URL del proxy para el tráfico HTTPS encriptado, que consta de un nombre de host o una dirección IP, y de forma opcional un puerto, un nombre de usuario y una contraseña.
NO_PROXY_ADDRESSES: una lista separada por comas de URLs, bloques CIDR y nombres de DNS de recursos que pueden omitir el proxy.
Esto indica a los clústeres conectados de GKE que eviten usar el proxy para los recursos especificados. Ten en cuenta lo siguiente:
Los valores pueden ser direcciones IP individuales, rangos de CIDR, nombres de dominio o incluso el carácter asterix (*). Usando un solo asterisco (*) en el campo noProxy indica a los clústeres conectados a GKE que omitan el proxy para todo el tráfico.
Un dominio que comienza con un punto, como .google.com, se orienta a todos sus subdominios. Por ejemplo, .google.com incluye direcciones como mail.google.com y drive.google.com, pero excluye google.com.
Asegúrate de incluir los dominios kubernetes.default.svc.cluster.local y kubernetes.default.svc para un registro adecuado. Veamos un ejemplo:
198.51.100.0,192.0.2.0/16,examplepetstore.com,.altostrat.com,kubernetes.default.svc.cluster.local, kubernetes.default.svc
Cuando crees el archivo de configuración del proxy, cumple con los siguientes lineamientos:
Los campos httpProxy y httpsProxy no aceptan prefijos https://.
Usa http://, incluso si la dirección real del servidor proxy comienza con https://.
Por ejemplo, representa https://proxy.example.com:3128 como http://proxy.example.com:3128.
Es obligatorio proporcionar valores para los tres campos: httpProxy, httpsProxy y noProxy.
Considera agregar dominios, direcciones IP o CIDR adicionales a la lista noProxy. Te recomendamos incluir el rango de IP de VPC.
Ejecuta el siguiente comando para crear un secreto de Kubernetes que contenga la configuración del proxy:
PROXY_CONFIGURATION_FILE: Es la configuración del proxy que creaste en el paso 1.
Para marcar el Secret de Kubernetes como inmutable, configura su campo immutable como true:
kubectl edit secret SECRET_NAME
Reemplaza SECRET_NAME por el nombre del Secret de Kubernetes.
Configura un clúster nuevo o existente para usar el proxy:
Clúster nuevo
Para registrar un clúster nuevo y aplicar la configuración del proxy, usa el comando gcloud container attached clusters register. Asegúrate de proporcionar los argumentos opcionales --proxy-secret-name y --proxy-secret-namespace:
Para actualizar un clúster registrado antes con una configuración de proxy nueva, usa el comando gcloud container attached clusters update. Asegúrate de proporcionar los argumentos opcionales --proxy-secret-name y --proxy-secret-namespace:
Después de seguir estos pasos, los clústeres adjuntos de GKE procesan el tráfico saliente de Internet mediante el servidor proxy especificado en el archivo de configuración.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2024-06-29 (UTC)"],[],[],null,["# Proxy support for AKS attached clusters\n\nIf your organization uses an HTTP proxy for internet traffic, you need to\nconfigure GKE attached clusters accordingly. This document describes how to perform\nthis configuration.\n\nBefore you begin\n----------------\n\nGKE attached clusters requires connectivity to various Google Cloud services. Make\nsure your proxy server allows traffic to the following domains:\n\n- `.gcr.io`\n- `cloudresourcemanager.googleapis.com`\n- `container.googleapis.com`\n- `gkeconnect.googleapis.com`\n- `gkehub.googleapis.com`\n- `oauth2.googleapis.com`\n- `securetoken.googleapis.com`\n- `storage.googleapis.com`\n- `sts.googleapis.com`\n- `www.googleapis.com`\n- `servicecontrol.googleapis.com`\n- `logging.googleapis.com`\n- `monitoring.googleapis.com`\n- `opsconfigmonitoring.googleapis.com`\n- \u003cvar translate=\"no\"\u003eGCP_LOCATION\u003c/var\u003e`-gkemulticloud.googleapis.com`\n\nReplace \u003cvar translate=\"no\"\u003eGCP_LOCATION\u003c/var\u003e with the Google Cloud region in\nwhich your cluster resides. Specify `us-west1` or another\n[supported region](/kubernetes-engine/multi-cloud/docs/attached/aks/reference/supported-regions).\n\nConfigure proxy support for GKE attached clusters\n-------------------------------------------------\n\nTo configure proxy support for GKE attached clusters, follow these\nsteps:\n\n1. Create a proxy configuration file which contains values for `httpProxy`,\n `noProxy`, and `httpsProxy` keys:\n\n {\n \"httpProxy\": \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-nv\"\u003eHTTP_PROXY_AUTHENTICATION_URL\u003c/span\u003e\u003c/var\u003e,\n \"httpsProxy\": \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-nv\"\u003eHTTPS_PROXY_AUTH_URL\u003c/span\u003e\u003c/var\u003e,\n \"noProxy\": \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-nv\"\u003eNO_PROXY_ADDRESSES\u003c/span\u003e\u003c/var\u003e\n }\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eHTTP_PROXY_AUTHENTICATION_URL\u003c/var\u003e: the proxy server URL, which consists of a hostname/IP address, and optionally a port, username, and password. For example: `http://user:password@192.0.2.0:80` or just `198.51.100.255`.\n - \u003cvar translate=\"no\"\u003eHTTPS_PROXY_AUTH_URL\u003c/var\u003e: the proxy URL for encrypted HTTPS traffic, which consists of a hostname/IP address, and optionally a port, username, and password.\n - \u003cvar translate=\"no\"\u003eNO_PROXY_ADDRESSES\u003c/var\u003e: a comma-separated list of URLs, CIDR blocks, and DNS names of resources that can bypass the proxy. This directs GKE attached clusters to avoid using the proxy for the specified resources. Keep in mind the following:\n - Values can be individual IP addresses, CIDR ranges, domain names, or even the asterix character (\\*). Using a single asterix (`*`) in the `noProxy` field tells GKE attached clusters to skip the proxy for all traffic.\n - A domain leading with a dot, such as `.google.com`, targets all its subdomains. For example, `.google.com` includes addresses such as `mail.google.com` and `drive.google.com`, but excludes `google.com`.\n - Ensure that you include `kubernetes.default.svc.cluster.local` and `kubernetes.default.svc` domains for proper logging. Here's an example: `198.51.100.0,192.0.2.0/16,examplepetstore.com,.altostrat.com,kubernetes.default.svc.cluster.local, kubernetes.default.svc`.\n\n When creating the proxy configuration file, adhere to the following\n guidelines:\n - The `httpProxy` and `httpsProxy` fields don't accept `https://` prefixes. Use `http://`, even if the real proxy server address begins with `https://`. For example, represent `https://proxy.example.com:3128` as `http://proxy.example.com:3128`.\n - It's compulsory to provide values for all three fields: `httpProxy`, `httpsProxy`, and `noProxy`.\n - Consider appending additional domains, IP addresses, or CIDRs to the `noProxy` list. We recommend that you include the VPC IP range.\n2. Create a Kubernetes Secret, which contains the proxy configuration, by\n running the following command:\n\n kubectl create secret generic \u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e \\\n --from-file=\u003cvar translate=\"no\"\u003ePROXY_CONFIGURATION_FILE\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e: the name of the Kubernetes Secret\n - \u003cvar translate=\"no\"\u003ePROXY_CONFIGURATION_FILE\u003c/var\u003e: the path to the proxy configuration you created in step 1.\n3. Mark the Kubernetes Secret as\n [immutable](https://kubernetes.io/docs/concepts/configuration/secret/#secret-immutable)\n by setting its `immutable` field to `true`:\n\n kubectl edit secret \u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e with the name of the Kubernetes\n Secret.\n4. Configure a new or existing cluster to use the proxy:\n\n ### New cluster\n\n To register a new cluster and apply the proxy configuration, use the\n [`gcloud container attached clusters register` command](/sdk/gcloud/reference/container/attached/clusters/register). Make sure to provide the optional arguments\n `--proxy-secret-name` and `--proxy-secret-namespace`: \n\n gcloud container attached clusters register \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e \\\n --proxy-secret-name=\u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e \\\n --proxy-secret-namespace=\u003cvar translate=\"no\"\u003eSECRET_NAMESPACE\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e: the name of the cluster\n - \u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e: the name of the Kubernetes Secret containing the proxy configuration\n - \u003cvar translate=\"no\"\u003eSECRET_NAMESPACE\u003c/var\u003e: the Kubernetes namespace where the Secret is stored\n\n For information about all the arguments you can use when registering a\n cluster, see the\n [`gcloud container attached clusters register` command](/sdk/gcloud/reference/container/attached/clusters/register).\n\n ### Existing cluster\n\n To update a previously registered cluster with a new proxy configuration,\n use the\n [`gcloud container attached clusters update` command](/sdk/gcloud/reference/container/attached/clusters/update). Make sure to provide the optional arguments `--proxy-secret-name`\n and `--proxy-secret-namespace`: \n\n gcloud container attached clusters update \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e \\\n --proxy-secret-name=\u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e \\\n --proxy-secret-namespace=\u003cvar translate=\"no\"\u003eSECRET_NAMESPACE\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e: the name of the cluster\n - \u003cvar translate=\"no\"\u003eSECRET_NAME\u003c/var\u003e: the name of the Kubernetes Secret containing the proxy configuration\n - \u003cvar translate=\"no\"\u003eSECRET_NAMESPACE\u003c/var\u003e: the Kubernetes namespace where the Secret is stored\n\n This step is required if your proxy server details have changed, or if an\n initial cluster registration overlooked proxy requirements.\n\n For information about all the arguments you can use when updating a\n cluster, see the\n [`gcloud container attached clusters update` command](/sdk/gcloud/reference/container/attached/clusters/update).\n\nAfter performing these steps, GKE attached clusters processes outbound internet\ntraffic using the proxy server specified in the configuration file."]]