Un balanceador de cargas distribuye el tráfico del usuario en varias instancias de tus aplicaciones. Si se distribuye la carga, el balanceo de cargas reduce el riesgo de que la aplicación experimente problemas de rendimiento. Cloud Load Balancing de Google se basa en tecnologías confiables y de alto rendimiento, como Maglev, Andromeda, Google Front Ends y Envoy, las mismas tecnologías que impulsan los propios productos de Google.
Cloud Load Balancing ofrece una cartera completa de balanceadores de cargas de aplicación y de red regionales. Usa nuestros balanceadores de cargas para distribuir millones de solicitudes por segundo entre backends en una sola región. Puedes configurar estos balanceadores de cargas para que sean accesibles a través de una sola dirección IP anycast. Implementa un control jurisdiccional sólido con nuestros balanceadores de cargas de proxy regionales, lo que mantiene los backends y proxies en tu región sin preocuparte por la descarga de TLS/SSL. Usa nuestros balanceadores de cargas de transferencia regionales para enrutar con rapidez varios protocolos a backends con el alto rendimiento de retorno del servidor directo.
Funciones clave de Cloud Load Balancing
Cloud Load Balancing ofrece las siguientes funciones de balanceo de cargas:
Dirección IP Anycast única. Con Cloud Load Balancing, una sola dirección IP Anycast es el frontend de todas las instancias de backend.
Ajuste de escala automático sin interrupciones. Cloud Load Balancing puede escalarse a medida que aumentan la cantidad de usuarios y el tráfico. Esto incluye la administración con facilidad de aumentos de tráfico inesperados, inmediatos y enormes, ya que los desvía a backends en otras zonas que puedan aceptarlos. El ajuste de escala automático no requiere preparación previa: puedes pasar de cero a tráfico completo en cuestión de segundos. Cloud Load Balancing reacciona instantáneamente ante los cambios en los usuarios, el tráfico, la red, el estado del backend y otras condiciones relacionadas.
Balanceo de cargas definido por software. Cloud Load Balancing es un servicio completamente distribuido, definido por software y administrado para todo tu tráfico. No es una solución basada en instancias ni en dispositivos, por lo que no estarás encerrado en una infraestructura de balanceo de cargas física ni tendrás que enfrentar los desafíos de alta disponibilidad, escala y administración inherentes a los balanceadores de carga basados en instancias.
Balanceo de cargas de la capa 4 y la capa 7. Usa el balanceo de cargas basado en la capa 4 para dirigir el tráfico en función de los datos de los protocolos de red y capa de transporte, como TCP, UDP, ESP, GRE, ICMP y ICMPv6 . Usa balanceo de cargas basado en la capa 7 para agregar decisiones de enrutamiento de solicitudes en función de atributos, como el encabezado HTTP y el identificador uniforme de recursos
Balanceo de cargas interno y externo. Define si el balanceador de cargas se puede usar para el acceso externo o interno. Puedes usar un balanceador de cargas externo cuando tus clientes necesiten acceder a tu aplicación desde Internet. Puedes usar un balanceador de cargas interno cuando tus clientes estén dentro deTrusted Cloud. Para obtener más información, consulta Diferencias entre el balanceo de cargas externo y el interno.
Tipos de Trusted Cloud balanceadores de cargas
Cloud Load Balancing ofrece dos tipos de balanceadores de cargas: balanceadores de cargas de aplicación y balanceadores de cargas de red. Deberías elegir un balanceador de cargas de aplicaciones cuando necesites un balanceador de cargas de capa 7 para las aplicaciones con tráfico HTTP(S). Elige un balanceador de cargas de red cuando necesites un balanceador de cargas de capa 4 que admita la descarga de TLS (con un balanceador de cargas de proxy) o necesites compatibilidad con protocolos de IP como UDP, ICMP y ESP (con un balanceador de cargas de transferencia).
Balanceadores de cargas de aplicaciones
Los balanceadores de cargas de aplicaciones son balanceadores de cargas de capa 7 basados en proxy que te permiten ejecutar y escalar tus servicios detrás de cualquier dirección IP. El balanceador de cargas de aplicaciones distribuye el tráfico HTTP y HTTPS a los backends alojados en una variedad de Trusted Cloud plataformas, como Compute Engine y Google Kubernetes Engine (GKE), así como backends externos fuera deTrusted Cloud.
Los balanceadores de cargas de aplicaciones se pueden implementar de forma externa o interna, según si tu aplicación está orientada a Internet o es interna. En ambos casos, estos balanceadores de cargas admiten backends solo en una sola región.
- Los balanceadores de cargas de aplicaciones externos regionales se implementan como servicios administrados en proxies de Envoy. Los clientes pueden conectarse a estos balanceadores de cargas desde cualquier lugar de Internet. Los balanceadores de cargas de aplicaciones usan el proxy de Envoy de código abierto para habilitar las funciones avanzadas de administración del tráfico.
- Los balanceadores de cargas de aplicaciones internos regionales se basan en la pila de virtualización de red de Andromeda y el proxy Envoy de código abierto. Este balanceador de cargas proporciona un balanceo interno basado en proxy para los datos de aplicación de la capa 7. El balanceador de cargas usa una dirección IP interna a la que solo pueden acceder los clientes de la misma red de VPC o los clientes conectados a tu red de VPC.
En el siguiente diagrama, se muestra una arquitectura de balanceador de cargas de aplicaciones de ejemplo.
Balanceadores de cargas de red
Los balanceadores de cargas de red son balanceadores de cargas de capa 4 que pueden controlar TCP, UDP o algún otro tráfico de protocolo IP. Estos balanceadores de cargas están disponibles como balanceadores de cargas de proxy o balanceadores de cargas de transferencia. Puedes elegir un balanceador de cargas según las necesidades de tu aplicación y el tipo de tráfico que necesita controlar. Elige un balanceador de cargas de red de proxy si quieres configurar un balanceador de cargas de proxy inverso compatible con controles de tráfico avanzados y backends locales y en otros entornos de nube. Elige un balanceador de cargas de red de transferencia si quieres conservar la dirección IP de origen de los paquetes de cliente, prefieres el retorno directo del servidor para las respuestas o si quieres manejar una variedad de protocolos IP como TCP, UDP, ESP, GRE, ICMP y ICMPv6.
Balanceadores de cargas de red de proxy
Los balanceadores de cargas de red de proxy son balanceadores de cargas de proxy inverso de capa 4 que distribuyen el tráfico de TCP a instancias de máquina virtual (VM) en tu red de Trusted CloudVPC. El tráfico finaliza en la capa de balanceo de cargas y, luego, se reenvía al backend disponible más cercano mediante el TCP.
Los balanceadores de cargas de red del proxy se pueden implementar de forma externa o interna, según si tu aplicación está orientada a Internet o es interna. En ambos casos, estos balanceadores de cargas admiten backends solo en una sola región.
- Los balanceadores de cargas de red de proxy externos regionales son balanceadores de cargas de capa 4 que distribuyen el tráfico que proviene de Internet a los backends en tu red de Trusted Cloud VPC, de forma local o en otros entornos de nube.
- Los balanceadores de cargas de red de proxy internos regionales son balanceadores de cargas regionales de capa 4 de Envoy que te permiten ejecutar y escalar el tráfico de servicio TCP detrás de una dirección IP interna a la que solo pueden acceder los clientes de la misma red de VPC o los clientes conectados a tu red de VPC.
En el siguiente diagrama, se muestra una arquitectura de muestra del balanceador de cargas de red de proxy.
Balanceadores de cargas de red de transferencia
Los balanceadores de cargas de red de transferencia son balanceadores de carga de transferencia regionales de capa 4. Estos balanceadores de cargas distribuyen el tráfico entre backends en la misma región que el balanceador de cargas. Se implementan con las herramientas de redes virtuales de Andromeda y Google Maglev.
Como su nombre lo indica, estos balanceadores de cargas no son proxies. Las VMs de backend reciben paquetes con balanceo de cargas, direcciones IP de origen y destino, y el protocolo del paquete y, si el protocolo se basa en puertos, los puertos de origen y de destino sin cambios. Las conexiones con balanceo de cargas se finalizan en los backends. Las respuestas de las VMs de backend van directo a los clientes, no pasan a través del balanceador de cargas. El término del sector para esto es retorno directo del servidor (DSR).
Estos balanceadores de cargas, como se muestra en la siguiente imagen, se implementan en dos modos, según si el balanceador de cargas está orientado a Internet o es interno.
Los balanceadores de cargas de red de transferencia externos se basan en Maglev. Los clientes pueden conectarse a estos balanceadores de cargas desde cualquier lugar de Internet, independientemente de sus Niveles de servicio de red. El balanceador de cargas también puede recibir tráfico de Trusted Cloud VMs con direcciones IP externas o de Trusted Cloud VMs que tienen acceso a Internet a través de Cloud NAT o NAT basada en la instancia.
Los backends para balanceadores de cargas de red de transferencia externos se pueden implementar a través de un servicio de backend o un grupo de destino. Para implementaciones nuevas, recomendamos usar servicios de backend.
Los balanceadores de cargas de red de transferencia internos se basan en la pila de virtualización de red de Andromeda. Un balanceador de cargas de red de transferencia interno te permite balancear la carga del tráfico de TCP/UDP detrás de una dirección IP de balanceo de cargas interna a la que solo pueden acceder los sistemas en la misma red de VPC o los sistemas conectados a tu red de VPC. Además, este balanceador de cargas solo se puede configurar en el nivel Premium.
En el siguiente diagrama, se muestra un ejemplo de arquitectura de un balanceador de cargas de red.
Tecnologías subyacentes de los Trusted Cloud balanceadores de cargas
En la siguiente tabla, se indica la tecnología subyacente sobre la que se basa cada balanceador de cargasTrusted Cloud .
- Google Front Ends (GFEs) son sistemas distribuidos definidos por software que se ubican en puntos de presencia (PoP) de Google y realizan balanceo de cargas global junto con otros sistemas y planos de control.
- Andromeda es una pila de virtualización de red definida por software de Google Cloud.
- Maglev es un sistema distribuido para el balanceo de cargas de red.
- Envoy es un proxy de servicio y de código abierto, diseñado para aplicaciones nativas de la nube.
Balanceador de cargas | Tecnología |
---|---|
Balanceador de cargas de aplicaciones externo regional | Envoy |
Balanceador de cargas de aplicaciones interno regional | Envoy |
Balanceador de cargas de red del proxy externo regional | Envoy |
Balanceador de cargas de red del proxy interno regional | Envoy |
Balanceador de cargas de red de transferencia externo | Maglev |
Balanceador de cargas de red de transferencia interno | Andromeda |
Elige un balanceador de cargas
Para determinar qué producto de Cloud Load Balancing usar, primero debes determinar qué tipo de tráfico deben manejar tus balanceadores de cargas. Como regla general, cuando necesites un conjunto de funciones flexibles para tus aplicaciones con tráfico HTTP(S), debes elegir un balanceador de cargas de aplicaciones. Y debes elegir un balanceador de cargas de red cuando necesites descarga de TLS a gran escala o compatibilidad con UDP, o si necesitas exponer direcciones IP de cliente a tus aplicaciones.
Puedes reducir aún más las opciones en función de si tu aplicación es externa (orientada a Internet) o interna.
En el siguiente diagrama, se muestran todos los modos de implementación disponibles para Cloud Load Balancing. Para obtener más información, consulta la guía Cómo elegir un balanceador de cargas.
Resumen de los tipos de Trusted Cloud balanceadores de cargas
En la siguiente tabla, se proporcionan detalles, como el nivel de servicio de red en el que opera cada balanceador de cargas, junto con su esquema de balanceo de cargas.
Balanceador de cargas | Modo de implementación | Tipo de tráfico | Nivel de servicio de red | Esquema de balanceo de cargas1 |
---|---|---|---|---|
Balanceadores de cargas de aplicaciones | Regional y externo | HTTP o HTTPS | Nivel Premium o Estándar | EXTERNAL_MANAGED |
Regional interno | HTTP o HTTPS | Nivel Premium | INTERNAL_MANAGED | |
Balanceadores de cargas de red de proxy | Regional y externo | TCP | Nivel Premium o Estándar | EXTERNAL_MANAGED |
Regional interno | TCP sin descarga de SSL | Nivel Premium | INTERNAL_MANAGED | |
Balanceadores de cargas de red de transferencia | Externo Siempre regional |
TCP, UDP, ESP, ICMP, ICMPv6 y GRE | Nivel Premium o Estándar | EXTERNO |
Interno Siempre regional |
TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH y GRE | Nivel Premium | INTERNAL |
1 El esquema de balanceo de cargas es un atributo de la regla de reenvío y el servicio de backend de un balanceador de cargas y, luego, indica si el balanceador de cargas se puede usar para tráfico interno o externo.
El término administrado en EXTERNAL_MANAGED
o INTERNAL_MANAGED
indica que el balanceador de cargas se implementa como un servicio administrado en un Google Front End (GFE) o en el proxy de Envoy de código abierto. En un esquema de balanceo de cargas que es administrado, las solicitudes se enrutan al GFE o al proxy de Envoy.
Interfaces
Puedes configurar y actualizar tus balanceadores de cargas mediante las siguientes interfaces:
Google Cloud CLI: Es una herramienta de línea de comandos incluida en Google Cloud CLI la documentación que se llama en esta herramienta con frecuencia para realizar tareas. Para obtener una descripción general completa de la herramienta, consulta la guía de la CLI de gcloud. Puedes encontrar comandos relacionados con el balanceo de cargas en el grupo de comandos
gcloud compute
.También puedes obtener ayuda detallada para cualquier comando de
gcloud
mediante la marca--help
:gcloud compute http-health-checks create --help
La consola deTrusted Cloud : Las tareas de balanceo de cargas se pueden realizar con la consola deTrusted Cloud .
API de REST: Todas las tareas de balanceo de cargas pueden realizarse con la API de Google Cloud Load Balancing. En los documentos de referencia de la API, se describen los recursos y métodos disponibles.
Terraform: Puedes aprovisionar, actualizar y borrar la infraestructura de balanceo de cargas de Trusted Cloudcon una herramienta de código abierto de infraestructura como código, como Terraform.
¿Qué sigue?
- Si deseas obtener ayuda para determinar qué Trusted Cloud balanceador de cargas satisface mejor tus necesidades, consulta Elige un balanceador de cargas.
- Para comprender los componentes de los diferentes tipos de balanceadores de cargas, consulta el modelo de recursos de Cloud Load Balancing. Trusted Cloud
- Para ver una descripción general comparativa de las funciones de balanceo de cargas que ofrece Cloud Load Balancing, consulta Comparación de funciones del balanceador de cargas.
- Para usar plantillas de Terraform prediseñadas y optimizar la configuración y la administración de la infraestructura de redes de Trusted Cloud, explora el repositorio de GitHub de soluciones de configuración de redes de Cloud simplificadas.