En este documento, encontrarás ayuda para planificar, diseñar e implementar el proceso de migración de tus cargas de trabajo a Google Cloud. Mover apps de un entorno a otro es una tarea difícil, incluso para equipos experimentados, por lo que debes planificar y ejecutar la migración con cuidado.
Este documento es parte de la siguiente serie de varias partes sobre la migración a Google Cloud:
- Migra a Google Cloud: comienza ahora (este documento)
- Migra a Google Cloud: evalúa y descubre tus cargas de trabajo
- Migra a Google Cloud: construye tu base
- Migra a Google Cloud: transfiere los conjuntos de datos grandes
- Migra a Google Cloud: implementa las cargas de trabajo
- Migra a Google Cloud: Migra de implementaciones manuales a implementaciones automatizadas y alojadas en contenedores
- Migra a Google Cloud: optimiza tu entorno
- Migra a Google Cloud: prácticas recomendadas para validar un plan de migración
- Migra a Google Cloud: Minimiza los costos
Este documento es útil si planeas hacer una migración de un entorno local, un entorno de hosting privado o algún otro proveedor de servicios en la nube a Google Cloud, o si evalúas la posibilidad de migrar y deseas explorar cómo podría ser.
Comienza el proceso
Cuando planifiques tu migración a Google Cloud, comienza por definir los entornos que están involucrados en la migración. Tu punto de partida puede ser un entorno local, un entorno de hosting privado o algún otro entorno de nube pública.
En un entorno local, tienes propiedad y responsabilidad absolutas. Conservas el control total sobre todos los aspectos del entorno, como el enfriamiento, la seguridad física y el mantenimiento del hardware.
En un entorno de hosting privado, como una instalación de colocación, debes subcontratar parte de la infraestructura física y su administración a un tercero. Por lo general, esta infraestructura se comparte entre los clientes. En un entorno de hosting privado, no tienes que administrar los servicios de seguridad ni la seguridad física. Algunos entornos de hosting te permiten administrar parte del hardware físico como los servidores, bastidores y dispositivos de red, mientras que otros administran ese hardware por ti. Por lo general, los cables de red y de alimentación se proporcionan como un servicio para que no tengas que administrarlos. Tienes el control total sobre los hipervisores que virtualizan los recursos físicos, la infraestructura virtualizada que aprovisionas y las cargas de trabajo que ejecutas en esa infraestructura.
Una ventaja del entorno de nube pública es que no tienes que administrar toda la pila de recursos tú mismo. Puedes enfocarte en el aspecto de la pila que consideres más valioso. Al igual que en un entorno de hosting privado, no tienes que administrar la infraestructura física subyacente. Además, no es necesario que administres el hipervisor de virtualización de recursos. Puedes compilar una infraestructura virtualizada y, luego, implementar tus cargas de trabajo en esta infraestructura nueva. También puedes comprar servicios completamente administrados, en los que solo te debes encargar de tus cargas de trabajo y transferir la carga operativa de administrar entornos de ejecución.
En este documento, se evalúan los siguientes aspectos para cada entorno y, también, quién debe proporcionar y administrar los servicios relevantes:
Recursos | Entorno local | Entorno de hosting privado | Entorno de nube pública |
---|---|---|---|
Seguridad física y otros tipos de seguridad | Tú | Proveedor de servicios | Proveedor de servicios |
Cables de red y de alimentación | Tú | Proveedor de servicios | Proveedor de servicios |
Hardware (incluido el mantenimiento) | Tú | Depende del proveedor de servicios | Proveedor de servicios |
Plataforma de virtualización | Tú | Tú | Proveedor de servicios |
Recursos de la app | Tú | Tú | Tú (con el tiempo, aprovecharás los servicios completamente administrados) |
En este documento, el entorno de destino es Google Cloud.
Después de definir tus entornos de inicio y destino, define los tipos de cargas de trabajo y los procesos operativos relacionados que están dentro del alcance de la migración. En este documento se consideran dos tipos de operaciones y de cargas de trabajo: heredadas y optimizadas para la nube.
Las cargas de trabajo y operaciones heredadas se desarrollan sin tener en cuenta los entornos de nube. Estas cargas de trabajo y operaciones pueden ser difíciles de modificar, y su ejecución y mantenimiento pueden ser costosos, porque no suelen admitir ningún tipo de escalabilidad.
Las cargas de trabajo y las operaciones optimizadas para la nube son portátiles, accesibles, seguras y escalables de forma nativa. Las cargas de trabajo y las operaciones pueden aumentar la productividad y la agilidad de los desarrolladores, ya que estos pueden enfocarse en las cargas de trabajo reales, en lugar de invertir su esfuerzo en administrar entornos de ejecución y desarrollo, o de lidiar con procesos de implementación manuales y complejos. Google Cloud también tiene un modelo de responsabilidad compartida de seguridad. Google Cloud se encarga de la seguridad física y la seguridad de la infraestructura, y tú eres responsable de la seguridad de las cargas de trabajo que implementas en la infraestructura.
Si se tienen en cuenta estos tipos de entornos y cargas de trabajo, tu situación inicial es una de las siguientes:
- Tienes un entorno de hosting local o privado con cargas de trabajo y operaciones heredadas.
- Tienes un entorno de hosting local o privado con cargas de trabajo y operaciones optimizadas para la nube.
- Tienes un entorno de hosting privado o de nube pública con cargas de trabajo y operaciones heredadas.
- Tienes un entorno de hosting privado o de nube pública con operaciones y cargas de trabajo optimizadas para la nube.
El proceso de migración depende de tu punto de partida.
La migración de una carga de trabajo desde un entorno local heredado o un entorno de hosting privado a un entorno optimizado para la nube, como una nube pública, puede ser difícil y riesgosa. Las migraciones exitosas cambian la carga de trabajo para migrar lo menos posible durante las operaciones de migración. Para mover apps locales heredadas a la nube, se suelen requerir varios pasos de migración.
Tipos de migraciones
En este documento se definen los siguientes tipos principales de migraciones:
- Vuelve a alojar: lift‑and‑shift
- Rediseña la plataforma: lift‑and‑optimize
- Reestructura: realiza traslados y mejoras
- Reestructuración: continúa con la modernización
- Quitar y reemplazar (a veces llamado extraer y reemplazar)
- Recompra
En las secciones siguientes, cada tipo de migración se define con ejemplos de cuándo usar cada uno.
Vuelve a alojar: lift‑and‑shift
En una migración de host nuevo, mueves las cargas de trabajo de un entorno de origen a un entorno de destino con cero o pocas modificaciones y refactorizaciones. Las modificaciones que apliques a las cargas de trabajo que se migrarán son los cambios mínimos que debes realizar a fin de que las cargas de trabajo funcionen en el entorno de destino.
Una migración de cambio de host es ideal cuando una carga de trabajo puede funcionar tal como está en el entorno de destino o cuando hay poca o ninguna necesidad empresarial de cambios. Este tipo de migración es el que requiere menos tiempo porque la cantidad de refactorización se mantiene al mínimo.
Es posible que existan problemas técnicos que requieran una migración de host de nuevo. Si no puedes refactorizar una carga de trabajo para migrar y no retirarla, debes usar una migración de host. Por ejemplo, puede ser difícil o imposible modificar el código fuente de la carga de trabajo, o puede que el proceso de compilación no sea sencillo, por lo que no se podrían producir nuevos artefactos después de refactorizar el código fuente.
Las migraciones de host son las más fáciles de realizar porque tu equipo puede seguir usando el mismo conjunto de herramientas y habilidades que usaban antes. Estas migraciones también admiten software listo para usar. Debido a que migras cargas de trabajo existentes con una refactorización mínima, las migraciones de cambio de host suelen ser las más rápidas, en comparación con las migraciones de refactorización o compilación nueva.
Sin embargo, después de una migración de host, las cargas de trabajo que se ejecutan en el entorno de destino no están optimizadas para la nube. Estas cargas de trabajo no aprovechan al máximo las funciones de Cloud Platform, como la escalabilidad horizontal, los precios detallados y los servicios altamente administrados.
Rediseña la plataforma: lift‑and‑optimize
En una migración de plataforma, levantas las cargas de trabajo existentes y, luego, las optimizas para el nuevo entorno de nube.
Una migración de plataforma es mejor para las organizaciones que desean aprovechar todas las competencias principales de la nube. Estas competencias incluyen informática elástica, redundancia, rendimiento mejorado y seguridad.
Por ejemplo, puedes cambiar la plataforma de una carga de trabajo a la nube para aprovechar una arquitectura de microservicios basada en la nube o contenedores en Google Kubernetes Engine. Estas cargas de trabajo tendrán un mayor rendimiento y más eficiencia en la nube.
Sin embargo, las migraciones de la plataforma incluso requieren de más trabajo que volver a alojarlas. La nueva plataforma en la nube tendrá una base de código subyacente diferente, que requiere varias rondas de prueba para garantizar que todo se ejecute en su nivel óptimo.
Reestructura: realiza traslados y mejoras
En una migración de refactorización, debes modificar las cargas de trabajo para aprovechar las capacidades de la nube y no solo modificar las cargas de trabajo a fin de que funcionen en el entorno nuevo. Puedes mejorar cada carga de trabajo para el rendimiento, las funciones, el costo y la experiencia del usuario.
Puedes modificar las cargas de trabajo mientras las migras a la nube o incluso antes de migrarlas. Por ejemplo, si no tienes experiencia sustancial con las migraciones a la nube, es posible que prefieras modificar las cargas de trabajo mientras realizas la migración. Sin embargo, si tienes experiencia en la migración a la nube, es posible que ya tengas una idea de las modificaciones que necesitan las cargas de trabajo para aprovechar al máximo las capacidades de la nube.
Si la arquitectura o infraestructura actual de una app no es compatible con el entorno de destino tal como es, se necesita cierta cantidad de refactorización para superar estos límites.
Otro caso en el que se debe elegir el enfoque de la refactorización es cuando se necesita una actualización importante de la carga de trabajo, además de las actualizaciones que necesitas hacer para migrar.
Las migraciones de refactorizaciones permiten que la app aproveche las funciones de una plataforma en la nube, como la escalabilidad y la alta disponibilidad. También puedes diseñar la mejora para aumentar la portabilidad de la app.
Sin embargo, las migraciones de refactorización tardan más que volver a alojar las migraciones porque las cargas de trabajo deben refactorizarse para que la app migre.
Una migración de refactorización también requiere que domines habilidades nuevas.
Reestructuración: continúa con la modernización
Las migraciones de rediseño son similares a las migraciones de refactorización. Sin embargo, en lugar de reestructurar cómo funciona el código de carga de trabajo, volver a diseñar las migraciones cambia la forma en que funciona ese código. Esos cambios de código optimizan la carga de trabajo y aprovechan las propiedades optimizadas en la nube, como la escalabilidad, la seguridad y la agilidad. Por ejemplo, una migración de rediseño puede tomar una carga de trabajo monolítica grande y convertirla en varios microservicios independientes que implementas en Google Cloud.
Una migración de rediseño es más compleja que una migración de refactorización, por lo que requiere más tiempo y esfuerzo. Una migración de rediseño también puede introducir errores o problemas de seguridad en las nuevas cargas de trabajo. Por lo tanto, una migración de rediseño requiere varias rondas de prueba para garantizar que todo se ejecute en su nivel óptimo.
Vuelve a compilar: quita y reemplaza
En una migración del tipo reconstrucción, se retira una aplicación existente y se la rediseña y reescribe por completo como aplicación optimizada para la nube.
Si la aplicación actual no cumple sus objetivos (por ejemplo, no desea mantenerla, es muy costoso migrar con uno de los enfoques mencionados anteriormente o no se admite en Google Cloud), puede hacer una migración del tipo extraer y reemplazar.
Las migraciones de rediseño permiten que tu app aproveche al máximo las funciones de Google Cloud, como la escalabilidad horizontal, los servicios altamente administrados y la alta disponibilidad. Debido a que vuelves a escribir la app desde cero, también debes quitar la deuda técnica de la versión heredada existente.
Sin embargo, las migraciones de recompilación pueden llevar más tiempo que volver a alojar o refactorizar migraciones. Además, este tipo de migración no se recomienda en el caso de apps listas para usar porque requiere que se reescriba la app. Debes evaluar el tiempo y el esfuerzo adicionales de rediseñar y reescribir la app como parte de su ciclo de vida.
Una migración de recompilación también requiere habilidades nuevas. Debes usar cadenas de herramientas nuevas para aprovisionar y configurar el entorno nuevo y, luego, implementar la app en ese entorno.
Recompra
Una migración de compra nueva es cuando pasas de una carga de trabajo local comprada a un equivalente de software como servicio (SaaS) alojado en la nube. Por ejemplo, puedes pasar del software de colaboración local y del almacenamiento local a Google Workspace.
Desde la perspectiva de los recursos, una migración de recompra puede ser mucho más fácil que refactorizar, volver a compilar o rediseñar la arquitectura. Sin embargo, una migración de recompra puede ser mucho más costosa y es posible que no obtengas las funciones detalladas de controlar tus propios entornos de nube.
Marco de trabajo para la adopción de Google Cloud
Antes de comenzar la migración, debes evaluar la madurez de tu organización con respecto a la adopción de tecnologías de nube. El marco de trabajo para la adopción de Google Cloud funciona como un mapa que determina dónde se encuentran ahora las capacidades de tecnología de información de tu empresa y como una guía de dónde quieres estar.
Puedes usar este marco de trabajo a fin de evaluar la preparación de tu organización para Google Cloud, determinar qué debes hacer a fin de compensar las diferencias y desarrollar competencias nuevas, como se ilustra en el diagrama siguiente.
En el marco de trabajo, se evalúan los cuatro temas siguientes:
- Aprenda. La calidad y el escalamiento de tus programas de aprendizaje
- Liderazgo. La medida en la que tus departamentos de TI cuentan con el respaldo de un mandato del personal directivo para migrar a Google Cloud
- Escala. La medida en la que usas los servicios optimizados para la nube y la cantidad de automatización operativa que tienes.
- Protección. La capacidad de proteger tu entorno actual de accesos inapropiados y no autorizados
Para cada tema, debes estar en una de las tres fases siguientes, según el marco de trabajo:
- Táctica. No hay planes coherentes que cubran todas las cargas de trabajo individuales que tienes. Lo que más te interesa es obtener un retorno de la inversión rápido y recibir pocas interrupciones en tu organización de TI.
- Estratégica. Hay un plan preparado para desarrollar cargas de trabajo individuales en el que se tienen en cuenta las necesidades de escalamiento futuras. Te interesa el objetivo a mediano plazo de optimizar las operaciones para que sean más eficientes de lo que son en la actualidad.
- Transformacional. Las operaciones en la nube funcionan sin problemas, y debes usar los datos que recopilas de esas operaciones para mejorar tu negocio de TI. Te interesa el objetivo a largo plazo de convertir el departamento de TI en uno de los motores de innovación de tu organización.
Cuando evalúes los cuatro temas en relación con las tres fases, obtendrás la escala de madurez para la nube. En cada tema, puedes ver lo que sucede si pasas de adoptar tecnologías nuevas cuando es necesario a trabajar con ellas de forma más estratégica en toda la organización, lo que implica una capacitación más profunda, integral y coherente para tus equipos.
La ruta de la migración
Es importante recordar que una migración es un viaje. Te encuentras en el punto A con tu infraestructura y entornos existentes y deseas llegar al punto B. Para ir desde A hasta B, puedes elegir cualquiera de las opciones descritas arriba.
En el siguiente diagrama, se ilustra la ruta de este viaje.
La migración incluye las cuatro fases siguientes:
- Evaluación: En esta fase, debes realizar una evaluación exhaustiva y un descubrimiento de tu entorno existente para comprender el inventario de tu app y del entorno, identificar dependencias y requisitos de la app, realizar cálculos del costo total de propiedad y establecer comparativas del rendimiento de la app. Para obtener más información sobre la fase de evaluación, consulta Migra a Google Cloud: evalúa y descubre tus cargas de trabajo, Migra a Google Cloud: prácticas recomendadas, y Centro de migración: Inicia un descubrimiento de activos.
- Planificación: En esta fase, debes crear la infraestructura de nube básica para que residan tus cargas de trabajo y planificar cómo moverás las apps. Esta planificación incluye la administración de identidades, la estructura del proyecto y de la organización, las herramientas de redes, el orden de las apps y el desarrollo de una estrategia de migración prioritaria. Para obtener más información sobre la planificación y compilación de tu base, consulta Migra a Google Cloud: construye tu base.
- Implementación: En esta fase, debes diseñar, implementar y ejecutar un proceso de implementación para mover las cargas de trabajo a Google Cloud. Es posible que también debas definir mejor tu infraestructura de nube para satisfacer necesidades nuevas. Para obtener más información sobre cómo implementar tus cargas de trabajo en Google Cloud y cómo migrar datos a Google Cloud, consulta Migra a Google Cloud: implementa tus cargas de trabajo, Migra a Google Cloud: migra de implementaciones manuales a implementaciones automatizadas y alojadas en contenedores y Migra a Google Cloud: transfiere tus conjuntos de datos grandes.
- Optimización: En esta fase, debes comenzar a aprovechar al máximo las tecnologías y capacidades optimizadas para la nube a fin de orientar el potencial de tu empresa a cuestiones como el rendimiento, la escalabilidad, la recuperación ante desastres, los costos, la capacitación y, también, a incorporar el aprendizaje automático y las integraciones de inteligencia artificial para tu app. Para obtener más información sobre cómo optimizar tu entorno, consulta Migra a Google Cloud: optimiza tu entorno. Para obtener más información sobre los costos, consulta Migra a Google Cloud: minimiza los costos.
Obtén ayuda
Google Cloud ofrece varias opciones y recursos a fin de que obtengas la ayuda y la asistencia necesarias para aprovechar al máximo los servicios de Google Cloud.
Recursos de autoservicio
Si no necesitas asistencia específica, puedes usar estos recursos de autoservicio:
- Documentación de roductos. Google Cloud ofrece documentación para cada uno de sus productos y servicios, además de las API.
- Documentación del centro de arquitectura. La sección de migración del Centro de arquitectura abarca muchas situaciones de migración. Por ejemplo, los Recursos de migración proporciona orientación sobre el proceso de migración a Google Cloud.
- análisis Google Cloud ofrece varios productos y servicios para ayudarte a migrar. Por ejemplo:
- Google Cloud Migration Center es una plataforma unificada que te ayuda a acelerar tu recorrido a la nube de extremo a extremo, desde tus entornos locales o en la nube actuales hasta Google Cloud.
- Migrate to Virtual Machines es un producto para migrar servidores físicos y máquinas virtuales de entornos locales y en la nube a Google Cloud. Migrate to VMs te permite migrar una máquina virtual a Google Cloud en unos minutos, durante los cuales los datos se copian en segundo plano, pero las máquinas virtuales están completamente operativas.
- El Servicio de transferencia de almacenamiento te permite trasladar datos a Cloud Storage desde otros proveedores de servicios en la nube, recursos en línea o datos locales.
- Database Migration Service es un producto que te ayuda a migrar las bases de datos a Google Cloud.
- Transfer Appliance es un dispositivo de hardware que puedes usar para migrar grandes volúmenes de datos (desde cientos de terabytes hasta 1 petabyte) a Google Cloud sin interrumpir las operaciones empresariales.
- El Servicio de migración de BigQuery es una solución integral para migrar tu almacén de datos a BigQuery.
- Informes: En estos documentos, se incluyen arquitecturas de referencia, casos de éxito, instructivos avanzados y prácticas recomendadas.
- Contenido multimedia: Puedes escuchar podcast de Google Cloud o mirar videos en el canal de Google Cloud en YouTube. En estos recursos, se analiza una amplia variedad de temas, desde explicaciones de productos hasta estrategias de desarrollo.
- Cursos y labs en línea: Google Cloud tiene varios cursos en Coursera que incluyen contenidos de video, materiales de lectura y labs. También puedes realizar labs con Google Cloud Skills Boost o participar en clases en línea.
Socios de tecnología
Google Cloud se asoció con varias empresas para que puedas usar sus productos. Es posible que algunas de las ofertas sean gratuitas, así que pregúntale a la empresa y a tu administrador de cuentas de Google Cloud.
Integradores de sistemas
Google Cloud se asocia con empresas de productos y tecnología y, también, con integradores de sistemas que pueden brindar asistencia personalizada. En la lista de socios, puedes encontrar una lista de integradores de sistemas que se especializan en migraciones a la nube.
Servicios profesionales de Google Cloud
Nuestro equipo de servicios profesionales está disponible para ayudarte a aprovechar al máximo tu inversión en Google Cloud.
Cloud Plan and Foundations: obtén ayuda con tu migración
Los servicios profesionales pueden ayudarte a planificar tu migración y a implementar tus cargas de trabajo en producción con nuestra oferta Cloud Plan and Foundations. Estos expertos orientan a tu equipo en cada fase de la migración de tu carga de trabajo hacia la producción, desde la configuración de las bases para Google Cloud hasta la optimización de la plataforma según las necesidades únicas de tu carga de trabajo y su implementación.
Los objetivos de Cloud Plan and Foundations son los siguientes:
- Configurar la base para Google Cloud
- Crear documentación de diseño
- Planificar las actividades de implementación y migración
- Implementar cargas de trabajo en la producción
- Hacer un seguimiento de problemas y riesgos
Los servicios profesionales orientan a tu equipo a través de las actividades y resultados siguientes:
- Realizar talleres técnicos iniciales
- Crear un documento de diseño técnico
- Crear un plan de migración
- Crear un plan del programa
- Proporcionar administración de proyectos
- Brindar experiencia técnica
Cloud Sprint: acelera tu migración a Google Cloud
Cloud Sprint es un taller intensivo que acelera la migración de tu app a Google Cloud. En este taller, los servicios profesionales de Google Cloud guían a uno de tus equipos a través de debates interactivos, sesiones con pizarras y revisión de apps de destino para migrar a Google Cloud. Durante Cloud Sprint, los servicios profesionales trabajan junto con los miembros de tu equipo a fin de que obtengan experiencia de calidad con soluciones de nube que incluyen actividades de implementación necesarias y para que comprendan cómo proceder en migraciones futuras a Google Cloud.
Capacitación: desarrolla las habilidades de tu equipo
Los servicios profesionales de Google Cloud pueden proporcionar capacitación en diversas áreas según las necesidades de tu equipo.
¿Qué sigue?
- Comienza la migración a Google Cloud mediante la evaluación y el descubrimiento de tu entorno.
- Explora arquitecturas de referencia, diagramas y prácticas recomendadas sobre Google Cloud. Consulta nuestro Cloud Architecture Center.