Otros factores que considerar

Last reviewed 2023-12-14 UTC

En este documento, se destacan las consideraciones de diseño principales que juegan un rol fundamental en la configuración de tu arquitectura híbrida y de múltiples nubes en general. Analiza y evalúa de manera integral estas consideraciones en toda la arquitectura de tu solución, abarcando todas las cargas de trabajo, no solo las específicas.

Refactorizar

En una migración de refactorización, debes modificar las cargas de trabajo para aprovechar las capacidades de la nube y no solo para que funcionen en el entorno nuevo. Puedes mejorar cada carga de trabajo para el rendimiento, las funciones, el costo y la experiencia del usuario. Como se destaca en Refactorización: mover y mejorar, algunas situaciones de refactorización te permiten modificar las cargas de trabajo antes de migrarlas a la nube. Este enfoque de refactorización ofrece los siguientes beneficios, en especial si tu objetivo es compilar una arquitectura híbrida como una arquitectura orientada a largo plazo:

  • Puedes mejorar el proceso de implementación.
  • Puedes acelerar la cadencia de lanzamiento y acortar los ciclos de respuesta invirtiendo en la infraestructura y las herramientas de integración continua/implementación continua (CI/CD).
  • Puedes usar el refactorización como base para compilar y administrar la arquitectura híbrida con portabilidad de aplicaciones.

Para que funcione bien, este enfoque suele requerir ciertas inversiones en infraestructura y herramientas locales. Por ejemplo, configurar un Container Registry local y aprovisionar clústeres de Kubernetes para crear contenedores para aplicaciones. La edición Enterprise de Google Kubernetes Engine (GKE) puede ser útil en este enfoque para entornos híbridos. En la siguiente sección, se incluye más información sobre GKE Enterprise. También puedes consultar la arquitectura de referencia del entorno híbrido de GKE Enterprise para obtener más detalles.

Portabilidad de la carga de trabajo

Con las arquitecturas híbridas y multinube, es posible que desees poder cambiar las cargas de trabajo entre los entornos de computación que alojan tus datos. Para permitir el movimiento fluido de las cargas de trabajo entre entornos, ten en cuenta los siguientes factores:

  • Puedes mover una aplicación de un entorno de procesamiento a otro sin modificar significativamente la aplicación y su modelo operativo:
    • La implementación y la administración de la aplicación son coherentes en todos los entornos de computación.
    • La visibilidad, la configuración y la seguridad son coherentes en todos los entornos de procesamiento.
  • La capacidad de hacer que una carga de trabajo sea portátil no debe entrar en conflicto con que la carga de trabajo sea nativa de la nube.

Automatización de la infraestructura

La automatización de la infraestructura es esencial para la portabilidad en las arquitecturas híbridas y de múltiples nubes. Un enfoque común para automatizar la creación de infraestructura es a través de la infraestructura como código (IaC). La IaC implica administrar tu infraestructura en archivos en lugar de configurar recursos de forma manual, como una VM, un grupo de seguridad o un balanceador de cargas, en una interfaz de usuario. Terraform es una herramienta de IaC popular para definir recursos de infraestructura en un archivo. Terraform también te permite automatizar la creación de esos recursos en entornos heterogéneos.

Para obtener más información sobre las funciones principales de Terraform que pueden ayudarte a automatizar el aprovisionamiento y la administración de recursos de Google Cloud , consulta plantillas y módulos de Terraform para Google Cloud.

Puedes usar herramientas de administración de configuración, como Ansible, Puppet o Chef, para establecer un proceso común de implementación y configuración. Otra alternativa es usar una herramienta de creación de imágenes como Packer para crear imágenes de VM para diferentes plataformas. Con un solo archivo de configuración compartido, puedes usar Packer y Cloud Build para crear una imagen de VM para usar en Compute Engine. Por último, puedes usar soluciones como Prometheus y Grafana para garantizar la supervisión coherente en los entornos.

En función de estas herramientas, puedes combinar una cadena de herramientas común, como se ilustra en el siguiente diagrama lógico. Esta cadena de herramientas común abstrae las diferencias entre los entornos de computación. También te permite unificar el aprovisionamiento, la implementación, la administración y la supervisión.

Una cadena de herramientas permite la portabilidad de las aplicaciones.

Aunque una cadena de herramientas común puede ayudarte a lograr la portabilidad, esta presenta varias de las siguientes deficiencias:

  • El uso de VMs como base común puede dificultar la implementación de aplicaciones verdaderamente centradas en la nube. Además, usar solo VMs puede impedir que use servicios administrados en la nube. Es posible que pierdas oportunidades para reducir la sobrecarga administrativa.
  • El desarrollo y mantenimiento de una cadena de herramientas común genera gastos de sobrecarga y operativos.
  • A medida que la cadena de herramientas se expande, puede desarrollar complejidades únicas adaptadas a las necesidades específicas de tu empresa. Esta mayor complejidad puede contribuir al aumento de los costos de capacitación.

Antes de decidir desarrollar herramientas y automatización, explora los servicios administrados que ofrece tu proveedor de servicios en la nube. Cuando tu proveedor ofrece servicios administrados que admiten el mismo caso de uso, puedes abstraer parte de su complejidad. De esta manera, puedes enfocarte en la carga de trabajo y la arquitectura de la aplicación en lugar de la infraestructura subyacente.

Por ejemplo, puedes usar el modelo de recursos de Kubernetes para automatizar la creación de clústeres de Kubernetes con un enfoque de configuración declarativa. Puedes usar Deployment Manager Convert para convertir tus configuraciones y plantillas de Deployment Manager a otros formatos de configuración declarativa que admiten Google Cloud (como Terraform y el modelo de recursos de Kubernetes) para que sean portátiles cuando los publiques.

También puedes considerar automatizar la creación de proyectos y la creación de recursos dentro de esos proyectos. Esta automatización puede ayudarte a adoptar un enfoque de infraestructura como código para el aprovisionamiento de proyectos.

Contenedores y Kubernetes

El uso de capacidades administradas en la nube ayuda a reducir la complejidad de compilar y mantener una cadena de herramientas personalizada para lograr la automatización y portabilidad de la carga de trabajo. Sin embargo, el uso exclusivo de VMs como base común dificulta la implementación de aplicaciones realmente centradas en la nube. Una solución es usar contenedores y Kubernetes.

Los contenedores ayudan a que el software se ejecute de manera confiable cuando lo mueves de un entorno a otro. Debido a que los contenedores desvinculan las aplicaciones de la infraestructura subyacente del host, facilitan la implementación en entornos de procesamiento, como los híbridos y de múltiples nubes.

Kubernetes se encarga de la organización, la implementación, el escalamiento y la administración de tus aplicaciones en contenedores. Es de código abierto y se rige por Cloud Native Computing Foundation. El uso de Kubernetes proporciona los servicios que forman la base de una aplicación que prioriza la nube. Debido a que puedes instalar y ejecutar Kubernetes en muchos entornos de computación, también puedes usarlo para establecer una capa de entorno de ejecución común en los entornos de computación:

  • Kubernetes proporciona los mismos servicios y las API en una nube o en un entorno de computación privado. Además, el nivel de abstracción es mucho mayor que cuando se trabaja con VM, lo que generalmente se traduce en un menor trabajo de base y una mayor productividad de los desarrolladores.
  • A diferencia de una cadena de herramientas personalizadas, Kubernetes se utiliza ampliamente para el desarrollo y la administración de aplicaciones, por lo que puedes aprovechar la experiencia, la documentación y el soporte de terceros existentes.
  • Kubernetes admite todas las implementaciones de contenedores que cumplan con los siguientes requisitos:

Cuando una carga de trabajo se ejecuta en Google Cloud, puedes evitar el esfuerzo de instalar y operar Kubernetes mediante el uso de una plataforma administrada de Kubernetes, como Google Kubernetes Engine (GKE). De esta manera, el personal de operaciones puede cambiar su enfoque de la compilación y el mantenimiento de la infraestructura a la compilación y el mantenimiento de aplicaciones.

También puedes usar Autopilot, un modo de operación de GKE que administra la configuración de tu clúster, incluidos los nodos, el escalamiento, la seguridad y otros parámetros de configuración ya establecidos. Cuando uses GKE Autopilot, ten en cuenta tus requisitos de escalamiento y sus límites de escalamiento.

Técnicamente, puedes instalar y ejecutar Kubernetes en muchos entornos de computación para establecer una capa de entorno de ejecución común. Sin embargo, en la práctica, compilar y operar una arquitectura de este tipo puede generar complejidad. La arquitectura se vuelve aún más compleja cuando necesitas un control de seguridad a nivel del contenedor (malla de servicios).

Para simplificar la administración de implementaciones de varios clústeres, puedes usar GKE Enterprise para ejecutar aplicaciones modernas en cualquier lugar a gran escala. GKE incluye potentes componentes de código abierto administrados para proteger las cargas de trabajo, aplicar políticas de cumplimiento y proporcionar una observabilidad y solución de problemas de red profundas.

Como se ilustra en el siguiente diagrama, usar GKE Enterprise significa que puedes operar aplicaciones de varios clústeres como flotas.

Diagrama de pila que muestra las oportunidades de administración de flotas que ofrece GKE Enterprise.

GKE Enterprise ayuda con las siguientes opciones de diseño para admitir arquitecturas híbridas y de múltiples nubes:

  • Diseña y compila experiencias similares a la nube a nivel local o soluciones unificadas para la transición de aplicaciones al entorno híbrido de GKE Enterprise. Para obtener más información, consulta la arquitectura de referencia del entorno híbrido de GKE Enterprise.

  • Diseña y crea una solución para resolver la complejidad de múltiples nubes con una postura coherente de administración, operaciones y seguridad con GKE Multicloud. Para obtener más información, consulta la documentación de GKE Multi-Cloud.

GKE Enterprise también proporciona agrupaciones lógicas de entornos similares con seguridad, configuración y administración de servicios coherentes. Por ejemplo, GKE Enterprise potencia la arquitectura distribuida de confianza cero. En una arquitectura distribuida de confianza cero, los servicios que se implementan de forma local o en otro entorno de nube pueden comunicarse entre entornos a través de comunicaciones de servicio a servicio seguras de mTLS de extremo a extremo.

Consideraciones sobre la portabilidad de la carga de trabajo

Kubernetes y GKE Enterprise proporcionan una capa de abstracción para las cargas de trabajo que puede ocultar las muchas complejidades y diferencias entre los entornos de computación. En la siguiente lista, se describen algunas de esas abstracciones:

  • Una aplicación puede ser portátil para un entorno diferente con cambios mínimos, pero eso no implica que se desempeñará de la misma manera en ambos entornos.
    • Las diferencias en la infraestructura de computación subyacente, las capacidades de seguridad de la infraestructura o la infraestructura de red, junto con la proximidad a servicios dependientes, pueden dar lugar a un rendimiento sustancialmente diferente.
  • Mover una carga de trabajo entre los entornos de computación también puede requerir mover datos.
    • Los diferentes entornos pueden tener diferentes servicios y facilidades de almacenamiento y administración de datos.
  • El comportamiento y el rendimiento de los balanceadores de cargas aprovisionados con Kubernetes o GKE Enterprise pueden diferir entre los entornos.

Traslado de datos

Debido a que puede ser complejo mover, compartir y acceder a datos a gran escala entre los entornos de procesamiento, las empresas a nivel empresarial pueden dudar en crear una arquitectura híbrida o multinube. Esta indecisión podría aumentar si ya almacenan la mayor parte de sus datos de forma local o en una nube.

Sin embargo, las diversas opciones de traslado de datos que ofrecen Google Cloud, proporcionan a las empresas un conjunto integral de soluciones para ayudar a mover, integrar y transformar sus datos. Estas opciones ayudan a las empresas a almacenar, compartir y acceder a datos en diferentes entornos de una manera que cumpla con sus casos de uso específicos. Esa capacidad facilita, en última instancia, que los tomadores de decisiones empresariales y tecnológicas adopten arquitecturas híbridas y de múltiples nubes.

El movimiento de datos es una consideración importante para la estrategia y la planificación de la arquitectura de las nubes híbridas y de múltiples nubes. Tu equipo debe identificar los diferentes casos de uso de tu empresa y los datos que los potencian. También debes tener en cuenta el tipo de almacenamiento, la capacidad, la accesibilidad y las opciones de movimiento.

Si una empresa tiene una clasificación de datos para industrias reguladas, esa clasificación puede ayudar a identificar las ubicaciones de almacenamiento y las restricciones de movimiento de datos entre regiones para ciertas clases de datos. Para obtener más información, consulta Protección de datos sensibles. La Protección de datos sensibles es un servicio completamente administrado diseñado para ayudarte a descubrir, clasificar y proteger tus recursos de datos.

Para explorar el proceso, desde la planificación de una transferencia de datos hasta el uso de las prácticas recomendadas para implementar un plan, consulta Migración a Google Cloud: Transfiere tus conjuntos de datos grandes.

Seguridad

A medida que las organizaciones adoptan arquitecturas híbridas y multinube, su superficie de ataque puede aumentar según la forma en que se distribuyen sus sistemas y datos en diferentes entornos. Si se combina con el panorama de amenazas que evoluciona constantemente, el aumento de las superficies de ataque puede aumentar el riesgo de acceso no autorizado, pérdida de datos y otros incidentes de seguridad. Ten en cuenta la seguridad con cuidado cuando planifiques e implementes estrategias híbridas o de múltiples nubes.

Para obtener más información, consulta Administración de la superficie de ataque para Google Cloud.

Cuando se diseña una arquitectura híbrida, no siempre es técnicamente factible o viable extender los enfoques de seguridad locales a la nube. Sin embargo, muchas de las capacidades de seguridad de las redes de los dispositivos de hardware son funciones centradas en la nube y funcionan de forma distribuida. Para obtener más información sobre las capacidades de seguridad de la red centradas en la nube de Google Cloud, consulta Seguridad de la red en la nube.

Las arquitecturas híbridas y de múltiples nubes pueden presentar desafíos de seguridad adicionales, como la coherencia y la observabilidad. Cada proveedor de servicios en la nube pública tiene su propio enfoque de seguridad, incluidos diferentes modelos, prácticas recomendadas, capacidades de seguridad de la infraestructura y las aplicaciones, obligaciones de cumplimiento y hasta los nombres de los servicios de seguridad. Estas inconsistencias pueden aumentar el riesgo de seguridad. Además, el modelo de responsabilidad compartida de cada proveedor de servicios en la nube puede diferir. Es fundamental identificar y comprender la demarcación exacta de las responsabilidades en una arquitectura de múltiples nubes.

La observabilidad es clave para obtener estadísticas y métricas de los diferentes ambientes. En una arquitectura multinube, cada nube suele proporcionar herramientas para supervisar la postura de seguridad y los parámetros de configuración incorrectos. Sin embargo, el uso de estas herramientas genera una visibilidad fragmentada, lo que impide crear una inteligencia de amenazas avanzada en todo el entorno. Como resultado, el equipo de seguridad debe cambiar entre herramientas y paneles para mantener la seguridad de la nube. Sin una visibilidad de seguridad de extremo a extremo para los entornos híbridos y de múltiples nubes, es difícil priorizar y mitigar las vulnerabilidades.

Para obtener la visibilidad y la postura completas de todos tus entornos, prioriza tus vulnerabilidades y mitiga las que identifiques. Recomendamos un modelo de visibilidad centralizado. Un modelo de visibilidad centralizado evita la necesidad de correlación manual entre diferentes herramientas y paneles de diferentes plataformas. Para obtener más información, consulta Patrones de registro y supervisión de nubes híbridas y múltiples.

Como parte de tu planificación para mitigar los riesgos de seguridad y, además, implementar cargas de trabajo enGoogle Cloud, y para ayudarte a planificar y diseñar tu solución en la nube para lograr tus objetivos de seguridad y cumplimiento, explora el centro de prácticas recomendadas de seguridad y el plano de bases empresariales de Google Cloud.

Los objetivos de cumplimiento pueden variar, ya que están influenciados por las reglamentaciones específicas de la industria y los diversos requisitos reglamentarios de diferentes regiones y países. Para obtener más información, consulta el Centro de recursos de cumplimiento de Google Cloud. Los siguientes son algunos de los principales enfoques recomendados para diseñar una arquitectura híbrida y de múltiples nubes segura:

  • Desarrolla una estrategia y una arquitectura de seguridad en la nube unificadas y personalizadas. Las estrategias de seguridad híbridas y multinube deben adaptarse a las necesidades y los objetivos específicos de tu organización.

    Es fundamental comprender la arquitectura y el entorno de destino antes de implementar controles de seguridad, ya que cada entorno puede usar diferentes funciones, parámetros de configuración y servicios.

  • Considera una arquitectura de seguridad unificada en entornos híbridos y de múltiples nubes.

  • Estandarizar el diseño y las implementaciones de la nube, en especial el diseño y las capacidades de seguridad De esta manera, se puede mejorar la eficiencia y permitir una administración y herramientas unificadas.

  • Usa varios controles de seguridad.

    Por lo general, ningún control de seguridad puede abordar de manera adecuada todos los requisitos de protección de seguridad. Por lo tanto, las organizaciones deben usar una combinación de controles de seguridad en un enfoque de defensa en capas, también conocido como defensa en profundidad.

  • Supervisar y mejorar de forma continua las posturas de seguridad: Tu organización debe supervisar sus diferentes entornos en busca de amenazas y vulnerabilidades de seguridad. También debe intentar mejorar continuamente su postura de seguridad.

  • Considera usar la administración de la postura de seguridad en la nube (CSPM) para identificar y remediar los errores de configuración de seguridad y las amenazas de seguridad cibernética. La CSPM también proporciona evaluaciones de vulnerabilidades en entornos híbridos y de múltiples nubes.

Security Command Center es una solución integrada de seguridad y administración de riesgos para Google Cloudque ayuda a identificar configuraciones incorrectas, vulnerabilidades y mucho más. Security Health Analytics es una herramienta de análisis de evaluación de vulnerabilidades administrada. Es una función de Security Command Center que identifica riesgos y vulnerabilidades de seguridad en tu entorno deGoogle Cloud y proporciona recomendaciones para corregirlos.

Mandiant Attack Surface Management para Google Cloud permite que tu organización vea mejor los activos de su entorno de nube múltiple o híbrida. Descubre automáticamente recursos de varios proveedores de servicios en la nube, DNS y la superficie de ataque externa extendida para brindarle a tu empresa una comprensión más profunda de su ecosistema. Usa esta información para priorizar la corrección de las vulnerabilidades y exposiciones que presentan el mayor riesgo.

  • Solución de administración de información y eventos de seguridad (SIEM) en la nube: Ayuda a recopilar y analizar registros de seguridad de entornos híbridos y multinube para detectar amenazas y responder a ellas. El SIEM de Google Security Operations de Google Cloud ayuda a proporcionar información de seguridad y administración de eventos mediante la recopilación, el análisis, la detección y la investigación de todos tus datos de seguridad en un solo lugar.