Configurar un balanceador de carga de aplicaciones externo regional con conectividad híbrida

En esta página se explica cómo desplegar un balanceador de carga de aplicaciones externo regional para balancear la carga del tráfico a los puntos finales de red que se encuentran en entornos on-premise o en otras nubes públicas y a los que se puede acceder mediante conectividad híbrida.

Una vez que hayas completado estas tareas, puedes habilitar otros servicios (como Cloud CDN y Google Cloud Armor) y funciones avanzadas de gestión del tráfico.

Si aún no lo has hecho, consulta la descripción general de los NEG de conectividad híbrida para conocer los requisitos de red necesarios para configurar el balanceo de carga híbrido.

Descripción general de la configuración

En el ejemplo de esta página se configura la siguiente implementación de muestra:

Ejemplo de balanceador de carga de aplicación externo para la conectividad híbrida.
Ejemplo de balanceador de carga de aplicación externo para la conectividad híbrida (haz clic en la imagen para ampliarla).

Debes configurar la conectividad híbrida antes de intentar configurar una implementación de equilibrio de carga híbrida. Este documento no incluye la configuración de la conectividad híbrida.

En función del producto de conectividad híbrida que elijas (Cloud VPN o Cloud Interconnect [Dedicated o Partner]), consulta la documentación del producto correspondiente para configurarlo.

Permisos

Para configurar el balanceo de carga híbrido, debes tener los siguientes permisos:

  • Activado Google Cloud

  • En tu entorno local u otro entorno que no sea deGoogle Cloud cloud

    • Permisos para configurar endpoints de red que permitan que los servicios de tu entorno local u otros entornos de nube sean accesibles desdeGoogle Cloud mediante una combinación de IP:Port. Para obtener más información, ponte en contacto con el administrador de red de tu entorno.
    • Permisos para crear reglas de cortafuegos en tu entorno local u otros entornos de nube para permitir que las sondas de comprobación del estado de Google lleguen a los endpoints.

Además, para completar las instrucciones de esta página, debe crear un NEG de conectividad híbrida, un balanceador de carga y NEGs zonales (y sus endpoints) para que actúen como back-ends basados en Google Clouddel balanceador de carga.

Debes tener el rol de propietario o editor del proyecto, o bien los siguientes roles de gestión de identidades y accesos de Compute Engine.

Tarea Rol necesario
Crear redes, subredes y componentes de balanceador de carga Administrador de red de Compute (roles/compute.networkAdmin)
Añadir y eliminar reglas de cortafuegos Administrador de seguridad de Compute (roles/compute.securityAdmin)
Crear instancias Administrador de instancias de Compute (roles/compute.instanceAdmin)

Establecer una conectividad híbrida

Tu entorno Google Cloud y el entorno on-premise u otros entornos de nube deben conectarse mediante conectividad híbrida usando vinculaciones de VLAN de Cloud Interconnect o túneles de Cloud VPN con Cloud Router o VMs de dispositivo router. Te recomendamos que uses una conexión de alta disponibilidad.

Un Cloud Router habilitado con enrutamiento dinámico global obtiene información sobre el endpoint específico mediante el protocolo de pasarela fronteriza (BGP) y lo programa en tu Google Cloud red de VPC. No se admite el enrutamiento dinámico regional. Tampoco se admiten las rutas estáticas.

Puedes usar la misma red de VPC o una diferente en el mismo proyecto para configurar tanto la red híbrida (Cloud Interconnect, Cloud VPN o una VM de dispositivo Router) como el balanceador de carga. Ten en cuenta lo siguiente:

  • Si usas redes de VPC diferentes, las dos redes deben estar conectadas mediante el emparejamiento entre redes de VPC o deben ser radios de VPC en el mismo hub de Network Connectivity Center.

  • Si usas la misma red de VPC, asegúrate de que los intervalos CIDR de las subredes de tu red de VPC no entren en conflicto con los intervalos CIDR remotos. Cuando las direcciones IP se superponen, se priorizan las rutas de subred sobre la conectividad remota.

Para obtener instrucciones, consulta la siguiente documentación:

Configurar un entorno externo Google Cloud

Sigue estos pasos para configurar tu entorno local u otro entorno de nube para el balanceo de carga híbrido:

  • Configura los endpoints de red para exponer los servicios locales aGoogle Cloud (IP:Port).
  • Configura reglas de cortafuegos en tu entorno local u otro entorno de nube.
  • Configura Cloud Router para que anuncie determinadas rutas necesarias a tu entorno privado.

Configurar endpoints de red

Después de configurar la conectividad híbrida, configura uno o varios endpoints de red en tu entorno local u otros entornos de nube a los que se pueda acceder a través de Cloud Interconnect, Cloud VPN o el dispositivo Router mediante una combinación de IP:port. Esta IP:portcombinación se configura como uno o varios endpoints para el NEG de conectividad híbrida que se crea Google Cloud más adelante en este proceso.

Si hay varias rutas al endpoint IP, el enrutamiento sigue el comportamiento descrito en la descripción general de Cloud Router.

Configurar reglas de cortafuegos

Debes crear las siguientes reglas de cortafuegos en tu entorno local u otro entorno de nube:

  • Crea una regla de cortafuegos de entrada en un entorno local o en otra nube para permitir que el tráfico de la subred de solo proxy de la región llegue a los endpoints.
  • No es necesario permitir el tráfico de los intervalos de sondeo de comprobación del estado de Google para los NEGs híbridos. Sin embargo, si utilizas una combinación de NEGs híbridos y zonales en un mismo servicio de backend, debes permitir el tráfico de los intervalos de sondeo de comprobación de estado de Google para los NEGs zonales.

Configura Cloud Router para anunciar los siguientes intervalos de IP personalizados a tu entorno local u otro entorno de nube:

  • Intervalo de la subred de solo proxy de la región.

Configurar el entorno de Google Cloud

En los pasos siguientes, asegúrate de usar la misma red de VPC (llamada NETWORK en este procedimiento) que se usó para configurar la conectividad híbrida entre los entornos.

Además, asegúrate de que la región utilizada (denominada REGION en este procedimiento) sea la misma que la que se ha usado para crear el túnel de Cloud VPN o la vinculación de VLAN de Cloud Interconnect.

Configurar la subred de solo proxy

Esta subred de solo proxy se usa en todos los balanceadores de carga de aplicaciones externos regionales de la región REGION.

Consola

  1. En la Google Cloud consola, ve a la página Redes de VPC.
    Ve a Redes de VPC.
  2. Ve a la red que se usó para configurar la conectividad híbrida entre los entornos.
  3. Haz clic en Añadir subred.
  4. Escribe un nombre: PROXY_ONLY_SUBNET_NAME.
  5. Selecciona una región: REGION.
  6. En Propósito, selecciona Proxy gestionado regional.
  7. Introduce un intervalo de direcciones IP: PROXY_ONLY_SUBNET_RANGE.
  8. 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=NETWORK \
  --range=PROXY_ONLY_SUBNET_RANGE

Configurar la subred del balanceador de carga

Esta subred se usa para crear los back-ends de NEG zonales del balanceador de carga, el frontend y la dirección IP interna.

Crea esta subred en la NETWORK red que se usó para configurar la conectividad híbrida entre los entornos.

consola de Cloud

  1. En la Google Cloud consola, ve a la página Redes de VPC.
    Ve a Redes de VPC.
  2. Ve a la red que se ha usado para configurar la conectividad híbrida entre los entornos.
  3. 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.
  4. Haz clic en Crear.

gcloud

Crea una subred en la red NETWORK que se usó para configurar la conectividad híbrida entre los entornos.

  gcloud compute networks subnets create LB_SUBNET_NAME 
--network=NETWORK
--range=LB_SUBNET_RANGE
--region=REGION

Reservar la dirección IP del balanceador de carga

consola de Cloud

  1. En la Google Cloud consola, ve a la página Reservar una dirección estática.

    Ir a Reservar una dirección estática

  2. Escribe un nombre: LB_IP_ADDRESS.

  3. En Nivel de servicio de red, selecciona Estándar.

  4. En Versión de IP, selecciona IPv4.

  5. En Type (Tipo), selecciona Regional (Regional).

  6. Seleccione el REGION en el que quiera crear la dirección.

  7. Deje la opción Adjuntar a configurada en 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.

  8. Haz clic en Reservar para reservar la dirección IP.

gcloud

  1. Reserva una dirección IP externa estática regional de la siguiente manera.

    gcloud compute addresses create LB_IP_ADDRESS  \
       --region=REGION \
       --network-tier=STANDARD
    
  2. Usa el compute addresses describe comando para ver el resultado:

    gcloud compute addresses describe LB_IP_ADDRESS  \
       --region=REGION
    

Crear reglas de cortafuegos para NEGs de zona

En este ejemplo, se crean las siguientes reglas de cortafuegos para los back-ends de NEG zonal en Google Cloud:

  • fw-allow-health-check: Una regla de cortafuegos de entrada, aplicable a las instancias que se están balanceando, que permite el tráfico del balanceador de carga y de los sistemas de comprobación del estadoGoogle Cloud (130.211.0.0/22 y 35.191.0.0/16). En este ejemplo, se usa la etiqueta de destino allow-health-check para identificar las VMs de backend a las que se debe aplicar. No es necesario permitir el tráfico de los intervalos de sondeo de comprobación del estado de Google para los NEGs híbridos. Sin embargo, si utilizas una combinación de NEGs híbridos y zonales en un mismo servicio de backend, debes permitir el tráfico de los intervalos de sondeo de comprobación de estado de Google para los NEGs zonales.
  • fw-allow-proxy-only-subnet: una regla de cortafuegos de entrada que permite que las conexiones de la subred de solo proxy lleguen a los backends. En este ejemplo se usa la etiqueta de destino allow-proxy-only-subnet para identificar las VMs backend a las que se debe aplicar.

Consola

  1. En la Google Cloud consola, ve a la página Políticas de cortafuegos.
    Ve a Políticas de cortafuegos
  2. Haz clic en Crear regla de cortafuegos para crear la regla que permita el tráfico de las sondas de comprobación del estado:
    1. Asigne un Nombre de fw-allow-health-check.
    2. En Red, selecciona NETWORK.
    3. En Objetivos, seleccione Etiquetas de destino especificadas.
    4. Rellene el campo Etiquetas de destino con allow-health-check.
    5. En Filtro de origen, elija Intervalos de IPv4.
    6. Asigna los valores 130.211.0.0/22 y 35.191.0.0/16 a Intervalos de IPv4 de origen.
    7. En Protocolos y puertos, selecciona Protocolos y puertos especificados.
    8. Selecciona TCP y, a continuación, introduce 80 como número de puerto.
    9. Haz clic en Crear.
  3. Vuelve a hacer clic en Crear regla de cortafuegos para crear la regla que permita las conexiones entrantes de la subred de solo proxy:
    1. Nombre: fw-allow-ssh
    2. Red: NETWORK
    3. Prioridad: 1000
    4. Dirección del tráfico: entrada
    5. Acción tras coincidencia: permitir
    6. Destinos: etiquetas de destino especificadas
    7. Etiquetas de destino: allow-proxy-only-subnet
    8. Filtro de origen: Intervalos de IPv4
    9. Intervalos de IPv4 de origen: PROXY_ONLY_SUBNET_RANGE
    10. Protocolos y puertos: elige Protocolos y puertos especificados.
    11. Selecciona TCP y, a continuación, introduce 80 como número de puerto.
    12. Haz clic en Crear.

gcloud

  1. Crea la regla fw-allow-health-check-and-proxy para permitir que las comprobaciones del estado lleguen a las instancias de backend en el puerto TCP 80: Google Cloud

    gcloud compute firewall-rules create fw-allow-health-check \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-health-check \
        --source-ranges=130.211.0.0/22,35.191.0.0/16 \
        --rules=tcp:80
    
  2. Crea una regla de cortafuegos de entrada para la subred de solo proxy que permita que el balanceador de carga se comunique con las instancias de backend en el puerto TCP 80:

    gcloud compute firewall-rules create fw-allow-proxy-only-subnet \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-proxy-only-subnet \
        --source-ranges=PROXY_ONLY_SUBNET_RANGE \
        --rules=tcp:80
    

Configurar el NEG de zona

En el caso de los back-ends basados en Google Cloud, le recomendamos que configure varios NEG zonales en la misma región en la que haya configurado la conectividad híbrida.

En este ejemplo, hemos configurado un NEG zonal (con puntos finales de tipo GCE_VM_IP_PORT) en la región REGION. Primero, crea las VMs en la zona GCP_NEG_ZONE. A continuación, crea un NEG por zonas en el mismo GCP_NEG_ZONE y añade los endpoints de red de las VMs al NEG.

Crear VMs

Consola

  1. Ve a la página Instancias de VM de la Google Cloud consola.
    Ir a instancias de VM
  2. Haz clic en Crear instancia.
  3. Asigna el valor vm-a1 a Nombre.
  4. En Región, elige REGION y, a continuación, selecciona cualquier zona. En este procedimiento, se hará referencia a este elemento como GCP_NEG_ZONE.
  5. En la sección Disco de arranque, asegúrate de que la opción Debian GNU/Linux 12 (bookworm) esté seleccionada para el disco de arranque. Haz clic en Elegir para cambiar la imagen si es necesario.
  6. Haz clic en Opciones avanzadas y haz los siguientes cambios:

    • Haz clic en Redes y añade las siguientes etiquetas de red: allow-ssh, allow-health-check y allow-proxy-only-subnet.
    • Haz clic en Editar en Interfaces de red y haz los siguientes cambios. A continuación, haz clic en Hecho:
      • Red: NETWORK
      • Subred: LB_SUBNET_NAME
    • Haz clic en Gestión. En el campo Startup script (Secuencia de comandos de inicio), copia y pega el siguiente contenido de la secuencia de comandos. El contenido de la secuencia de comandos es idéntico en las cuatro VMs:

      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      vm_hostname="$(curl -H "Metadata-Flavor:Google" \
      http://metadata.google.internal/computeMetadata/v1/instance/name)"
      echo "Page served from: $vm_hostname" | \
      tee /var/www/html/index.html
      systemctl restart apache2
      
  7. Haz clic en Crear.

  8. Repite los pasos siguientes para crear una segunda máquina virtual con la siguiente combinación de nombre y zona:

    • Nombre: vm-a2, zona: GCP_NEG_ZONE

gcloud

Crea las VMs ejecutando el siguiente comando dos veces y usando estas combinaciones para el nombre de la VM y su zona. El contenido de la secuencia de comandos es idéntico en ambas máquinas virtuales.

  • VM_NAME de vm-a1 y GCP_NEG_ZONE de la zona que elijas
  • VM_NAME de vm-a2 y la misma zona GCP_NEG_ZONE

    gcloud compute instances create VM_NAME \
        --zone=GCP_NEG_ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=allow-ssh,allow-health-check,allow-proxy-only-subnet \
        --subnet=LB_SUBNET_NAME \
        --metadata=startup-script='#! /bin/bash
          apt-get update
          apt-get install apache2 -y
          a2ensite default-ssl
          a2enmod ssl
          vm_hostname="$(curl -H "Metadata-Flavor:Google" \
          http://metadata.google.internal/computeMetadata/v1/instance/name)"
          echo "Page served from: $vm_hostname" | \
          tee /var/www/html/index.html
          systemctl restart apache2'
    

Crear el NEG de zona

Consola

Para crear un grupo de endpoints de red de zona, sigue estos pasos:

  1. Ve a la página Grupos de puntos finales de red de la Google Cloud consola.
    Ve a la página Grupos de puntos finales de red
  2. Haz clic en Crear grupo de endpoints de red.
  3. Introduce un nombre para el NEG zonal. En este procedimiento, se denomina GCP_NEG_NAME.
  4. Selecciona el Tipo de grupo de puntos finales de red: Grupo de puntos finales de red (por zonas).
  5. Selecciona Red: NETWORK
  6. Selecciona la Subred: LB_SUBNET_NAME
  7. Selecciona la Zona: GCP_NEG_ZONE
  8. Introduce el puerto predeterminado: 80.
  9. Haz clic en Crear.

Añade los endpoints al NEG de zona:

  1. Ve a la página Grupos de puntos finales de red de la Google Cloud consola.
    Ve a Grupos de endpoints de red
  2. Haga clic en el Nombre del grupo de puntos finales de red creado en el paso anterior (GCP_NEG_NAME). Verá la página Detalles del grupo de puntos finales de red.
  3. En la sección Puntos finales de red de este grupo, haz clic en Añadir punto final de red. Verás la página Añadir punto final de red.
  4. Selecciona una instancia de VM para añadir sus direcciones IP internas como endpoints de red. En la sección Interfaz de red, se muestra el nombre, la zona y la subred de la máquina virtual.
  5. En el campo Dirección IPv4, introduce la dirección IPv4 del nuevo endpoint de red.
  6. Seleccione el Tipo de puerto.
    1. Si selecciona Predeterminado, el endpoint usará el puerto predeterminado 80 para todos los endpoints del grupo de endpoints de red. Esto es suficiente para nuestro ejemplo, ya que el servidor Apache sirve solicitudes en el puerto 80.
    2. Si seleccionas Personalizado, introduce el Número de puerto del endpoint que quieras usar.
  7. Para añadir más endpoints, haz clic en Añadir endpoint de red y repite los pasos anteriores.
  8. Una vez que hayas añadido todos los endpoints, haz clic en Crear.

gcloud

  1. Crea un NEG zonal (con GCE_VM_IP_PORT endpoints) con el comando gcloud compute network-endpoint-groups create:

    gcloud compute network-endpoint-groups create GCP_NEG_NAME \
        --network-endpoint-type=GCE_VM_IP_PORT \
        --zone=GCP_NEG_ZONE \
        --network=NETWORK \
        --subnet=LB_SUBNET_NAME
    

    Puedes especificar un --default-port al crear el NEG en este paso o especificar un número de puerto para cada endpoint, como se muestra en el siguiente paso.

  2. Añade puntos finales a GCP_NEG_NAME.

    gcloud compute network-endpoint-groups update GCP_NEG_NAME \
        --zone=GCP_NEG_ZONE \
        --add-endpoint='instance=vm-a1,port=80' \
        --add-endpoint='instance=vm-a2,port=80'
    

Configurar el NEG de conectividad híbrida

Al crear el NEG, usa una zona que minimice la distancia geográfica entre Google Cloud y tu entorno on-premise u otro entorno de nube. Por ejemplo, si alojas un servicio en un entorno local en Fráncfort (Alemania), puedes especificar la zona europe-west3-a Google Cloud al crear el NEG.

Además, si usas Cloud Interconnect, la zona utilizada para crear el NEG debe estar en la misma región en la que se haya configurado la vinculación de Cloud Interconnect.

Para ver las regiones y zonas disponibles, consulta la documentación de Compute Engine: regiones y zonas disponibles.

Consola

Para crear un grupo de endpoints de red de conectividad híbrida, sigue estos pasos:

  1. Ve a la página Grupos de puntos finales de red de la Google Cloud consola.
    Ve a Grupos de puntos finales de red
  2. Haz clic en Crear grupo de endpoints de red.
  3. Introduce un nombre para el NEG híbrido. En este procedimiento, se denomina ON_PREM_NEG_NAME.
  4. Selecciona el Tipo de grupo de puntos finales de red: Grupo de puntos finales de red de conectividad híbrida (por zonas).
  5. Selecciona la red: NETWORK
  6. Selecciona la Subred: LB_SUBNET_NAME.
  7. Selecciona la Zona: ON_PREM_NEG_ZONE
  8. Introduce el puerto predeterminado.
  9. Primero, haz clic en Crear.

Añade endpoints al NEG de conectividad híbrida:

  1. Ve a la página Grupos de puntos finales de red de la Google Cloud consola.
    Ve a la página Grupos de puntos finales de red
  2. Haga clic en el Nombre del grupo de endpoints de red creado en el paso anterior (ON_PREM_NEG_NAME). Verá la página Detalles del grupo de endpoints de red.
  3. En la sección Puntos finales de red de este grupo, haz clic en Añadir punto final de red. Verás la página Añadir punto final de red.
  4. Introduce la dirección IP del nuevo endpoint de red.
  5. Seleccione el Tipo de puerto.
    1. Si seleccionas Predeterminado, el endpoint usará el puerto predeterminado para todos los endpoints del grupo de endpoints de red.
    2. Si selecciona Personalizado, puede introducir otro Número de puerto para que lo use el endpoint.
  6. Para añadir más endpoints, haz clic en Añadir endpoint de red y repite los pasos anteriores.
  7. Una vez que hayas añadido todos los endpoints que no seanGoogle Cloud , haz clic en Crear.

gcloud

  1. Crea un NEG de conectividad híbrida con el comando gcloud compute network-endpoint-groups create.

    gcloud compute network-endpoint-groups create ON_PREM_NEG_NAME \
        --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
        --zone=ON_PREM_NEG_ZONE \
        --network=NETWORK
    
  2. Añade el endpoint de la VM backend local a ON_PREM_NEG_NAME:

    gcloud compute network-endpoint-groups update ON_PREM_NEG_NAME \
        --zone=ON_PREM_NEG_ZONE \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_1,port=PORT_1" \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_2,port=PORT_2"
    

Puedes usar este comando para añadir los endpoints de red que hayas configurado anteriormente de forma local o en tu entorno de nube. Repite --add-endpoint tantas veces como sea necesario.

Puedes repetir estos pasos para crear varios NEGs híbridos si es necesario.

Configurar el balanceador de carga

Crea el balanceador de carga con backends de NEG zonales e híbridos.

Consola

gcloud

  1. Crea una comprobación del estado para los backends.
       gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \
           --region=REGION \
           --use-serving-port
       
    Las exploraciones de comprobación del estado de los backends de NEG híbrido proceden de los proxies de Envoy de la subred solo de proxy, mientras que las exploraciones de los backends de NEG zonales proceden de los [intervalos de IPs de exploración centrales de Google](/load-balancing/docs/health-check-concepts#ip-ranges).
  2. Crea un servicio de backend. Añade tanto el NEG zonal como el NEG de conectividad híbrida como backends a este 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
      
  3. Añade el NEG zonal como backend al servicio de backend.
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --region=REGION \
        --balancing-mode=RATE \
        --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
        --network-endpoint-group=GCP_NEG_NAME \
        --network-endpoint-group-zone=GCP_NEG_ZONE
    
    Para obtener información sobre cómo configurar el modo de balanceo, consulta la documentación de la CLI de gcloud sobre el parámetro --max-rate-per-endpoint.
  4. Añade el NEG híbrido como backend al servicio de backend.
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --region=REGION \
        --balancing-mode=RATE \
        --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
        --network-endpoint-group=ON_PREM_NEG_NAME \
        --network-endpoint-group-zone=ON_PREM_NEG_ZONE
    
    Para obtener información sobre cómo configurar el modo de balanceo, consulta la documentación de la CLI de gcloud sobre el parámetro --max-rate-per-endpoint.
  5. 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
    
  6. 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:

    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
    
  7. 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 \
        --url-map-region=REGION \
        --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 \
        --url-map-region=REGION \
        --region=REGION
    
  8. Crea una regla de reenvío para dirigir las solicitudes entrantes al proxy. No uses la subred de solo proxy para crear la regla de reenvío.

    En el caso de un balanceador de carga HTTP:
      gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
          --load-balancing-scheme=EXTERNAL_MANAGED \
          --network=NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --ports=80 \
          --region=REGION \
          --target-http-proxy=TARGET_HTTP_PROXY_NAME \
          --target-http-proxy-region=REGION
    
    En el caso de un balanceador de carga HTTPS:
      gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
          --load-balancing-scheme=EXTERNAL_MANAGED \
          --network=NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --ports=443 \
          --region=REGION \
          --target-http-proxy=TARGET_HTTPS_PROXY_NAME \
          --target-http-proxy-region=REGION
    

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.

  1. Ve a la página Balanceo de carga de la Google Cloud consola.
    Ve a Balanceo de carga.
  2. Haz clic en el balanceador de carga que acabas de crear.
  3. Anota la dirección IP del balanceador de carga.
  4. Envía tráfico al balanceador de carga.

    • Si has creado un balanceador de carga HTTP, puedes probarlo con un navegador web. Para ello, ve a http://IP_ADDRESS. Sustituye IP_ADDRESS por la dirección IP del balanceador de carga. Deberías acceder al servicio que has expuesto a través del endpoint.

    • Si has creado un balanceador de carga HTTPS, puedes probarlo con curl de la siguiente manera. Sustituye IP_ADDRESS por la dirección IP del balanceador de carga. Se te dirigirá al servicio que hayas expuesto a través del endpoint.

      curl -k https://IP_ADDRESS
      

      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. A continuación, prueba el dominio que apunta a la dirección IP del balanceador de carga. Por ejemplo:

      curl -s https://DOMAIN_NAME
      

      Sustituye DOMAIN_NAME por el nombre de dominio de tu aplicación. Por ejemplo, test.example.com.

  5. Para probar los endpoints que no son deGoogle Cloud , debes tener en cuenta el servicio que has expuesto a través del endpoint de NEG híbrido.

Siguientes pasos