Arquetipos de implementación de Google Cloud

Last reviewed 2024-11-20 UTC

Como arquitecto de nube o responsable de la toma de decisiones, cuando planeas implementar una aplicación en Google Cloud, debes elegir un arquetipo de implementación1 adecuado para tu aplicación. En esta guía, se describen seis arquetipos de implementación (zonales, regionales, multirregionales, globales, híbridas y multinube), y se presentan casos de uso y consideraciones de diseño para cada arquetipo de implementación. La guía también proporciona un análisis comparativo para ayudarte a elegir los arquetipos de implementación que cumplan con tus requisitos de disponibilidad, costo, rendimiento y eficiencia operativa.

¿Qué es un arquetipo de implementación?

Un arquetipo de implementación es un modelo abstracto e independiente del proveedor que usas como base para compilar arquitecturas de implementación específicas de la aplicación que cumplen con tus requisitos comerciales y técnicos. Cada arquetipo de implementación especifica una combinación de dominios con fallas en los que se puede ejecutar una aplicación. Estos dominios con fallas pueden ser una o más Google Cloud zonas o regiones, y se pueden extender para incluir tus centros de datos locales o dominios con fallas en otros proveedores de servicios en la nube.

En el siguiente diagrama, se muestran seis aplicaciones implementadas en Google Cloud. Cada aplicación usa un arquetipo de implementación que cumple con sus requisitos específicos.

Aplicaciones en Google Cloud implementadas con diferentes arquetipos de implementación.

Como se muestra en el diagrama anterior, en una arquitectura que usa el arquetipo de implementación híbrida o de múltiples nubes, la topología de la nube se basa en uno de los arquetipos básicos: zonal, regional, multirregional o global. En este sentido, los arquetipos de implementación híbrida y de múltiples nubes se pueden considerar como arquetipos de implementación compuestos que incluyen uno de los arquetipos básicos.

Elegir un arquetipo de implementación ayuda a simplificar las decisiones posteriores sobre los Google Cloud productos y las funciones que debes usar. Por ejemplo, para una aplicación en contenedores con alta disponibilidad, si eliges el arquetipo de implementación regional, los clústeres regionales de Google Kubernetes Engine (GKE) son más apropiados que los zonales.

Cuando eliges un arquetipo de implementación para una aplicación, debes considerar las compensaciones entre factores como la disponibilidad, el costo y la complejidad operativa. Por ejemplo, si una aplicación entrega contenido a usuarios de varios países y necesita alta disponibilidad, puedes elegir el arquetipo de implementación multirregional. Sin embargo, para una aplicación interna que usan los empleados en una sola región geográfica, puedes priorizar el costo por sobre la disponibilidad y, por lo tanto, elegir el arquetipo de implementación regional.

Descripción general de los arquetipos de implementación

En las siguientes pestañas, se proporcionan definiciones para los arquetipos de implementación y un resumen de los casos de uso y las consideraciones de diseño para cada uno.

Zonal

Tu aplicación se ejecuta dentro de una sola Google Cloud zona, como se muestra en el siguiente diagrama:

Arquetipo de implementación zonal
Casos de uso
  • Entornos de desarrollo y pruebas
  • Aplicaciones que no necesitan alta disponibilidad
  • Redes de baja latencia entre componentes de la aplicación
  • Migración de cargas de trabajo básicas.
  • Aplicaciones que usan software con restricciones de licencia
Consideraciones del diseño
  • Tiempo de inactividad durante las interrupciones de la zona.

    Para la continuidad empresarial, puedes aprovisionar una réplica pasiva de la aplicación en otra zona de la misma región. Si se produce una interrupción de la zona, puedes restablecer la aplicación a la producción con la réplica pasiva.

Más información

Consulta las siguientes secciones:

Regional

Tu aplicación se ejecuta de forma independiente en dos o más zonas dentro de una sola Google Cloud región, como se muestra en el siguiente diagrama:

Arquetipo de implementación regional
Casos de uso
  • Aplicaciones con alta disponibilidad que entregan contenido a usuarios dentro de un área geográfica
  • Cumplimiento de los requisitos de soberanía y residencia de datos
Consideraciones del diseño
  • Tiempo de inactividad durante las interrupciones de la región.

    Para la continuidad empresarial, puedes hacer una copia de seguridad de la aplicación y los datos en otra región. Si se produce una interrupción regional, puedes usar las copias de seguridad en la otra región para restablecer la aplicación a la producción.

  • Costo y esfuerzo para aprovisionar y administrar recursos redundantes.
Más información

Consulta las siguientes secciones:

Multirregional

Tu aplicación se ejecuta de forma independiente en varias zonas de dos o más Google Cloud regiones. Puedes usar las políticas de enrutamiento de DNS para enrutar el tráfico entrante a los balanceadores de cargas regionales. Luego, los balanceadores de cargas regionales distribuyen el tráfico a las réplicas zonales de la aplicación, como se muestra en el siguiente diagrama:

Arquetipo de implementación multirregional
Casos de uso
  • Aplicación con alta disponibilidad con usuarios dispersos geográficamente
  • Aplicaciones que requieren una experiencia de baja latencia para el usuario final
  • Cumplimiento de los requisitos de soberanía y residencia de datos mediante el uso de una política de enrutamiento de DNS con geovalla.
Consideraciones del diseño
  • Costo de la transferencia de datos y la replicación de datos entre regiones
  • Complejidad operativa.
Más información

Consulta las siguientes secciones:

Global

Tu aplicación se ejecuta en Google Cloud regiones de todo el mundo, ya sea como una pila distribuida de forma global (sin reconocimiento de la ubicación) o como pilas aisladas de forma regional. Un balanceador de cargas de anycast global distribuye el tráfico a la región más cercana al usuario. Otros componentes de la pila de aplicaciones también pueden ser globales, como la base de datos, la caché y el almacén de objetos.

En el siguiente diagrama, se muestra la variante distribuida de forma global del arquetipo de implementación global. Un balanceador de cargas de anycast global reenvía las solicitudes a una pila de aplicaciones que se distribuye en varias regiones y que usa una base de datos replicada de forma global.

Arquetipo de implementación global: Pila distribuida a nivel global

En el siguiente diagrama, se muestra una variante del arquetipo de implementación global con pilas de aplicaciones aisladas de forma regional. Un balanceador de cargas de anycast global reenvía las solicitudes a una pila de aplicaciones en una de las regiones. Todas las pilas de aplicaciones usan una sola base de datos replicada de forma global.

Arquetipo de implementación global: pilas aisladas regionalmente
Casos de uso
  • Aplicaciones con alta disponibilidad que entregan contenido a usuarios dispersos de forma global
  • Oportunidad de optimizar el costo y simplificar las operaciones mediante el uso de recursos globales en lugar de varias instancias de recursos regionales
Consideraciones del diseño Costos de la transferencia de datos y la replicación de datos entre regiones
Más información

Consulta las siguientes secciones:

Híbrido

Ciertas partes de tu aplicación se implementan en Google Cloud, mientras que otras se ejecutan de forma local, como se muestra en el siguiente diagrama. La topología en Google Cloud puede usar el arquetipo de implementación zonal, regional, multirregional o global.

Arquetipo de implementación híbrida
Casos de uso
  • Sitio de recuperación ante desastres (DR) para cargas de trabajo locales
  • Desarrollo local para aplicaciones en la nube
  • Migración progresiva a la nube para aplicaciones heredadas
  • Mejora de las aplicaciones locales con capacidades de la nube
Consideraciones del diseño
  • Esfuerzo de configuración y complejidad operativa
  • Costo de los recursos redundantes
Más información

Consulta las siguientes secciones:

Múltiples nubes

Algunas partes de tu aplicación se implementan en Google Cloud, y otras partes se implementan en otras plataformas de nube, como se muestra en el siguiente diagrama. La topología en cada plataforma de nube puede usar el arquetipo de implementación zonal, regional, multirregional o global.

Arquetipo de implementación de múltiples nubes
Casos de uso
  • Google Cloud como el sitio principal y otra nube como sitio de DR
  • Mejora de las aplicaciones con capacidades avanzadas Google Cloud
Consideraciones del diseño
  • Esfuerzo de configuración y complejidad operativa
  • Costo de los recursos redundantes y el tráfico de red entre nubes
Más información

Consulta las siguientes secciones:

Colaboradores

Autor: Kumar Dhanagopal | Desarrollador de soluciones entre productos

Otros colaboradores:


  1. Kat Berenberg y Brad Calder, Arquetipos de implementación para aplicaciones en la nube, Encuestas de computación de ACM, volumen 55, problema 3, artículo n°: 61, pp 1-48