El balanceador de carga de red de proxy interno regional es un balanceador de carga regional de capa 4 basado en proxy que te permite ejecutar y escalar el tráfico de tu servicio TCP mediante una dirección IP interna a la que solo pueden acceder los clientes de la misma red de nube privada virtual (VPC) o los clientes conectados a tu red de VPC. Si quieres que el servicio esté disponible para los clientes de otras redes de VPC, puedes usar Private Service Connect para publicarlo.
En esta página se describe cómo configurar un balanceador de carga de red interno regional para balancear la carga del tráfico a backends locales o de otros entornos de nube que estén conectados mediante conectividad híbrida. En esta página no se explica cómo configurar la conectividad híbrida para conectar tus redes a Google Cloud .
Información general
En este ejemplo, usaremos el balanceador de carga para distribuir el tráfico TCP entre las VMs de backend ubicadas en las instalaciones o en otros entornos de nube.
En este ejemplo, se configura la siguiente implementación:
El balanceador de carga de red de proxy interno regional es un balanceador de carga regional. Todos los componentes del balanceador de carga (grupos de instancias de backend, servicio de backend, proxy de destino y regla de reenvío) deben estar en la misma región.
Permisos
Para configurar el balanceo de carga híbrido, debes tener los siguientes permisos:
Activado Google Cloud
- Permisos para establecer la conectividad híbrida entre Google Cloud y tu entorno on-premise u otros entornos de nube. Para ver la lista de permisos necesarios, consulta la documentación del producto de conectividad de red correspondiente.
- Permisos para crear un NEG de conectividad híbrida y el balanceador de carga.
El rol Administrador de balanceadores de carga de Compute
(
roles/compute.loadBalancerAdmin
) contiene los permisos necesarios para realizar las tareas descritas en esta guía.
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.
- 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
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:port
combinació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.
Anunciar rutas
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 Google Cloud entorno
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. Puedes seleccionar cualquier subred de esta red para reservar la dirección IP del balanceador de carga y crear el balanceador de carga. En este procedimiento, esta subred se denomina LB_SUBNET.
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
Una subred de solo proxy proporciona un conjunto de direcciones IP que Google usa para ejecutar proxies de Envoy en tu nombre. Los proxies terminan las conexiones del cliente y crean nuevas conexiones con los back-ends.
Todos los balanceadores de carga regionales basados en Envoy de la región REGION de la red de VPC NETWORK usan la subred de solo proxy.
Solo puede haber una subred solo proxy activa por región y por red de VPC. Puedes saltarte este paso si ya hay una subred solo proxy en esta región.
Consola
Si usas la consola de Google Cloud , puedes esperar y crear la subred de solo proxy más adelante en la página Balanceo de carga.
Si quieres crear la subred de solo proxy ahora, sigue estos pasos:
En la Google Cloud consola, ve a la página Redes de VPC.
Ve a la red que se usó para configurar la conectividad híbrida entre los entornos.
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=NETWORK \ --range=PROXY_ONLY_SUBNET_RANGE
Reservar la dirección IP del balanceador de carga
De forma predeterminada, se usa una dirección IP para cada regla de reenvío. Puedes reservar una dirección IPv4 compartida, lo que te permite usar la misma dirección IPv4 con varias reglas de reenvío. Sin embargo, si quieres usar Private Service Connect para publicar el balanceador de carga, no uses una dirección IPv4 compartida para la regla de reenvío.
Para reservar una dirección IPv4 interna estática para tu balanceador de carga, consulta Reservar una dirección IPv4 o IPv6 interna estática nueva.
Configurar el NEG de conectividad híbrida
Cuando crees el NEG, usa una ZONE que minimice la distancia geográfica entre Google Cloud y tu entorno local 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, el ZONE usado para crear el NEG debe estar en la misma región en la que se configuraron el túnel de Cloud VPN o la vinculación de VLAN de Cloud Interconnect para la conectividad híbrida.
Para ver las regiones y zonas disponibles, consulta la documentación de Compute Engine: regiones y zonas disponibles.
Consola
Para crear un NEG de conectividad híbrida, sigue estos pasos:
En la Google Cloud consola, ve a la página Grupos de endpoints de red.
Haz clic en Crear grupo de endpoints de red.
Introduce un nombre para el NEG híbrido. En este procedimiento, se denomina HYBRID_NEG_NAME.
Selecciona el Tipo de grupo de puntos finales de red: Grupo de puntos finales de red de conectividad híbrida (por zonas).
Selecciona la red: NETWORK
Selecciona la Subred: LB_SUBNET.
Selecciona la Zona: HYBRID_NEG_ZONE
Introduce el puerto predeterminado.
Primero, haz clic en Crear.
Añade endpoints al NEG de conectividad híbrida:
En la Google Cloud consola, ve a la página Grupos de endpoints de red.
Haga clic en el Nombre del grupo de puntos finales de red creado en el paso anterior (HYBRID_NEG_NAME). Verá la página Detalles del grupo de puntos finales de red.
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.
Introduce la dirección IP del nuevo endpoint de red.
Seleccione el Tipo de puerto.
- Si seleccionas Predeterminado, el endpoint usará el puerto predeterminado para todos los endpoints del grupo de endpoints de red.
- Si selecciona Personalizado, puede introducir otro Número de puerto para que lo use el endpoint.
Para añadir más endpoints, haz clic en Añadir endpoint de red y repite los pasos anteriores.
Una vez que hayas añadido todos los endpoints que no seanGoogle Cloud , haz clic en Crear.
gcloud
Crea un NEG de conectividad híbrida con el comando
gcloud compute network-endpoint-groups create
.gcloud compute network-endpoint-groups create HYBRID_NEG_NAME \ --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \ --zone=HYBRID_NEG_ZONE \ --network=NETWORK
Añade el endpoint IP:Puerto local al NEG híbrido:
gcloud compute network-endpoint-groups update HYBRID_NEG_NAME \ --zone=HYBRID_NEG_ZONE \ --add-endpoint="ip=ENDPOINT_IP_ADDRESS,port=ENDPOINT_PORT"
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
Consola
Iniciar la configuración
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 red (TCP/UDP/SSL) y haz clic en Siguiente.
- En Proxy o pasarela, selecciona Balanceador de carga de proxy y haz clic en Siguiente.
- En Público o interno, selecciona Interno y haz clic en Siguiente.
- En Implementación en una sola región o en varias regiones, 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 para el balanceador de carga.
- Selecciona la región: REGION.
- Selecciona Red: NETWORK.
Reservar una subred de solo proxy
Para reservar una subred de solo proxy, sigue estos pasos:
- Haz clic en Reservar subred.
- Introduce el nombre: PROXY_ONLY_SUBNET_NAME.
- Introduce un intervalo de direcciones IP: PROXY_ONLY_SUBNET_RANGE.
- Haz clic en Añadir.
Configuración de backend
- Haz clic en Configuración de backend.
- En Tipo de backend, selecciona Grupo de endpoints de red de conectividad híbrida (por zonas).
- En Protocolo, selecciona TCP.
- En Nuevo backend, selecciona el NEG híbrido que has creado antes: HYBRID_NEG_NAME. También puede hacer clic en Crear un grupo de endpoints de red para crear el NEG híbrido ahora. Para obtener información sobre cómo configurar el NEG, consulta el artículo Configurar el NEG híbrido.
- Mantén los valores predeterminados restantes y haz clic en Hecho.
- Configura la comprobación del estado:
- En Comprobación del estado, selecciona Crear una comprobación del estado.
- Introduce un Nombre para la comprobación del estado.
- En Protocolo, selecciona TCP.
- En Puerto, escribe
80
.
- Mantenga los demás valores predeterminados y haga clic en Guardar.
- En la Google Cloud consola, comprueba que haya una marca de verificación junto a Configuración de backend. Si no es así, comprueba que has completado todos los pasos.
Configuración de frontend
- Haz clic en Configuración de frontend.
- Introduce un nombre para la regla de reenvío.
- En Subred, selecciona LB_SUBNET.
- En Dirección IP, selecciona LB_IP_ADDRESS.
- En Número de puerto, introduce cualquier número de puerto entre 1 y 65535. La regla de reenvío solo reenvía los paquetes con un puerto de destino coincidente.
- Habilita Proxy Protocol solo si funciona con el servicio que se ejecuta en tus endpoints on-premise u otros endpoints en la nube. Por ejemplo, el protocolo PROXY no funciona con el software del servidor HTTP de Apache. Para obtener más información, consulta Protocolo de proxy.
- Haz clic en Listo.
- En la Google Cloud consola, comprueba que haya una marca de verificación junto a Configuración de frontend. Si no es así, comprueba que has completado todos los pasos anteriores.
Revisar y finalizar
- Haz clic en Revisar y finalizar.
- Comprueba tu configuración.
- Haz clic en Crear.
gcloud
Crea una comprobación del estado regional para los backends.
gcloud compute health-checks create tcp TCP_HEALTH_CHECK_NAME \ --region=REGION \ --use-serving-port
Las comprobaciones del estado de los backends de NEG híbridos proceden de los proxies de Envoy de la subred solo de proxy.
Crea un servicio de backend.
gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=INTERNAL_MANAGED \ --protocol=TCP \ --region=REGION \ --health-checks=TCP_HEALTH_CHECK_NAME \ --health-checks-region=REGION
Añade el backend de NEG híbrido al servicio de backend.
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=HYBRID_NEG_NAME \ --network-endpoint-group-zone=HYBRID_NEG_ZONE \ --region=REGION \ --balancing-mode=CONNECTION \ --max-connections=MAX_CONNECTIONS
En
MAX_CONNECTIONS
, introduce el número máximo de conexiones simultáneas que debe gestionar el backend.Crea el proxy TCP de destino.
gcloud compute target-tcp-proxies create TARGET_TCP_PROXY_NAME \ --backend-service=BACKEND_SERVICE_NAME \ --region=REGION
Crea la regla de reenvío.
Crea la regla de reenvío con el comando
gcloud compute forwarding-rules create
.Sustituye FWD_RULE_PORT por un número de puerto entre 1 y 65535. La regla de reenvío solo reenvía los paquetes con un puerto de destino coincidente.
gcloud compute forwarding-rules create FORWARDING_RULE \ --load-balancing-scheme=INTERNAL_MANAGED \ --network=NETWORK \ --subnet=LB_SUBNET \ --address=LB_IP_ADDRESS \ --ports=FWD_RULE_PORT \ --region=REGION \ --target-tcp-proxy=TARGET_TCP_PROXY_NAME \ --target-tcp-proxy-region=REGION
Probar el balanceador de carga
Para probar el balanceador de carga, crea una VM cliente en la misma región que el balanceador de carga. A continuación, envía tráfico del cliente al balanceador de carga.
Crear una VM cliente
Crea una VM cliente (client-vm
) en la misma región que el balanceador de carga.
Consola
En la consola de Google Cloud , ve a la página Instancias de VM.
Haz clic en Crear instancia.
Asigna el valor
client-vm
a Nombre.Define Zona como CLIENT_VM_ZONE.
Haz clic en Advanced options (Opciones avanzadas).
Haga clic en Redes y configure los siguientes campos:
- En Etiquetas de red, introduzca
allow-ssh
. - En Interfaces de red, selecciona lo siguiente:
- Red: NETWORK
- Subred: LB_SUBNET
- En Etiquetas de red, introduzca
Haz clic en Crear.
gcloud
La VM cliente debe estar en la misma red VPC y región que el balanceador de carga. No es necesario que esté en la misma subred o zona. El cliente usa la misma subred que las VMs de backend.
gcloud compute instances create client-vm \ --zone=CLIENT_VM_ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh \ --subnet=LB_SUBNET
Permitir el tráfico SSH a la VM de prueba
En este ejemplo, se crea la siguiente regla de cortafuegos:
fw-allow-ssh
: una regla de entrada que permite la conectividad SSH entrante en el puerto TCP 22 desde cualquier dirección. Puede elegir un intervalo de IPs de origen más restrictivo para esta regla. Por ejemplo, puede especificar solo los intervalos de IPs de los sistemas desde los que iniciará sesiones SSH. En este ejemplo se usa la etiqueta de destinoallow-ssh
para identificar la VM del cliente de prueba a la que se debe aplicar.
Consola
- En la Google Cloud consola, ve a la página Políticas de cortafuegos. Ir a Políticas de cortafuegos
- Haga clic en Crear regla de cortafuegos para crear la regla que permita las conexiones SSH entrantes:
- Nombre:
fw-allow-ssh
- Red: NETWORK
- Prioridad:
1000
- Dirección del tráfico: entrada
- Acción tras coincidencia: permitir
- Destinos: etiquetas de destino especificadas
- Etiquetas de destino:
allow-ssh
- Filtro de origen: Intervalos de IPv4
- Intervalos de IPv4 de origen:
0.0.0.0/0
- Protocolos y puertos: elige Protocolos y puertos especificados
y, a continuación, introduce
tcp:22
. - Haz clic en Crear.
- Nombre:
gcloud
Crea la regla de cortafuegos
fw-allow-ssh
para permitir la conectividad SSH a las VMs con la etiqueta de redallow-ssh
.gcloud compute firewall-rules create fw-allow-ssh \ --network=NETWORK \ --action=allow \ --direction=ingress \ --target-tags=allow-ssh \ --rules=tcp:22
Enviar tráfico al balanceador de carga
Ahora que ha configurado el balanceador de carga, puede probar a enviar tráfico a la dirección IP del balanceador de carga.
Conéctate a la instancia de cliente mediante SSH.
gcloud compute ssh client-vm \ --zone=CLIENT_VM_ZONE
Verifica que el balanceador de carga esté sirviendo los nombres de host de backend correctamente.
Usa el
compute addresses describe
comando para ver la dirección IP del balanceador de carga:gcloud compute addresses describe LB_IP_ADDRESS \ --region=REGION
Anota la dirección IP.
Envía tráfico al balanceador de carga en la dirección IP y el puerto especificados al crear la regla de reenvío del balanceador de carga. Para comprobar si los backends del NEG híbrido responden a las solicitudes, depende del servicio que se ejecute en los endpoints que no seanGoogle Cloud .
Opcional: Publicar el servicio mediante Private Service Connect
Un balanceador de carga de red de proxy interno regional con conectividad híbrida te permite ofrecer un servicio alojado en entornos on-premise u otros entornos de nube a los clientes de tu red de VPC.
Si quieres que el servicio híbrido esté disponible en otras redes de VPC, puedes usar Private Service Connect para publicar el servicio. Si colocas una vinculación de servicio delante de tu balanceador de carga de red de proxy interno regional, puedes permitir que los clientes de otras redes de VPC accedan a los servicios híbridos que se ejecutan en entornos locales o de otras nubes.
Siguientes pasos
- Para configurar la monitorización de tu balanceador de carga de red proxy interno regional, consulta Usar la monitorización.
- Para saber cómo funciona un balanceador de carga de red de proxy interno regional, consulta la descripción general del balanceador de carga de red de proxy interno regional.
- Limpiar la configuración del balanceador de carga.