Framework de arquitectura de Google Cloud

Last reviewed 2024-10-11 UTC

El Google Cloud framework de arquitectura proporciona recomendaciones para ayudar a los arquitectos, desarrolladores, administradores y otros profesionales de la nube a diseñar y operar una topología en la nube que sea segura, eficiente, resiliente, de alto rendimiento y rentable. El Google Cloud framework de arquitectura es nuestra versión de un framework bien diseñado.

Un equipo multifuncional de expertos de Google valida las recomendaciones del framework de arquitectura. El equipo selecciona el framework de arquitectura para reflejar las capacidades en constante crecimiento de Google Cloud, las prácticas recomendadas del sector, el conocimiento de la comunidad y tus comentarios. Para obtener un resumen de los cambios significativos en el framework de arquitectura, consulta Novedades.

El framework de arquitectura es relevante para las aplicaciones compiladas para la nube y para las cargas de trabajo migradas de forma local a Google Cloud, implementaciones de nube híbrida y entornos de múltiples nubes.

Pilares y perspectivas del framework de arquitectura

El Google Cloud framework de arquitectura está organizado en cinco pilares, como se muestra en el siguiente diagrama. También proporcionamos perspectivas de varios pilares que se centran en recomendaciones para dominios, industrias y tecnologías seleccionadas, como la IA y el aprendizaje automático (AA).

 Framework de arquitectura deGoogle Cloud .

Pilares

Excelencia operativa
Implementa, opera, supervisa y administra las cargas de trabajo en la nube de forma eficiente.
Seguridad, privacidad y cumplimiento
Maximiza la seguridad de tus datos y cargas de trabajo en la nube, diseña para la privacidad y se alínea con los requisitos y estándares normativos.
Confiabilidad
Diseña y opera cargas de trabajo resilientes y con alta disponibilidad en la nube.
Optimización de costos
Maximiza el valor empresarial de tu inversión en Google Cloud.
Optimización del rendimiento
Diseña y ajusta tus recursos en la nube para obtener un rendimiento óptimo.

Perspectivas

IA y AA
Una vista de varios pilares de las recomendaciones específicas para las cargas de trabajo de IA y AA.

Principios básicos

Antes de explorar las recomendaciones de cada pilar del framework de arquitectura, revisa los siguientes principios fundamentales:

Diseña para el cambio

Ningún sistema es estático. Las necesidades de sus usuarios, los objetivos del equipo que compila el sistema y el sistema en sí cambian constantemente. Con la necesidad de cambio en mente, crea un proceso de desarrollo y producción que permita a los equipos entregar cambios pequeños con regularidad y obtener comentarios rápidos sobre esos cambios. Demostrar de forma coherente la capacidad de implementar cambios ayuda a generar confianza con las partes interesadas, incluidos los equipos responsables del sistema y los usuarios del sistema. El uso de las métricas de entrega de software de DORA puede ayudar a tu equipo a supervisar la velocidad, la facilidad y la seguridad de realizar cambios en el sistema.

Documenta tu arquitectura

Cuando comienzas a mover las cargas de trabajo a la nube o a compilar las aplicaciones, la falta de documentación sobre el sistema puede ser un obstáculo importante. La documentación es especialmente importante para visualizar de manera correcta la arquitectura de las implementaciones actuales.

La documentación de calidad no se logra produciendo una cantidad específica de documentación, sino por la claridad, la utilidad y el mantenimiento del contenido a medida que cambia el sistema.

Una arquitectura en la nube documentada de forma adecuada establece un lenguaje y estándares comunes, que permiten a los equipos multifuncionales comunicarse y colaborar de manera efectiva. La documentación también proporciona la información necesaria para identificar y guiar las decisiones de diseño futuras. La documentación debe escribirse con tus casos de uso en mente, para proporcionar contexto a las decisiones de diseño.

Con el tiempo, tus decisiones de diseño evolucionarán y cambiarán. El historial de cambios proporciona el contexto que tus equipos necesitan para alinear las iniciativas, evitar la duplicación y medir los cambios de rendimiento de manera efectiva en el tiempo. Los registros de cambios son muy valiosos cuando incorporas un arquitecto de nube nuevo que aún no está familiarizado con el diseño, la estrategia o el historial de tu sistema actual.

El análisis de DORA encontró una clara vinculación entre la calidad de la documentación y el rendimiento organizativo, es decir, la capacidad de la organización para cumplir con sus objetivos de rendimiento y rentabilidad.

Simplifica tu diseño y usa servicios completamente administrados

La simplicidad es fundamental para el diseño. Si la arquitectura es demasiado compleja para comprender, será difícil implementar el diseño y administrarlo con el tiempo. Cuando sea posible, usa servicios completamente administrados para minimizar los riesgos, el tiempo y el esfuerzo asociados con la administración y el mantenimiento de los sistemas de referencia.

Si ya ejecutas las cargas de trabajo en producción, realiza pruebas con servicios administrados para ver cómo podrían ayudar a reducir las complejidades operativas. Si desarrollas cargas de trabajo nuevas, comienza de manera simple, establece un producto viable mínimo (MVP) y controla el impulso de realizar una ingeniería excesiva. Puedes identificar casos prácticos excepcionales, iterar y mejorar tus sistemas de forma incremental con el tiempo.

Separe su arquitectura

La investigación de DORA muestra que la arquitectura es un predictor importante para lograr la entrega continua. La separación es una técnica que se usa para separar tus aplicaciones y componentes de servicio en componentes más pequeños que pueden operar de forma independiente. Por ejemplo, puedes separar una pila de aplicaciones monolítica en componentes del servicio individuales. En una arquitectura con acoplamiento bajo, una aplicación puede ejecutar sus funciones de forma independiente, sin importar las dependencias.

Una arquitectura separada te brinda mayor flexibilidad para hacer lo siguiente:

  • Aplicar actualizaciones independientes
  • Aplicar controles de seguridad específicos
  • Establecer objetivos de confiabilidad para cada subsistema.
  • Supervisar el estado
  • Controlar los parámetros de rendimiento y costos de forma detallada

Puedes comenzar el proceso de desacoplar antes en tu fase de diseño o incorporarla como parte de las actualizaciones del sistema a medida que escalas.

Usa una arquitectura sin estado

Una arquitectura sin estado puede aumentar tanto la confiabilidad como la escalabilidad de tus aplicaciones.

Las aplicaciones con estado dependen de varias dependencias para realizar tareas, como el almacenamiento en caché local de datos. Las aplicaciones con estado a menudo requieren mecanismos adicionales para capturar el progreso y reiniciarse de forma correcta. Las aplicaciones sin estado pueden realizar tareas sin dependencias locales significativas mediante el uso de almacenamiento compartido o servicios almacenados en caché. Una arquitectura sin estado permite que tus aplicaciones escalen verticalmente con rapidez con dependencias de arranque mínimas. Las aplicaciones pueden resistir reinicios forzados, tener un tiempo de inactividad menor y proporcionar un mejor rendimiento a los usuarios finales.