Este documento te ayuda a determinar qué Google Cloud balanceador de carga se adapta mejor a tus necesidades. Para ver una descripción general de todos los productos de Cloud Load Balancing disponibles, consulta la descripción general de Cloud Load Balancing.
Para determinar qué producto de Cloud Load Balancing debes usar, primero debes determinar el tipo de tráfico que deben gestionar tus balanceadores de carga.
- Elige un balanceador de carga de aplicaciones si necesitas un conjunto de funciones flexible para tus aplicaciones con tráfico HTTP(S).
- Elige un balanceador de carga de red de proxy para implementar el balanceo de carga de proxy TCP en backends de una o varias regiones.
- Elige un balanceador de carga de red de tipo Pasarela para conservar las direcciones IP de origen de los clientes, evitar la sobrecarga de los proxies y admitir protocolos adicionales, como UDP, ESP e ICMP.
Puedes acotar aún más tus opciones en función de los requisitos de tu aplicación: si es externa (accesible desde Internet) o interna, y si necesitas que los backends se implementen a nivel mundial o regional.
En el siguiente diagrama se resumen todos los modos de implementación disponibles para Cloud Load Balancing.
1 Los balanceadores de carga de aplicación externos globales admiten dos modos de funcionamiento: global y clásico.
2 Los balanceadores de carga de red con proxy externo global admiten dos modos de funcionamiento: global y clásico.
3 Los balanceadores de carga de red de paso a través conservan las direcciones IP de origen de los clientes. Los balanceadores de carga de red con paso a través también admiten protocolos adicionales, como UDP, ESP e ICMP.
Aspectos del balanceo de carga
Para decidir qué balanceador de carga se adapta mejor a tu implementación deGoogle Cloud, ten en cuenta los siguientes aspectos de Cloud Load Balancing:
- Tipo de tráfico
- Balanceo de carga externo frente a interno
- Balanceo de carga global y regional
- Comparación entre los niveles de servicio de red Premium y Estándar
- Balanceo de carga de proxy frente a balanceo de carga de paso a través
Tipo de tráfico
El tipo de tráfico que debe gestionar el balanceador de carga es otro factor que influye en la elección del balanceador de carga.
Tipo de balanceador de carga | Tipo de tráfico |
---|---|
Balanceadores de carga de aplicación | HTTP o HTTPS |
Balanceadores de carga de red de paso a través | TCP o UDP Estos balanceadores de carga también admiten otro tráfico de protocolos IP, como ESP, GRE, ICMP e ICMPv6. |
Balanceadores de carga de red de proxy | TCP con descarga de SSL opcional |
Balanceo de carga externo frente a interno
Los balanceadores de cargaGoogle Cloud se pueden implementar como balanceadores de carga externos o internos:
Los balanceadores de carga externos distribuyen el tráfico procedente de Internet en tu red de Google Cloud nube privada virtual (VPC).
Los balanceadores de carga internos distribuyen el tráfico procedente de los clientes que están en la misma red de VPC que el balanceador de carga o de los clientes conectados a tu red de VPC mediante el emparejamiento entre redes de VPC, Cloud VPN o Cloud Interconnect.
Para determinar qué balanceador de carga es el más adecuado para tu aplicación, consulta la tabla de resumen.
Balanceo de carga global frente a regional
En función del tipo de tráfico que tenga que gestionar el balanceador de carga y de si tus clientes son internos o externos, puede que tengas la opción de elegir entre un balanceador de carga global o regional.
Opta por un balanceador de carga mundial o multirregional si quieres que se distribuya mundialmente o que abarque varias regiones. Estos balanceadores de carga también pueden distribuir tráfico a backends de varias regiones, por lo que son adecuados cuando tu aplicación o contenido se distribuye en varias regiones o cuando quieres tener la flexibilidad de añadir backends multirregionales a medida que tu aplicación se expanda a nuevas zonas geográficas.
Solo los balanceadores de carga externos están disponibles como balanceadores de carga globales. En el caso de los balanceadores de carga internos con backends en varias regiones, elige el balanceador de carga multirregional. Los balanceadores de carga entre regiones proporcionan acceso mediante una dirección IP interna regional que procede de la subred regional de la red de VPC. Esto es diferente de los balanceadores de carga globales, que proporcionan acceso mediante una única dirección IP anycast y mediante la terminación de IPv6 en el balanceador de carga. Consulta la siguiente tabla para obtener más información.
Elige un balanceador de carga regional si solo necesitas back-ends en una región, si solo necesitas la terminación de IPv4 (no de IPv6) o si tienes requisitos de cumplimiento de la jurisdicción para que el tráfico permanezca en una región concreta.
Las cargas de trabajo que requieren recursos regionalizados por motivos de cumplimiento exigen que determinados recursos se conserven en una región específica o que el tráfico se termine en una región determinada. Si necesitas controlar geográficamente dónde se termina TLS, debes usar un balanceador de carga regional. Un balanceador de carga regional se implementa en una región específica que elijas y solo puede conectarse a backends de esa región. Por lo tanto, los balanceadores de carga regionales garantizan que solo se termine TLS en la región en la que hayas desplegado el balanceador de carga y sus backends. Los balanceadores de carga globales terminan la seguridad de la capa de transporte (TLS) en ubicaciones distribuidas por todo el mundo para minimizar la latencia entre los clientes y el balanceador de carga.
Los balanceadores de carga son un componente fundamental de la mayoría de las aplicaciones de alta disponibilidad. Es importante tener en cuenta que la resiliencia de tu aplicación en general no depende solo del ámbito del balanceador de carga que elijas (global o regional), sino también de la redundancia de tus servicios backend.
En la siguiente tabla se resume la resiliencia de los balanceadores de carga en función de su distribución o ámbito.
Ámbito del balanceador de carga | Arquitectura | Resistencia a las interrupciones de zona | Resistencia a las interrupciones regionales |
---|---|---|---|
Global | Cada balanceador de carga se distribuye en todas las regiones | ||
Interregional | Cada balanceador de carga se distribuye en varias regiones | ||
Regional | Cada balanceador de carga se distribuye en varias zonas de la región. | Una interrupción en una región determinada afecta a los balanceadores de carga regionales de esa región. |
Para determinar qué balanceador de carga es el más adecuado para tu aplicación, consulta la tabla de resumen.
Balanceo de carga de proxy frente a balanceo de carga de transferencia
En función del tipo de tráfico que necesites que gestione el balanceador de carga y de si tus clientes son internos o externos, puede que tengas la opción de elegir entre un balanceador de carga de proxy o un balanceador de carga de transferencia.
Los balanceadores de carga proxy terminan las conexiones de cliente entrantes en el balanceador de carga y, a continuación, abren nuevas conexiones desde el balanceador de carga a los back-ends. Todos los balanceadores de carga de aplicaciones y los balanceadores de carga de red de proxy funcionan de esta forma. Terminan las conexiones de los clientes mediante Google Front Ends (GFEs) o proxies de Envoy.
Los balanceadores de carga de transferencia no finalizan las conexiones de los clientes. En su lugar, las VMs de backend reciben los paquetes balanceados de carga con la información de origen, destino y, si procede, puerto del paquete sin cambios. Las conexiones se terminan en las VMs backend. Las respuestas de las VMs backend van directamente a los clientes, no vuelven a pasar por el balanceador de carga. El término para esto es devolución directa del servidor. Usa un balanceador de carga de transferencia cuando necesites conservar la información de los paquetes del cliente. Como su nombre indica, los balanceadores de carga de red con paso a través se incluyen en esta categoría.
Para determinar qué balanceador de carga es el más adecuado para tu aplicación, consulta la tabla de resumen.
Comparación entre los niveles de servicio de red Premium y Estándar
Los niveles de servicio de red te permiten optimizar la conectividad entre los sistemas de Internet y tus instancias de Google Cloud . El nivel Premium distribuye el tráfico a través de la red troncal premium de Google, mientras que el nivel Estándar usa redes de proveedores de Internet normales. Por lo general, se elige el nivel Premium para obtener un alto rendimiento y una latencia baja. Puedes elegir el nivel estándar como alternativa de bajo coste para las aplicaciones que no tengan requisitos estrictos de latencia o rendimiento.
Nivel Premium. Si la dirección IP del balanceador de carga está en el nivel Premium, el tráfico atraviesa la red troncal mundial de alta calidad de Google con el objetivo de que los paquetes entren y salgan de un punto de emparejamiento perimetral de Google lo más cerca posible del cliente.
Si no especifica un nivel de red, el balanceador de carga usará de forma predeterminada el nivel Premium. Algunos balanceadores de carga externos, como el balanceador de carga de aplicación externo global y el balanceador de carga de red con proxy externo global, solo se pueden configurar en el nivel Premium.
Todos los balanceadores de carga internos siempre usan la red troncal global de alta calidad de Google y, por lo tanto, siempre están configurados para usar el nivel Premium de forma predeterminada. Sin embargo, los cargos de salida de Internet asociados al nivel Premium no se aplican al tráfico del balanceador de carga interno.
Nivel Estándar. Si la dirección IP del balanceador de carga está en el nivel Estándar, el tráfico entra en la red de Google y sale de ella por el punto de emparejamiento más cercano a laGoogle Cloud región en la que está configurado el balanceador de carga.
Como se indica en la tabla de resumen, no todos los balanceadores de carga se pueden implementar en el nivel Estándar, así que planifica tu presupuesto en consecuencia.
Como eliges un nivel en el nivel de recurso (por ejemplo, la dirección IP externa de un balanceador de carga o una máquina virtual), puedes usar el nivel Estándar en algunos recursos y el nivel Premium en otros. Puedes usar el árbol de decisiones de la documentación sobre los niveles de servicio de red para tomar la decisión.
Resumen de los balanceadores de carga de Google Cloud
En la siguiente tabla se proporcionan detalles, como el nivel de servicio de red en el que funciona cada balanceador de carga, junto con su esquema de balanceo de carga.
Balanceador de carga | Modo de despliegue | Tipo de tráfico | Nivel de servicio de red | Esquema de balanceo de carga1 |
---|---|---|---|---|
Balanceadores de carga de aplicación | Global external | HTTP o HTTPS | Nivel premium | EXTERNAL_MANAGED |
Regional externa | HTTP o HTTPS | Nivel Premium o Estándar | EXTERNAL_MANAGED | |
Clásico | HTTP o HTTPS | Global en el nivel Premium Regional en el nivel Estándar |
EXTERNAL2 | |
Regional internal3 | HTTP o HTTPS | Nivel premium | INTERNAL_MANAGED | |
Interno entre regiones | HTTP o HTTPS | Nivel premium | INTERNAL_MANAGED | |
Balanceadores de carga de red de proxy | Global external | TCP con descarga de SSL opcional | Nivel premium | EXTERNAL_MANAGED |
Regional externa | TCP | Nivel Premium o Estándar | EXTERNAL_MANAGED | |
Clásico | TCP con descarga de SSL opcional | Global en el nivel Premium Regional en el nivel Estándar |
EXTERNO | |
Regional internal3 | TCP sin descarga de SSL | Nivel premium | INTERNAL_MANAGED | |
Interno entre regiones | TCP sin descarga de SSL | Nivel premium | INTERNAL_MANAGED | |
Balanceadores de carga de red con paso a través | Externo Siempre regional |
TCP, UDP, ESP, GRE, ICMP e ICMPv6 | Nivel Premium o Estándar | EXTERNO |
Interno3 Siempre regional |
TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH y GRE | Nivel premium | INTERNAL |
1 El esquema de balanceo de carga es un atributo de la regla de reenvío y del servicio de backend de un balanceador de carga, e indica si el balanceador de carga se puede usar para el tráfico interno o externo.
El término gestionado en EXTERNAL_MANAGED
o INTERNAL_MANAGED
indica
que el balanceador de carga se implementa como un servicio gestionado en un Google Front
End (GFE) o en el proxy Envoy de código abierto. En un esquema de balanceo de carga gestionado, las solicitudes se dirigen a GFE o al proxy de Envoy.
EXTERNAL_MANAGED
servicios de backend a
EXTERNAL
reglas de reenvío. Sin embargo, los servicios de backend de EXTERNAL
no se pueden adjuntar a reglas de reenvío de EXTERNAL_MANAGED
.
Para aprovechar las nuevas funciones disponibles solo con el balanceador de carga de aplicación externo global, te recomendamos que migres tus recursos de EXTERNAL
a EXTERNAL_MANAGED
mediante el proceso de migración descrito en el artículo Migrar recursos del balanceador de carga de aplicación clásico al balanceador de carga de aplicación externo global.
3 De forma predeterminada, los balanceadores de carga internos regionales solo permiten el tráfico de los clientes que se encuentran en la misma región que el balanceador de carga. Sin embargo, puedes permitir el tráfico de clientes de otras regiones habilitando el acceso global en la regla de reenvío.
Siguientes pasos
- Para ver una comparativa de las funciones de balanceo de carga que ofrece Cloud Load Balancing, consulta la comparativa de funciones de los balanceadores de carga.