En esta sección de la guía de arquetipos de implementación de Google Cloud, se comparan los arquetipos de implementación en términos de disponibilidad, robustez ante interrupciones, costo y complejidad operativa.
En la siguiente tabla, se resume el análisis comparativo de los arquetipos de implementación básicos: zonal, regional, multirregional y global. En el caso de las topologías híbridas y de múltiples nubes, el arquetipo de implementación que se usa para la parte de Google Cloud de la topología influye en la disponibilidad, la robustez contra las interrupciones, el costo y la complejidad operativa.
Consideración de diseño | Zonal | Regional | Multirregional | Global |
---|---|---|---|---|
Disponibilidad de la infraestructura | 99.9% (3 nueves) | 99.99% (4 nueves) | 99.999% (5 nueves) | 99.999% (5 nueves) |
Solidez de la infraestructura contra interrupciones zonales | RTO de horas o días | RTO cercano a cero si la replicación es síncrona | RTO cercano a cero si la replicación es síncrona | RTO cercano a cero si la replicación es síncrona |
Solidez de la infraestructura contra interrupciones regionales | RTO de horas o días | RTO de horas o días | RTO cercano a cero si la replicación es síncrona | RTO cercano a cero si la replicación es síncrona |
Costo de los recursos de Google Cloud | Baja | Media | Alta | Media |
Complejidad operativa | Es más simple que los otros arquetipos de implementación. | Más complejo que el zonal | Más compleja que la regional | Es potencialmente más simple que la multirregional. |
En las siguientes secciones, se describe el análisis comparativo que se resume en la tabla anterior.
Disponibilidad de la infraestructura
En las siguientes secciones, se describen las diferencias en la disponibilidad de la infraestructura entre los arquetipos de implementación.
Arquetipos de implementación zonal, regional, multirregional y global
La infraestructura de Google Cloud está diseñada para admitir una disponibilidad objetivo del 99.9% para tu carga de trabajo cuando usas el arquetipo de implementación zonal, el 99.99% para las implementaciones regionales y el 99.999% para las implementaciones multirregionales y globales. Estos números de disponibilidad son objetivos para la infraestructura a nivel de la plataforma.
La disponibilidad que puedes esperar de una aplicación que se implementa en Google Cloud depende de los siguientes factores, además del arquetipo de implementación:
- Diseño de la aplicación
- Cantidad de niveles interdependientes en la pila de aplicaciones
- Tiempo de actividad Acuerdos de Nivel de Servicio (ANS) de los servicios de Google Cloud que se usan
- Cantidad de recursos redundantes
- Permisos de ubicación de los recursos
Para obtener más información, consulta Componentes básicos de la confiabilidad en Google Cloud.
Arquetipos de implementación híbrida y de múltiples nubes
En el caso de una topología híbrida o de múltiples nubes, la disponibilidad general depende de la infraestructura de cada entorno y de las interdependencias entre los entornos.
- Si existen interdependencias críticas entre los componentes de Google Cloud y los componentes fuera de Google Cloud, la disponibilidad general es menor que la disponibilidad del componente que proporciona la menor disponibilidad en todos los entornos.
- Si cada componente de la aplicación se implementa de forma redundante en Google Cloud y de forma local o en otras plataformas en la nube, la redundancia garantiza la alta disponibilidad.
Solidez de la infraestructura contra interrupciones zonales y regionales
Si se produce una interrupción en la zona principal, puedes promover la base de datos en la zona de conmutación por error para que sea la base de datos principal y actualizar el balanceador de cargas para enviar tráfico al frontend en la zona de conmutación por error.
Arquetipo de implementación zonal
Una arquitectura que usa el arquetipo básico de implementación de zona única no es sólida contra las interrupciones zonales. Debes planificar la recuperación de interrupciones de zona según tu objetivo de punto de recuperación (RPO) y tu objetivo de tiempo de recuperación (RTO). Por ejemplo, puedes mantener una réplica pasiva o reducida de la infraestructura en otra zona (de conmutación por error). Si se produce una interrupción en la zona principal, puedes promover la base de datos en la zona de conmutación por error para que sea la base de datos principal y actualizar el balanceador de cargas para enviar tráfico al frontend en la zona de conmutación por error.
Arquetipo de implementación regional
Una arquitectura que usa el arquetipo de implementación regional es sólida contra las interrupciones zonales. Es poco probable que una falla en una zona afecte la infraestructura en otras zonas. El RTO es cercano a cero si los datos se replican de forma síncrona. Sin embargo, cuando una interrupción afecta a toda una región de Google Cloud, la aplicación deja de estar disponible. Planifica la recuperación ante interrupciones según el RPO y el RTO de la aplicación. Por ejemplo, puedes aprovisionar una réplica pasiva de la infraestructura en una región diferente y activarla durante las interrupciones regionales.
Arquetipos de implementación multirregional y global
Una arquitectura que usa el arquetipo de implementación multirregional o global es sólida contra las interrupciones zonales y regionales. El RTO es cercano a cero si los datos se replican de forma síncrona. Una arquitectura en la que la aplicación se ejecuta como una pila distribuida de forma global sin conocimiento de la ubicación proporciona el nivel más alto de solidez contra las interrupciones regionales.
Arquetipos de implementación híbrida y de múltiples nubes
La solidez de una arquitectura híbrida y multinube depende de la solidez de cada entorno (Google Cloud, local y otras plataformas en la nube) y de las interdependencias entre los entornos.
Por ejemplo, si cada componente de una aplicación se ejecuta de forma redundante en Google Cloud y otro entorno (local o en otra plataforma en la nube), la aplicación es sólida contra cualquiera de las interrupciones de Google Cloud. Si hay interdependencias críticas entre los componentes de Google Cloud y los que se implementan de forma local o en otras plataformas en la nube, la solidez contra las interrupciones de Google Cloud depende de la solidez del arquetipo de implementación que usas para la parte de Google Cloud de la arquitectura.
Costo de los recursos de Google Cloud
El costo de los recursos de Google Cloud necesarios para una aplicación depende de los servicios de Google Cloud que usas, la cantidad de recursos que aprovisionas, el período para el que conservas o usas recursos, y el arquetipo de implementación que elijas. Para estimar el costo de los recursos de Google Cloud en una arquitectura basada en cualquier arquetipo de implementación, puedes usar la calculadora de precios de Google Cloud.
En las siguientes secciones, se describen las diferencias en el costo de los recursos de Google Cloud entre los diversos arquetipos de implementación.
Arquetipos de implementación zonal, regional y multirregional
En comparación con una arquitectura que usa el arquetipo de implementación zonal, una arquitectura que usa el arquetipo de implementación multirregional podría incurrir en costos adicionales por el almacenamiento redundante. Además, para cualquier tráfico de red que cruce los límites de la región, debes considerar los costos de transferencia de datos entre regiones.
Arquetipo de implementación global
Con este arquetipo, tienes la oportunidad de usar recursos globales de alta disponibilidad, como un balanceador de cargas global. El costo de configurar y operar los recursos de la nube puede ser más bajo que una implementación multirregional en la que aprovisionas y configuras varias instancias de recursos regionales. Sin embargo, los recursos globales pueden implicar costos más altos en algunos casos. Por ejemplo, el balanceador de cargas global requiere herramientas de redes del nivel Premium, pero para los balanceadores de cargas regionales, puedes elegir el nivel Estándar.
Arquetipos de implementación híbrida y de múltiples nubes
En una arquitectura de implementación híbrida o multinube, debes considerar los costos adicionales junto con el costo de los recursos que aprovisionas. Por ejemplo, ten en cuenta los costos, como las redes híbridas o multinube, y el costo de supervisar y administrar los recursos en varios entornos.
Consideraciones para todos los arquetipos de implementación
Cuando evalúes el costo de ejecutar una carga de trabajo en la nube, debes tener en cuenta los costos adicionales junto con el costo de los recursos de Google Cloud que aprovisionas. Por ejemplo, ten en cuenta los gastos de personal y los costos generales para diseñar, compilar y mantener tu implementación en la nube.
Para comparar el costo de los recursos de Google Cloud entre los arquetipos de despliegue, ten en cuenta también el costo por unidad de trabajo que realiza la aplicación. Identifica las unidades de trabajo que reflejan los impulsores comerciales de la aplicación, como la cantidad de usuarios a los que se entrega la aplicación o la cantidad de solicitudes procesadas.
Si administras cuidadosamente el uso de tus recursos de Google Cloud y adaptas las prácticas recomendadas de Google, puedes optimizar el costo de tus implementaciones en la nube. Para obtener más información, consulta Google Cloud Architecture Framework: Optimización de costos.
Complejidad operativa
En las siguientes secciones, se describen las diferencias en la complejidad operativa entre los arquetipos de implementación, que dependen de la cantidad de recursos, funciones y pilas de aplicaciones de la infraestructura que necesitas operar.
Arquetipos de implementación zonal, regional y multirregional
Una arquitectura basada en el arquetipo de implementación zonal es más fácil de configurar y operar en comparación con las otras arquitecturas de implementación. Una aplicación que se ejecuta de forma redundante en varias zonas o regiones requiere un mayor esfuerzo operativo por los siguientes motivos:
- Se debe supervisar el estado de las pilas de aplicaciones en varias ubicaciones, tanto a nivel de la pila como para cada componente de la aplicación.
- Si un componente deja de estar disponible en cualquier ubicación, las solicitudes en proceso deben controlarse de forma correcta.
- Los cambios en la aplicación se deben implementar con cuidado.
- Las bases de datos deben estar sincronizadas en todas las ubicaciones.
Arquetipo de implementación global
El arquetipo de implementación global te permite usar recursos globales de alta disponibilidad, como un balanceador de cargas global y una base de datos global. El esfuerzo para configurar y operar los recursos de la nube puede ser menor que el de una implementación multirregional en la que debes administrar varias instancias de recursos regionales. Sin embargo, debes administrar cuidadosamente los cambios en los recursos globales.
El esfuerzo por operar una arquitectura que usa el arquetipo de implementación global también depende de si implementas una pila distribuida sin conocimiento de la ubicación o varias pilas aisladas de forma regional:
- Una aplicación distribuida que no tiene en cuenta la ubicación se puede expandir y escalar con mayor flexibilidad. Por ejemplo, si ciertos componentes tienen requisitos de latencia críticos del usuario final solo en ubicaciones específicas, puedes implementar estos componentes en las ubicaciones requeridas y operar el resto de la pila en otras ubicaciones.
- Una aplicación que se implementa como varias pilas aisladas a nivel regional requiere un mayor esfuerzo para operar y mantener, debido a los siguientes factores:
- Se debe supervisar el estado de las pilas de aplicaciones en varias ubicaciones, tanto a nivel de la pila como para cada componente.
- Si un componente deja de estar disponible en cualquier ubicación, las solicitudes en proceso deben manejarse de forma fluida.
- Los cambios en la aplicación se deben implementar con cuidado.
- Las bases de datos deben estar sincronizadas en todas las ubicaciones.
Arquetipos de implementación híbrida y de múltiples nubes
Las topologías híbridas o de múltiples nubes requieren más esfuerzo para configurarse y operarse que una arquitectura que solo usa Google Cloud.
- Los recursos deben administrarse de manera coherente en las topologías locales y de Google Cloud. Para administrar las aplicaciones híbridas en contenedores, puedes usar soluciones como GKE Enterprise, que es un modelo operativo unificado de nube para aprovisionar, actualizar y optimizar clústeres de Kubernetes en varias ubicaciones.
- Necesitas una forma de aprovisionar y administrar recursos de manera eficiente en varias plataformas. Las herramientas como Terraform pueden ayudar a reducir el esfuerzo de aprovisionamiento.
- Las funciones y herramientas de seguridad no son estándar en todas las plataformas en la nube. Los administradores de seguridad deben adquirir habilidades y experiencia para administrar la seguridad de los recursos distribuidos en todas las plataformas en la nube que usas.