Cuando migres de un entorno informático que no sea híbrido ni multinube a una arquitectura híbrida o multinube, primero debes tener en cuenta las limitaciones de tus aplicaciones actuales y cómo podrían provocar fallos en las aplicaciones. Esta consideración es más importante cuando tus aplicaciones o componentes de aplicaciones funcionan de forma distribuida en diferentes entornos. Una vez que hayas analizado tus limitaciones, elabora un plan para evitarlas o superarlas. Asegúrate de tener en cuenta las funciones únicas de cada entorno informático en una arquitectura distribuida.
Factores del diseño
Las siguientes consideraciones de diseño se aplican a los patrones de implementación distribuida. En función de la solución de destino y los objetivos de negocio, la prioridad y el efecto de cada consideración pueden variar.
Latencia
En cualquier patrón de arquitectura que distribuya componentes de aplicaciones (front-ends, back-ends o microservicios) en diferentes entornos informáticos, puede producirse latencia en la comunicación. Esta latencia se ve afectada por la conectividad de la red híbrida (Cloud VPN y Cloud Interconnect) y la distancia geográfica entre el sitio on‐premise y las regiones de la nube, o entre las regiones de la nube en una configuración multinube. Por lo tanto, es fundamental evaluar los requisitos de latencia de tus aplicaciones y su sensibilidad a los retrasos de la red. Las aplicaciones que pueden tolerar la latencia son más adecuadas para el despliegue distribuido inicial en un entorno híbrido o multinube.
Arquitectura de estado temporal frente a arquitectura de estado final
Para especificar las expectativas y las posibles implicaciones en cuanto a costes, escala y rendimiento, es importante analizar qué tipo de arquitectura necesitas y la duración prevista en la fase de planificación. Por ejemplo, si tienes previsto usar una arquitectura híbrida o multicloud durante mucho tiempo o de forma permanente, te recomendamos que utilices Cloud Interconnect. Para reducir los costes de transferencia de datos salientes y optimizar el rendimiento de la red de conectividad híbrida, Cloud Interconnect ofrece descuentos en los gastos de transferencia de datos salientes que cumplan las condiciones de la tarifa de transferencia de datos con descuento.
Fiabilidad
La fiabilidad es un factor importante a la hora de diseñar sistemas informáticos. La disponibilidad del tiempo de actividad es un aspecto esencial de la fiabilidad del sistema. En Google Cloud, puedes aumentar la resiliencia de una aplicación desplegando componentes redundantes de esa aplicación en varias zonas de una sola región1 o en varias regiones, con funciones de conmutación. La redundancia es uno de los elementos clave para mejorar la disponibilidad general de una aplicación. En el caso de las aplicaciones con una configuración distribuida en entornos híbridos y multinube, es importante mantener un nivel de disponibilidad coherente.
Para mejorar la disponibilidad de un sistema en un entorno local o en otros entornos de nube, plantéate qué redundancia de hardware o software (con mecanismos de conmutación por error) necesitas para tus aplicaciones y sus componentes. Lo ideal es que tengas en cuenta la disponibilidad de un servicio o una aplicación en los distintos componentes y la infraestructura de asistencia (incluida la disponibilidad de la conectividad híbrida) en todos los entornos. Este concepto también se conoce como disponibilidad compuesta de una aplicación o un servicio.
En función de las dependencias entre los componentes o servicios, la disponibilidad compuesta de una aplicación puede ser mayor o menor que la de un servicio o componente individual. Para obtener más información, consulta Disponibilidad compuesta: cómo calcular la disponibilidad general de la infraestructura de la nube.
Para alcanzar el nivel de fiabilidad del sistema que quieras, define métricas de fiabilidad claras y diseña aplicaciones que se recuperen automáticamente y resistan las interrupciones de forma eficaz en los distintos entornos. Para definir las formas adecuadas de medir la experiencia de cliente de tus servicios, consulta el artículo Define la fiabilidad en función de los objetivos de experiencia de usuario.
Conectividad híbrida y multinube
Los requisitos de la comunicación entre los componentes de las aplicaciones distribuidas deben influir en la selección de una opción de conectividad de red híbrida. Cada opción de conectividad tiene sus ventajas e inconvenientes, así como factores específicos que se deben tener en cuenta, como el coste, el volumen de tráfico, la seguridad, etc. Para obtener más información, consulta la sección Consideraciones sobre el diseño de la conectividad.
Facilidad de gestión
Las herramientas de gestión y monitorización coherentes y unificadas son esenciales para que las configuraciones híbridas y multinube tengan éxito (con o sin portabilidad de cargas de trabajo). A corto plazo, estas herramientas pueden aumentar los costes de desarrollo, pruebas y operaciones. Técnicamente, cuantos más proveedores de servicios en la nube uses, más compleja será la tarea de gestionar tus entornos. La mayoría de los proveedores de nube pública no solo ofrecen distintas funciones, sino también diferentes herramientas, acuerdos de nivel de servicio y APIs para gestionar los servicios en la nube. Por lo tanto, sopesa las ventajas estratégicas de la arquitectura seleccionada frente a la complejidad a corto plazo y las ventajas a largo plazo.
Coste
Cada proveedor de servicios en la nube de un entorno multinube tiene sus propias métricas y herramientas de facturación. Para mejorar la visibilidad y unificar los paneles de control, te recomendamos que uses herramientas de gestión y optimización de costes multicloud. Por ejemplo, al crear soluciones centradas en la nube en varios entornos de nube, los productos, los precios, los descuentos y las herramientas de gestión de cada proveedor pueden generar incoherencias en los costes entre esos entornos.
Te recomendamos que utilices un único método bien definido para calcular los costes totales de los recursos de la nube y que proporciones visibilidad de los costes. La visibilidad de los costes es esencial para optimizarlos. Por ejemplo, si combinas los datos de facturación de los proveedores de servicios en la nube que usas y utilizas el Google Cloud bloque de gestión de costes en la nube de Looker, puedes crear una vista centralizada de tus costes multicloud. Esta vista puede ayudarte a obtener una vista de informes consolidada de tu gasto en varias nubes. Para obtener más información, consulta el artículo Estrategia para optimizar de forma eficaz la gestión de los costes de facturación en la nube.
También te recomendamos que uses las prácticas de FinOps para que los costes sean visibles. Como parte de una práctica de FinOps sólida, un equipo central puede delegar la toma de decisiones sobre la optimización de recursos en cualquier otro equipo que participe en un proyecto para fomentar la responsabilidad individual. En este modelo, el equipo central debe estandarizar el proceso, los informes y las herramientas de optimización de costes. Para obtener más información sobre los diferentes aspectos de la optimización de costes y las recomendaciones que debe tener en cuenta, consulte Google Cloud Well-Architected Framework: Cost optimization (Marco de trabajo Well-Architected: optimización de costes).
Migración de datos
La migración de datos es un factor importante que se debe tener en cuenta en la estrategia híbrida y multinube, así como en la planificación de la arquitectura, sobre todo en los sistemas distribuidos. Las empresas deben identificar sus diferentes casos prácticos, los datos que los respaldan y cómo se clasifican los datos (en el caso de los sectores regulados). También deben tener en cuenta cómo pueden afectar el almacenamiento, el uso compartido y el acceso a los datos de los sistemas distribuidos en los distintos entornos al rendimiento de las aplicaciones y a la coherencia de los datos. Estos factores pueden influir en la aplicación y en la arquitectura de la canalización de datos. El conjunto completo de opciones de movimiento de datos deGoogle Cloudpermite a las empresas satisfacer sus necesidades específicas y adoptar arquitecturas híbridas y multinube sin sacrificar la sencillez, la eficiencia ni el rendimiento.
Seguridad
Al migrar aplicaciones a la nube, es importante tener en cuenta las funciones de seguridad de la nube, como la coherencia, la observabilidad y la visibilidad de seguridad unificada. Cada proveedor de nube pública tiene su propio enfoque, sus prácticas recomendadas y sus funciones de seguridad. Es importante analizar y alinear estas funciones para crear una arquitectura de seguridad estándar y funcional. Los controles de gestión de identidades y accesos, el cifrado de datos, el análisis de vulnerabilidades y el cumplimiento de las normativas del sector también son aspectos importantes de la seguridad en la nube.
Cuando planifiques una estrategia de migración, te recomendamos que analices los aspectos que hemos mencionado anteriormente. Pueden ayudarte a minimizar las probabilidades de introducir complejidades en la arquitectura a medida que crecen tus aplicaciones o volúmenes de tráfico. Además, diseñar y crear una zona de aterrizaje es casi siempre un requisito previo para desplegar cargas de trabajo empresariales en un entorno de nube. Una zona de aterrizaje ayuda a tu empresa a desplegar, usar y escalar servicios en la nube de forma más segura en varias áreas, e incluye diferentes elementos, como identidades, gestión de recursos, seguridad y redes. Para obtener más información, consulta el artículo sobre el diseño de la zona de aterrizaje en Google Cloud.
En los siguientes documentos de esta serie se describen otros patrones de arquitectura distribuida:
- Patrón híbrido por niveles
- Patrón multinube con particiones
- Patrón híbrido y multinube de analíticas
- Patrón híbrido de perímetro
-
Para obtener más información sobre las consideraciones específicas de cada región, consulta el artículo sobre geografía y regiones. ↩