Arquetipos de implementación de Google Cloud

Last reviewed 2023-11-03 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 adecuada 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. También se 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 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 zonas o regiones de Google Cloud 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.

Las aplicaciones en Google Cloud se implementan mediante 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 productos y las funciones de Google Cloud 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 se entrega a usuarios en 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 zona de Google Cloud, 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.
  • Herramientas de redes de baja latencia entre los componentes de la aplicación.
  • Migración de cargas de trabajo básicas.
  • Aplicaciones que usan software con restricción de licencia.
Consideraciones del diseño
  • Tiempo de inactividad durante las interrupciones zonales

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

Más información

Consulta las siguientes secciones:

Regional

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

Arquetipo de implementación regional
Casos de uso
  • Aplicaciones con alta disponibilidad que atienden 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 regionales.

    Para la continuidad empresarial, puedes crear 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 producción.

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

Consulta las siguientes secciones:

Multirregional

La aplicación se ejecuta de forma independiente en varias zonas en dos o más regiones de Google Cloud. 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 de distintas ubicaciones geográficas.
  • Aplicaciones que requieren experiencia de baja latencia del usuario final.
  • Cumplimiento de los requisitos de soberanía y residencia de datos mediante una política de enrutamiento de DNS geovallado.
Consideraciones del diseño
  • Costo por la transferencia de datos entre regiones y la replicación de datos.
  • Complejidad operativa.
Más información

Consulta las siguientes secciones:

Global

Tu aplicación se ejecuta en regiones de Google Cloud en todo el mundo, ya sea como una pila distribuida a nivel global (que no reconoce la ubicación) o como pilas aisladas por regiones. Un balanceador de cargas 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 depósito de objetos.

En el siguiente diagrama, se muestra la variante distribuida a nivel global del arquetipo de implementación global. Un balanceador de cargas 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 en todo el mundo

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 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 de forma regional
Casos de uso
  • Aplicaciones con alta disponibilidad que entregan a usuarios en todo el mundo.
  • Oportunidad de optimizar los costos y simplificar las operaciones mediante el uso de recursos globales en lugar de varias instancias de recursos regionales.
Consideraciones del diseño Costos por la transferencia de datos entre regiones y la replicación de datos.
Más información

Consulta las siguientes secciones:

Híbrido

Ciertas partes de la aplicación se implementan en Google Cloud, mientras que otras se ejecutan de forma local, como se muestra en el siguiente diagrama. En la topología de Google Cloud, se 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 las aplicaciones locales con las 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 la aplicación se implementan en Google Cloud, y otras se implementan en otras plataformas en la nube, como se muestra en el siguiente diagrama. En la topología de cada plataforma en la nube, se 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 el sitio de DR
  • Mejora las aplicaciones con capacidades avanzadas de Google Cloud.
Consideraciones del diseño
  • Esfuerzo de configuración y complejidad operativa.
  • Costo de recursos redundantes y 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