Antes de seguir esta guía, familiarízate con la documentación de Descripción general de NEG de Internet, incluidas las limitaciones.
En el siguiente diagrama de arquitectura se muestra un frontend de un balanceador de carga de aplicación externo regional con un backend externo.
Permisos
Para seguir esta guía, debe crear un NEG de Internet y crear o modificar un balanceador de carga de aplicaciones en un proyecto. Debes ser propietario o editor (roles/owner
o roles/editor
) de un proyecto, o bien tener los dos roles de gestión de identidades y accesos de Compute Engine que se indican a continuación.
Tarea | Rol necesario |
---|---|
Crear y modificar componentes de balanceadores de carga | Administrador de red de Compute ( roles/compute.networkAdmin )
|
Crear y modificar grupos de puntos de conexión de red | Administrador de instancias de Compute ( roles/compute.instanceAdmin )
|
Configurar el entorno de backend externo fuera de Google Cloud
Para configurar tu entorno de backend externo, consulta las secciones siguientes.
Configurar endpoints de red
Configura un endpoint de red para exponer tu backend externo aGoogle Cloud. Asegúrate de que se pueda acceder al endpoint (una combinación de IP y puerto, o un nombre de dominio completo y un puerto) a través de Internet. Este endpoint se referencia más adelante desde el NEG de Internet.
Para obtener información detallada sobre los requisitos de configuración de los endpoints de los NEGs de Internet, consulta la descripción general de los NEGs de Internet.
Permitir que el backend externo reciba tráfico de Google Cloud
Puedes completar este paso después de crear la subred solo proxy y configurar la puerta de enlace Cloud NAT.
Para permitir que las solicitudes de Google Cloud lleguen a tu backend externo, debes seguir estos pasos:
- Configura una pasarela Cloud NAT con direcciones IP que se utilicen para el tráfico de salida de Google Cloud. La pasarela asigna el intervalo de subred solo proxy a las direcciones IP externas. Para ver los pasos, consulta Configurar una pasarela Cloud NAT.
- Asegúrate de que tu entorno de backend externo esté configurado para permitir que el tráfico de Google Cloud llegue al backend externo. Por ejemplo, si has usado direcciones IP reservadas previamente para la pasarela NAT, debes incluir esas direcciones IP en la lista de permitidas de tu entorno externo. Es probable que tengas que colaborar con el administrador de la red o de la seguridad de tu entorno externo para configurarlo.
Configurar el Google Cloud entorno
Necesitarás una red de VPC con dos subredes: una para los componentes del balanceador de carga y otra para la subred de solo proxy de la región. A continuación, creará el balanceador de carga con un backend de NEG de Internet.
Crear la red VPC y la subred
Esta subred se usa para crear los componentes del balanceador de carga.
consola de Cloud
- En la Google Cloud consola, ve a la página Redes de VPC.
Ve a Redes de VPC. - Haz clic en Crear red VPC.
- Escribe un nombre: LB_NETWORK.
- En la sección Subredes, haz lo siguiente:
- Elige Personalizado en Modo de creación de subred.
- En la sección Nueva subred, introduce la siguiente información:
- Nombre: LB_SUBNET_NAME
- Región: REGION
- Intervalo de direcciones IP: LB_SUBNET_RANGE
- Haz clic en Listo.
- Haz clic en Crear.
gcloud
Crea la red de VPC personalizada con el comando
gcloud compute networks create
:gcloud compute networks create LB_NETWORK \ --subnet-mode=custom
Crea una subred en la red LB_NETWORK.
gcloud compute networks subnets create LB_SUBNET_NAME \ --network=LB_NETWORK \ --range=LB_SUBNET_RANGE \ --region=REGION
Configurar la subred de solo proxy
Todos los balanceadores de carga regionales basados en Envoy de la región REGION usan esta subred solo de proxy.
Consola
- En la Google Cloud consola, ve a la página Redes de VPC.
Ve a Redes de VPC. - Selecciona una red de la lista.
- Haz clic en Añadir subred.
- Escribe un nombre: PROXY_ONLY_SUBNET_NAME.
- Selecciona una región: REGION.
- En Propósito, selecciona Proxy gestionado regional.
- Introduce un intervalo de direcciones IP: PROXY_ONLY_SUBNET_RANGE.
- Haz clic en Añadir.
gcloud
Crea la subred de solo proxy con el comando gcloud compute networks subnets
create
.
gcloud compute networks subnets create PROXY_ONLY_SUBNET_NAME \ --purpose=REGIONAL_MANAGED_PROXY \ --role=ACTIVE \ --region=REGION \ --network=LB_NETWORK \ --range=PROXY_ONLY_SUBNET_RANGE
Configurar una pasarela de Cloud NAT
Antes de configurar la pasarela Cloud NAT, asegúrate de haber consultado las limitaciones asociadas y los precios. Para obtener más información, consulta NEGs regionales: usar una puerta de enlace Cloud NAT.En los siguientes comandos se describe cómo configurar una pasarela Cloud NAT. La puerta de enlace Cloud NAT se puede configurar para usar direcciones IP externas NAT automáticas, en las que la asignación se basa en la demanda, o para usar un conjunto de direcciones IP externas reservadas manualmente. La pasarela asigna el intervalo de la subred de solo proxy a las direcciones IP externas.
Configurar direcciones IP asignadas de NAT automáticas
Cuando creas una pasarela Cloud NAT con asignación automática de direcciones IP de NAT, puedes especificar los niveles de servicio de red (nivel Premium o nivel Estándar) desde los que la pasarela Cloud NAT asigna las direcciones IP.
Consola
En la Google Cloud consola, ve a la página Cloud NAT.
Haz clic en Empezar o en Crear pasarela de Cloud NAT.
Introduce el nombre de la pasarela LB_NAT_CONFIG.
En Tipo de NAT, selecciona Público.
En la lista Red, selecciona LB_NETWORK.
En la lista Región, selecciona REGION.
Crea un router de Cloud Router en la región.
En Tipo de endpoint de origen, selecciona Balanceadores de carga de proxy gestionados.
En la lista Fuente, selecciona Personalizada.
- En Subredes, selecciona PROXY_ONLY_SUBNET_NAME.
En la lista Direcciones IP de Cloud NAT, selecciona Automático (recomendado).
En Nivel de servicio de red, elija Premium o Estándar.
Haz clic en Crear.
gcloud
Usa direcciones IP asignadas dinámicamente si tu entorno de backend externo no requiere que incluyas en una lista de permitidos direcciones IP específicas que puedan enviar tráfico al backend externo. Google Cloud
Crea un router de Cloud Router:
gcloud beta compute routers create ROUTER_NAME \ --network=LB_NETWORK \ --region=REGION
Configura la pasarela de Cloud NAT.
gcloud beta compute routers nats create LB_NAT_CONFIG \ --router=ROUTER_NAME \ --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \ --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \ --auto-allocate-nat-external-ips \ --region=REGION
Haz los cambios siguientes:
LB_NAT_CONFIG
: el nombre de tu configuración de NAT.ROUTER_NAME
: el nombre de tu Cloud Router.REGION
: la región de la NAT que se va a crear. Si no se especifica, es posible que se te pida que selecciones una región (solo en modo interactivo).PROXY_ONLY_SUBNET_NAME
: el nombre de tu proxy solo subred.
Configurar direcciones IP asignadas manualmente
Usa direcciones IP asignadas manualmente solo si tu entorno de backend externo requiere que uses una lista de permitidos para direcciones IP específicas. Google Cloud Si el entorno backend externo no necesita una lista de permitidos, utilice la asignación dinámica como se ha mostrado anteriormente.
Cuando creas una pasarela Cloud NAT, puedes asignar manualmente direcciones IP de NAT de los niveles Premium o Estándar, o de ambos, siempre que se cumplan ciertas condiciones.
Consola
En la Google Cloud consola, ve a la página Cloud NAT.
Haz clic en Empezar o en Crear pasarela de Cloud NAT.
Introduce el nombre de la pasarela LB_NAT_CONFIG.
En la lista Red, selecciona LB_NETWORK.
En la lista Región, selecciona REGION.
Selecciona o crea un Cloud Router en la región.
En Tipo de endpoint de origen, selecciona Balanceadores de carga de proxy gestionados.
En la lista Fuente, selecciona Personalizada.
- En Subredes, selecciona PROXY_ONLY_SUBNET_NAME.
En la lista Direcciones IP de Cloud NAT, selecciona Manual.
En Nivel de servicio de red, elija Premium o Estándar.
Selecciona o crea una dirección IP externa estática reservada para usarla en NAT.
Si quieres especificar más direcciones IP, haz clic en Añadir dirección IP y, a continuación, selecciona o crea otra dirección IP externa estática reservada.
Haz clic en Crear.
gcloud
Crea las direcciones IP. Como la pasarela realiza una traducción NAT de uno a uno, debes asegurarte de que el conjunto de direcciones IP reservadas sea lo suficientemente grande para gestionar el volumen de tráfico que esperas. Si no se asignan suficientes direcciones IP de NAT, se puede perder tráfico.
gcloud compute addresses create IP_ADDRESS_NAME_1 IP_ADDRESS_NAME_2 [IP_ADDRESS_NAME_3 ...] \ --region=REGION
Crea un router de Cloud Router:
gcloud compute routers create ROUTER_NAME \ --network=LB_NETWORK \ --region=REGION
Configura la pasarela de Cloud NAT.
gcloud beta compute routers nats create LB_NAT_CONFIG \ --router=ROUTER_NAME \ --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \ --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \ --nat-external-ip-pool=IP_ADDRESS_NAME_1,IP_ADDRESS_NAME_2,[IP_ADDRESS_NAME_3 ...] \ --region=REGION
Haz los cambios siguientes:
LB_NAT_CONFIG
: el nombre de tu configuración de NAT.ROUTER_NAME
: el nombre de tu Cloud Router.PROXY_ONLY_SUBNET_NAME
: el nombre de tu proxy solo subred.REGION
: la región de la NAT que se va a crear. Si no se especifica, es posible que se te pida que selecciones una región (solo en modo interactivo).
Configurar la asignación dinámica de puertos
Actualiza la pasarela de Cloud NAT para que use el modo de asignación dinámica de puertos y así poder usar todas las direcciones IP asignadas.
gcloud
Actualiza la pasarela de Cloud NAT. Te recomendamos que definas el número mínimo de puertos en 2048 y el máximo en 4096.
gcloud compute routers nats update LB_NAT_CONFIG \ --router=ROUTER_NAME \ --enable-dynamic-port-allocation \ --min-ports-per-vm=MIN_PORTS_PER_VM \ --max-ports-per-vm=MAX_PORTS_PER_VM \ --region=REGION
Comprueba que la asignación dinámica de puertos esté habilitada y que se hayan definido el número mínimo y máximo de puertos.
gcloud compute routers nats describe LB_NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION
El resultado debería ser similar al siguiente:
enableDynamicPortAllocation: true enableEndpointIndependentMapping: false endpointTypes: ‐ ENDPOINT_TYPE_MANAGED_PROXY_LB logConfig: enable: true filter: ALL maxPortsPerVm: 4096 minPortsPerVm: 2048 name: LB_NAT_CONFIG natIpAllocateOption: MANUAL_ONLY natIps: ‐ https://www.googleapis.com/compute/projects/PROJECT_NAME/regions/REGION/addresses/ADDRESS sourceSubnetworkIpRangesToNat: ALL_SUBNETWORKS_ALL_IP_RANGES type: PUBLIC
Para obtener más información, consulta Especificar intervalos de subredes para NAT en la documentación de Cloud NAT.
Asegúrate de usar una lista de permitidos para los intervalos de direcciones IP de NAT en tu entorno de backend externo para que este pueda recibir tráfico de Google Cloud.
Reservar la dirección IP del balanceador de carga
Reserva una dirección IP estática para el balanceador de carga.
Consola
En la Google Cloud consola, ve a la página Reservar una dirección estática.
Elige un nombre para la nueva dirección.
En Nivel de servicio de red, selecciona Estándar.
En Versión de IP, selecciona IPv4. Las direcciones IPv6 solo pueden ser globales y solo se pueden usar con balanceadores de carga globales.
En Type (Tipo), selecciona Regional (Regional).
Selecciona una región.
Deje la opción Adjunto a configurada como Ninguno. Una vez que hayas creado el balanceador de carga, esta dirección IP se adjuntará a la regla de reenvío del balanceador de carga.
Haz clic en Reservar para reservar la dirección IP.
gcloud
Para reservar una dirección IP externa estática con
gcloud compute
, usa el comandocompute addresses create
.gcloud compute addresses create LB_IP_ADDRESS \ --region=REGION \ --network-tier=STANDARD
Haz los cambios siguientes:
LB_IP_ADDRESS
: el nombre que quieras darle a esta dirección.REGION
: la región en la que quieres reservar esta dirección. Esta región debe ser la misma que la del balanceador de carga. Todas las direcciones IP regionales sonIPv4
.
Usa el comando
compute addresses describe
para ver el resultado:gcloud compute addresses describe LB_IP_ADDRESS
Configurar el NEG de Internet
Puede crear un NEG de Internet con INTERNET_FQDN_PORT
puntos finales o INTERNET_IP_PORT
puntos finales.
Consola
Crea un NEG con INTERNET_FQDN_PORT
puntos finales.
En la Google Cloud consola, ve a la página Grupo de extremos de red.
Haz clic en Crear grupo de endpoints de red.
Especifica un INTERNET_NEG_NAME para tu NEG de Internet. Para obtener más información, consulta el artículo Convenciones para asignar nombres de recursos.
En la lista Tipo de grupo de endpoints de red, selecciona Grupo de endpoints de red (Internet) y, a continuación, haz lo siguiente:
- En la lista Ámbito, selecciona Regional.
- Opcional: En la lista Región, cambia el REGION de este NEG.
- En la lista Red, selecciona LB_NETWORK.
- En el cuadro Puerto predeterminado, introduce DEFAULT_PORT_NUMBER.
- En la lista Añadir endpoints mediante, selecciona Nombre de dominio cualificado y puerto.
- Selecciona Crear.
Añadir puntos finales INTERNET_FQDN_PORT
al NEG
En la Google Cloud consola, ve a la página Grupo de extremos de red.
- Haz clic en INTERNET_NEG_NAME.
Introduce el nombre de dominio completo, como
myorg.example.com
. Debe especificar los objetos FQDN con la sintaxis FQDN estándar.Opcional: En Tipo de puerto, selecciona Personalizado. Si el Tipo de puerto es
Default
, se usa el puerto predeterminado del NEG.- En el cuadro Número de puerto, introduce PORT_NUMBER_1.
- Selecciona Crear.
Crea un NEG con INTERNET_IP_PORT
puntos finales.
En la Google Cloud consola, ve a la página Grupo de extremos de red.
Haz clic en Crear grupo de endpoints de red.
Especifica un nombre INTERNET_NEG_NAME para tu NEG de Internet. Para obtener más información, consulta el artículo Convenciones para asignar nombres de recursos.
En la lista Tipo de grupo de endpoints de red, selecciona Grupo de endpoints de red (Internet) y, a continuación, haz lo siguiente:
- En la lista Ámbito, selecciona Regional.
- Opcional: En la lista Región, cambia el REGION de este NEG.
- En la lista Red, selecciona LB_NETWORK.
- En el cuadro Puerto predeterminado, introduce DEFAULT_PORT_NUMBER.
- En la lista Añadir endpoints mediante, selecciona IP y puerto.
- Selecciona Crear.
Añadir puntos finales INTERNET_IP_PORT
al NEG
En la Google Cloud consola, ve a la página Grupo de extremos de red.
- Haz clic en INTERNET_NEG_NAME.
- En el campo Dirección IP, introduce IP_ADDRESS_1.
Opcional: En la lista Tipo de puerto, selecciona Personalizado. Si el Tipo de puerto es
Default
, se usa el puerto predeterminado del NEG.- En el campo Número de puerto, introduce PORT_NUMBER_1.
- Selecciona Crear.
gcloud
Para crear un NEG con endpoints INTERNET_FQDN_PORT
, sigue estos pasos:
Crea el recurso NEG.
gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \ --network-endpoint-type=INTERNET_FQDN_PORT \ --default-port=DEFAULT_PORT_NUMBER \ --network=LB_NETWORK \ --region=REGION
Añade endpoints al NEG. Si no se especifica ningún puerto, se usa el puerto predeterminado del NEG.
gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \ --add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_1,port=PORT_NUMBER_1" \ [--add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_2,port=PORT_NUMBER_2" \] --region=REGION
Haz los cambios siguientes:
FULLY_QUALIFIED_DOMAIN_NAME
: nombre de dominio completo del endpointPORT_NUMBER
: número de puerto del endpoint.
Puedes añadir hasta 256 endpoints por NEG.
Si tu dominio se puede resolver en Internet, no es necesario realizar ninguna otra configuración para configurar el DNS. Sin embargo, si usas FQDNs privados, tendrás que configurar Cloud DNS para facilitar la resolución de DNS. El nombre debe estar alojado en Cloud DNS o resolverse mediante el reenvío de DNS de Cloud DNS a un DNS local.
Empieza creando una zona de Cloud DNS para alojar los registros DNS de tu proyecto. A continuación, añade los registros DNS. Consulta la documentación de Cloud DNS para ver los pasos de configuración específicos.
Para crear un NEG con endpoints INTERNET_IP_PORT
, sigue estos pasos:
Crea el recurso NEG.
gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \ --network-endpoint-type=INTERNET_IP_PORT \ --default-port=DEFAULT_PORT_NUMBER \ --network=LB_NETWORK \ --region=REGION
Añade endpoints al NEG. Si no se especifica ningún puerto, se usa el puerto predeterminado del NEG.
gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \ --add-endpoint="ip=IP_ADDRESS_1,port=PORT_NUMBER_1" \ [--add-endpoint="ip=IP_ADDRESS_2,port=PORT_NUMBER_2" \] --region=REGION
Haz los cambios siguientes:
IP_ADDRESS
: la dirección IP del endpointPORT_NUMBER
: número de puerto del endpoint.
Puede repetir este paso para añadir hasta 256 endpoints por NEG.
Crear el balanceador de carga
Consola
Selecciona el tipo de balanceador de carga
En la Google Cloud consola, ve a la página Balanceo de carga.
- Haga clic en Crear balanceador de carga.
- En Tipo de balanceador de carga, selecciona Balanceador de carga de aplicación (HTTP/HTTPS) y haz clic en Siguiente.
- En Público o interno, selecciona Público (externo) y haz clic en Siguiente.
- Para la implementación global o en una sola región, selecciona La mejor opción para cargas de trabajo regionales y haz clic en Siguiente.
- Haz clic en Configurar.
Configuración básica
- Introduce un nombre de balanceador de carga.
- En Región, selecciona REGION.
- En Red, selecciona LB_NETWORK.
Reservar una subred de solo proxy
Para reservar una subred de solo proxy, sigue estos pasos:
- Haz clic en Reservar subred.
- En Nombre, escribe PROXY_ONLY_SUBNET_NAME.
- En Intervalo de direcciones IP, introduce PROXY_ONLY_SUBNET_RANGE.
- Haz clic en Añadir.
Configuración de frontend
- Haz clic en Configuración de frontend.
- Escribe un nombre.
Para crear un balanceador de carga HTTPS, debes tener un certificado SSL. Te recomendamos que uses un certificado gestionado por Google.
Propiedad Valor (escribe un valor o selecciona una opción según se especifique) Protocolo HTTPS Versión de IP IPv4 Dirección IP Selecciona la dirección IP que has reservado anteriormente: LB_IP_ADDRESS. Puerto 443 Certificado Selecciona un certificado SSL o crea uno.
Para crear un balanceador de carga HTTPS, debes tener un recurso de certificado SSL que usar en el proxy HTTPS.
Si quieres probar este proceso sin configurar un recurso de certificado SSL (o un dominio, como requieren los certificados gestionados por Google), puedes configurar un balanceador de carga HTTP.
Para crear un balanceador de carga HTTP, comprueba que las siguientes opciones estén configuradas con estos valores:
Propiedad Valor (escribe un valor o selecciona una opción según se especifique) Protocolo HTTP Versión de IP IPv4 Dirección IP Selecciona la dirección IP que has reservado anteriormente: LB_IP_ADDRESS. Puerto 80 Haz clic en Listo.
Configuración de backend
- Haz clic en Configuración de backend.
- Haz clic en Servicios y segmentos de backend.
- Haz clic en Crear un servicio de backend.
- Escribe un nombre.
- En Tipo de backend, selecciona Grupo de endpoints de red de Internet.
- En Protocolo, selecciona el protocolo que quieras usar desde el balanceador de carga hasta el NEG de Internet.
- En Backends (Backends), en la ventana New backend (Nuevo backend), selecciona el Regional internet network endpoint group (Grupo de endpoints de red de Internet regional) creado en el paso anterior.
- Haz clic en Listo.
- Configura la comprobación del estado:
- En Comprobación del estado, selecciona Crear una comprobación del estado.
- Asigna el nombre HTTP_HEALTH_CHECK_NAME a la comprobación del estado.
- En Protocol (Protocolo), selecciona HTTP.
- Define Puerto como
80
.
- Haz clic en Crear.
Revisar y finalizar
- Haz clic en Revisar y finalizar.
- Si todo es correcto, haz clic en Crear.
gcloud
- Opcional: Crea una comprobación del estado. Las comprobaciones del estado de los backends externos usan las comprobaciones del estado de Envoy distribuidas y se traducen mediante NAT más adelante.
gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \ --region=REGION \ --use-serving-port
- Crea un servicio de backend:
gcloud compute backend-services create BACKEND_SERVICE \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTP \ --health-checks=HTTP_HEALTH_CHECK_NAME \ --health-checks-region=REGION \ --region=REGION
- Añade el NEG de Internet al servicio de backend:
gcloud compute backend-services add-backend BACKEND_SERVICE \ --network-endpoint-group=INTERNET_NEG_NAME \ --network-endpoint-group-region=REGION \ --region=REGION
- Crea un mapa de URLs para enrutar las solicitudes entrantes al servicio de backend:
gcloud compute url-maps create URL_MAP_NAME \ --default-service=BACKEND_SERVICE \ --region=REGION
-
Opcional: Realiza este paso si usas HTTPS entre el cliente y el balanceador de carga. Este paso no es obligatorio para los balanceadores de carga HTTP.
Puedes crear certificados de Compute Engine o de Certificate Manager. Utiliza cualquiera de los siguientes métodos para crear certificados con Certificate Manager:
- Certificados autogestionados regionales. Para obtener información sobre cómo crear y usar certificados regionales autogestionados, consulta Implementar un certificado regional autogestionado. No se admiten mapas de certificados.
Certificados gestionados por Google regionales. No se admiten mapas de certificados.
Certificate Manager admite los siguientes tipos de certificados regionales gestionados por Google:
- Certificados regionales gestionados por Google con autorización de DNS por proyecto. Para obtener más información, consulta el artículo sobre cómo desplegar un certificado regional gestionado por Google con autorización de DNS.
- Certificados privados gestionados por Google regionales con el Servicio de Autoridades de Certificación. Para obtener más información, consulta el artículo sobre cómo implementar un certificado regional gestionado por Google con el Servicio de Autoridades de Certificación.
Una vez que hayas creado los certificados, adjúntalos directamente al proxy de destino.
Para crear un recurso de certificado SSL autogestionado de Compute Engine, sigue estos pasos:gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \ --certificate CRT_FILE_PATH \ --private-key KEY_FILE_PATH
-
Crea un proxy HTTP(S) de destino para enrutar las solicitudes a tu mapa de URLs.
En el caso de un balanceador de carga HTTP, crea un proxy HTTP de destino:
gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \ --url-map=URL_MAP_NAME \ --region=REGION
En el caso de un balanceador de carga HTTPS, crea un proxy HTTPS de destino. El proxy es la parte del balanceador de carga que contiene el certificado SSL para el balanceo de carga HTTPS, por lo que también debes cargar el certificado en este paso.
gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \ --ssl-certificates=SSL_CERTIFICATE_NAME \ --url-map=URL_MAP_NAME \ --region=REGION
-
Crea una regla de reenvío para dirigir las solicitudes entrantes al proxy.
En el caso de un balanceador de carga HTTP:
gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \ --load-balancing-scheme=EXTERNAL_MANAGED \ --network-tier=STANDARD \ --network=LB_NETWORK \ --address=LB_IP_ADDRESS \ --target-http-proxy=TARGET_HTTP_PROXY_NAME \ --target-http-proxy-region=REGION \ --region=REGION \ --ports=80
En el caso de un balanceador de carga HTTPS:
gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \ --load-balancing-scheme=EXTERNAL_MANAGED \ --network-tier=STANDARD \ --network=LB_NETWORK \ --address=LB_IP_ADDRESS \ --target-https-proxy=TARGET_HTTPS_PROXY_NAME \ --target-https-proxy-region=REGION \ --region=REGION \ --ports=443
Conectar tu dominio a tu balanceador de carga
Una vez creado el balanceador de carga, anota la dirección IP asociada a él. Por ejemplo, 30.90.80.100
. Para dirigir tu dominio a tu balanceador de carga, crea un registro A
con tu servicio de registro de dominios. Si has añadido varios dominios a tu certificado SSL, debes añadir un registro A
para cada uno de ellos, todos apuntando a la dirección IP del balanceador de carga. Por ejemplo, para crear registros A
de www.example.com
y example.com
, usa lo siguiente:
NAME TYPE DATA www A 30.90.80.100 @ A 30.90.80.100
Si usas Cloud DNS como proveedor de DNS, consulta el artículo sobre cómo añadir, modificar y eliminar registros.
Probar el balanceador de carga
Ahora que has configurado el balanceador de carga, puedes empezar a enviar tráfico a la dirección IP del balanceador de carga. Si has configurado un dominio, también puedes enviar tráfico al nombre de dominio. Sin embargo, la propagación de DNS puede tardar en completarse, por lo que puedes empezar usando la dirección IP para hacer pruebas.
Consola
En la Google Cloud consola, ve a la página Balanceo de carga.
Haz clic en el balanceador de carga que acabas de crear.
Anota la dirección IP del balanceador de carga.
Envía tráfico al balanceador de carga.
Si has creado un balanceador de carga HTTP, puedes probarlo yendo a
http://IP_ADDRESS
. SustituyeIP_ADDRESS
por la dirección IP del balanceador de carga. Se te dirigirá a la aplicación que estés ejecutando en el backend externo.Si has creado un balanceador de carga HTTPS, puedes probarlo yendo a
https://IP_ADDRESS
. SustituyeIP_ADDRESS
por la dirección IP del balanceador de carga. Se te dirigirá a la aplicación que estés ejecutando en el backend externo.
Si no funciona y estás usando un certificado gestionado por Google, confirma que el estado del recurso de tu certificado es ACTIVE. Para obtener más información, consulta el estado del recurso de certificado SSL gestionado por Google.
También puedes usar
curl
desde la línea de comandos de tu máquina local. SustituyeIP_ADDRESS
por la dirección IPv4 del balanceador de carga. Si usas un certificado gestionado por Google, prueba el dominio que apunta a la dirección IP del balanceador de carga. Por ejemplo:curl -s 'https://www.example.com:443' --resolve www.example.com:443:IP_ADDRESS
Opcional: Si usas un dominio personalizado, puede que tengas que esperar a que se propaguen los ajustes de DNS actualizados. A continuación, prueba tu dominio en el navegador web.
Si necesitas ayuda para solucionar problemas, consulta el artículo Solucionar problemas de NEG y backend externo e Internet.
Configuración adicional
En esta sección se amplía el ejemplo de configuración para ofrecer opciones de configuración alternativas y adicionales. Todas las tareas son opcionales. Puedes llevarlas a cabo en el orden que quieras.
Usar un encabezado personalizado para autenticar solicitudes
Para autenticar las solicitudes enviadas a tu backend externo, puedes definir un encabezado personalizado que indique que la solicitud procede de un Google Cloud balanceador de carga. También tendrás que configurar el backend externo para que espere este encabezado personalizado en el tráfico procedente de Google Cloud.
Para saber cómo configurar encabezados personalizados, consulta el artículo Configurar la gestión avanzada del tráfico.Para obtener información sobre otros métodos de autenticación, consulta Autenticar solicitudes al backend externo.
Habilitar IAP en el balanceador de carga de aplicación externo
Puedes configurar las compras en aplicaciones para que estén habilitadas o inhabilitadas (opción predeterminada). Si está habilitada, debe proporcionar valores para oauth2-client-id
y oauth2-client-secret
.
Para habilitar IAP, actualiza el servicio de backend para incluir la marca --iap=enabled
con oauth2-client-id
y oauth2-client-secret
.
De forma opcional, puedes habilitar IAP en un recurso de Compute Engine mediante la Google Cloud consola, la CLI de gcloud o la API.