Migra de AWS a Google Cloud: Migra de Amazon EC2 a Compute Engine

Last reviewed 2023-10-13 UTC

Google Cloud proporciona herramientas, productos, orientación y servicios profesionales para migrar máquinas virtuales (VMs) junto con sus datos de Amazon Elastic Compute Cloud (Amazon EC2) aCompute Engine. En este documento, se analiza cómo diseñar, implementar y validar un plan para migrar de Amazon EC2 a Compute Engine.

El debate de este documento está dirigido a los administradores de la nube que deseen obtener detalles sobre cómo planificar e implementar un proceso de migración. También está dirigido a los encargados de tomar decisiones que evalúan la oportunidad de migrar y que desean explorar cómo podría ser la migración.

Este documento pertenece a una serie de varias partes sobre la migración de AWS a Google Cloud que incluye los siguientes documentos:

En esta serie, suponemos que leíste los siguientes documentos y los conoces:

En el siguiente diagrama, se ilustra la ruta del recorrido de tu migración. Para las situaciones de migración, la fase de implementación es equivalente a realizar un proceso de migración.

Ruta de migración con cuatro fases

Puedes migrar de Amazon EC2 a Compute Engine en una serie de iteraciones, por ejemplo, puedes migrar algunas cargas de trabajo primero y otras más tarde. Para cada iteración de migración independiente, debes seguir las fases del framework de migración general:

  1. Evalúa y descubre las cargas de trabajo y los datos.
  2. Planifica y compila una base en Google Cloud.
  3. Migra tus cargas de trabajo y datos a Google Cloud.
  4. Optimiza tu entorno de Google Cloud.

Para obtener más información sobre las fases de este framework, consulta Migra a Google Cloud: Comienza ahora.

Evalúa el entorno de origen

En la fase de evaluación, determinarás los requisitos y las dependencias de los recursos que deseas migrar de Amazon EC2 a Compute Engine.

La fase de evaluación consta de las siguientes tareas:

  1. Crea un inventario completo de tus aplicaciones.
  2. Cataloga tus cargas de trabajo según sus propiedades y dependencias.
  3. Capacita y educa a tus equipos en Google Cloud.
  4. Crea experimentos y pruebas de concepto en Google Cloud.
  5. Calcula el costo total de propiedad (TCO) del entorno de destino.
  6. Decide el orden y la prioridad de las cargas de trabajo que deseas migrar.

Para obtener más información sobre la fase de evaluación y estas tareas, consulta Migra a Google Cloud: Evalúa y descubre tus cargas de trabajo. Las siguientes secciones se basan en la información de ese documento.

Compila un inventario de tus instancias de Amazon EC2

Para definir el alcance de la migración, crea un inventario de tus instancias de Amazon EC2. Luego, puedes usar el inventario para evaluar los procesos operativos y de implementación a fin de implementar cargas de trabajo en esas instancias.

Para compilar el inventario de tus instancias de Amazon EC2, te recomendamos que uses Migration Center, la plataforma unificada de Google Cloud que te ayuda a acelerar tu recorrido a la nube de extremo a extremo de tu entorno actual a Google Cloud. Migration Center te permite importar datos desde Amazon EC2 y otros recursos de AWS. Luego, Migration Center recomienda los servicios de Google Cloud relevantes a los que puedes migrar.

Después de evaluar tu entorno con Migration Center, te recomendamos que generes un informe de evaluación de migración técnica mediante la CLI del cliente de descubrimiento de Migration Center. Si deseas obtener más información, consulta Recopila datos de invitado de instancias de Amazon EC2 para la evaluación sin conexión.

Es posible que los datos que proporcionan Migration Center y la CLI del cliente de descubrimiento de Migration Center no capturen por completo las dimensiones que te interesan. En ese caso, puedes integrar esos datos en los resultados de otros mecanismos de recopilación de datos que crees y que se basen en las APIs, las herramientas para desarrolladores y la interfaz de línea de comandos de AWS.

Además de los datos que obtienes de Migration Center y la CLI de cliente de descubrimiento de Migration Center, considera los siguientes datos para cada instancia de Amazon EC2 que deseas migrar:

  • Región y zona de implementación.
  • Tipo y tamaño de la instancia.
  • La imagen de máquina de Amazon (AMI) desde la que se inicia la instancia.
  • El nombre de host de la instancia y cómo otras instancias y cargas de trabajo usan este nombre de host para comunicarse con la instancia.
  • Las etiquetas de instancia, así como los metadatos y los datos del usuario.
  • El tipo de virtualización de instancias.
  • La opción de compra de instancias, como la compra según demanda o Spot.
  • Cómo la instancia almacena datos, como el uso de almacenes de instancias y volúmenes de Amazon EBS.
  • La configuración de usuario de la instancia.
  • Indica si la instancia se encuentra en un grupo de ubicaciones específico.
  • Indica si la instancia está en un grupo de ajuste de escala automático específico.
  • Los grupos de seguridad a los que pertenece la instancia.
  • Cualquier configuración de firewall de red de AWS que incluya la instancia.
  • Si las cargas de trabajo que se ejecutan en la instancia están protegidas por AWS Shield y AWS WAF.
  • Si controlas el estado del procesador de tu instancia y cómo las cargas de trabajo que se ejecutan en la instancia dependen del estado del procesador.
  • La configuración del programador de E/S de instancia.
  • Cómo expones las cargas de trabajo que se ejecutan en la instancia a los clientes que se ejecutan en tu entorno de AWS (como otras cargas de trabajo) y a clientes externos.

Evalúa los procesos operativos y de implementación

Después de compilar el inventario de las instancias de Amazon EC2, te recomendamos que evalúes los procesos operativos y de implementación. Es fundamental comprender claramente cómo funcionan los procesos operativos y de implementación. Estas son una parte fundamental de las prácticas que preparan y mantienen tu entorno de producción y las cargas de trabajo que se ejecutan allí.

Considera cómo completar las siguientes tareas:

  • Aprovisiona y configura tus recursos de AWS. Para preparar tu entorno de AWS, es posible que hayas diseñado e implementado procesos que aprovisionen y configuren recursos. Por ejemplo, puedes usar AWS CloudFormation o Terraform junto con las herramientas de administración de configuración para aprovisionar y configurar los recursos en la nube de AWS.
  • Genera AMI para tus instancias de Amazon EC2. Es importante evaluar cómo generas las AMI y qué tipo de personalización aplicas a estas. Esta información te ayuda a garantizar que proporciones un entorno de ejecución adecuado para las cargas de trabajo. Por ejemplo, puedes instalar paquetes de sistema operativo (SO) o ajustar la configuración del SO.
  • Genera los artefactos que implementes en tus instancias de Amazon EC2. Para implementar tus cargas de trabajo en Amazon EC2, es posible que generes artefactos implementables, como las cargas de trabajo empaquetadas y las imágenes de contenedor. La recopilación de información sobre cómo generas estos artefactos te ayuda a garantizar que los artefactos generados sean adecuados para la implementación en Google Cloud. Por ejemplo, si produces artefactos que almacenas en un registro de artefactos en AWS, debes considerar cómo hacer que estos artefactos estén disponibles en tu entorno de Google Cloud.
  • Implementa artefactos en tus instancias de Amazon EC2. Después de generar artefactos implementables, puedes implementarlos en Amazon EC2. Te recomendamos que evalúes cada proceso de implementación. La evaluación ayuda a garantizar que tus procesos de implementación sean compatibles con Google Cloud. También te ayuda a comprender el esfuerzo que se necesitará para refactorizar los procesos con el tiempo. Por ejemplo, si tus procesos de implementación funcionan solo con Amazon EC2, es posible que debas refactorizarlos para que se orienten a tu entorno de Google Cloud.
  • Incorpora la configuración del entorno de ejecución. Puedes inyectar una configuración del entorno de ejecución para tus instancias, como inicializar variables de entorno y otros valores de configuración de instancias específicas de Amazon EC2, entornos de ejecución o implementaciones de cargas de trabajo. Para garantizar que los procesos de inserción de configuración del entorno de ejecución funcionen en Google Cloud, te recomendamos que evalúes cómo tienes las cargas de trabajo configuradas en Amazon EC2.

Después de evaluar los procesos operativos y de implementación, también te recomendamos evaluar cómo estos procesos pueden facilitar la migración a Google Cloud y cómo te ayudan a reducir el alcance y el riesgo de la migración. Por ejemplo, puedes refactorizar tus procesos de compilación de artefactos para almacenar artefactos en AWS y en Google Cloud mientras se realiza la migración. Tener artefactos en ambos entornos te permite enfocarte en migrar instancias de Amazon EC2 sin tener que implementar procesos de compilación de artefactos en el entorno de Google Cloud de destino al comienzo del proceso de migración.

Completa la evaluación

Después de compilar los inventarios de tu entorno de Amazon EC2, completa el resto de las actividades de la fase de evaluación como se describe en Migra a Google Cloud: Evalúa y descubre tus cargas de trabajo.

Planifica y compila tu base

En la fase de planificación y compilación, aprovisionarás y configurarás la infraestructura para hacer lo siguiente:

  • Admitir tus cargas de trabajo en tu entorno de Google Cloud.
  • Conectar tu entorno de AWS y tu entorno de Google Cloud para completar la migración.

La fase de planificación y compilación se compone de las siguientes tareas:

  1. Compila una jerarquía de recursos.
  2. Configura la administración de identidades y accesos.
  3. Configura la facturación.
  4. Configura la conectividad de red.
  5. Endurece tu seguridad.
  6. Configurar el registro, la supervisión y las alertas

Para obtener más información sobre cada una de estas tareas, consulta Migrate to Google Cloud: Compila tu base.

Migra tus cargas de trabajo

Para migrar tus cargas de trabajo de Amazon EC2 a Compute Engine, debes hacer lo siguiente:

  1. Migrar las VMs de Amazon EC2 a Compute Engine
  2. Exponer las cargas de trabajo que se ejecutan en Compute Engine a los clientes
  3. Refactorizar los procesos operativos y de implementación para orientarlos a Google Cloud en lugar de Amazon EC2.

En las siguientes secciones, se proporcionan detalles sobre cada una de estas tareas.

Migrar tus VM a Compute Engine

Para migrar VMs de Amazon EC2 a Compute Engine, te recomendamos que uses Migrate to Virtual Machines, que es un servicio completamente administrado. Para obtener más información, consulta Proceso de migración con Migrate to VMs.

Como parte de la migración, Migrate for VMs migra las instancias de Amazon EC2 en su estado actual, además de los cambios de configuración necesarios. Si tus instancias de Amazon EC2 ejecutan AMI de Amazon EC2 personalizadas, Migrate for VMs migra estas personalizaciones a instancias de Compute Engine. Sin embargo, si deseas que tu infraestructura se pueda reproducir, es posible que debas aplicar personalizaciones equivalentes mediante la compilación de Imágenes del sistema operativo de Compute Engine como parte de tus procesos operativos y de implementación, como se explica más adelante en este documento. También puedes importar tus AMI de Amazon EC2 a Compute Engine.

Expón cargas de trabajo que se ejecutan en Compute Engine

Después de migrar tus instancias de Amazon EC2 a las instancias de Compute Engine, es posible que debas aprovisionar y configurar tu entorno de Google Cloud para exponer las cargas de trabajo a los clientes.

Google Cloud ofrece servicios y productos seguros y confiables para exponer las cargas de trabajo a los clientes. En las cargas de trabajo que se ejecutan en tus instancias de Compute Engine, configura recursos para las siguientes categorías:

  • Firewalls
  • Balanceo de cargas de tráfico
  • Nombres DNS, zonas y registros
  • Protección de DSD y firewalls de aplicaciones web

Para cada una de estas categorías, puedes comenzar por implementar una configuración de referencia similar a la forma en que configuraste los servicios y recursos de AWS en la categoría equivalente. Luego, puedes iterar en la configuración y usar funciones adicionales que proporcionan los servicios de Google Cloud.

En las siguientes secciones, se explica cómo aprovisionar y configurar recursos de Google Cloud en estas categorías y cómo se asignan a los recursos de AWS en categorías similares.

Firewalls

Si configuraste los grupos de seguridad de AWS y las políticas y reglas de firewall de red de AWS, puedes configurar las políticas y las reglas de firewall de nueva generación de Cloud. También puedes aprovisionar reglas del Controles del servicio de VPC para regular el tráfico de red dentro de tu VPC. Puedes usar los Controles del servicio de VPC para bloquear las conexiones de red no deseadas a las instancias de Compute Engine y ayudar a mitigar el riesgo de robo de datos.

Por ejemplo, si usas grupos de seguridad de AWS para permitir o denegar conexiones a tus instancias de Amazon EC2, puedes configurar reglas de firewall de nube privada virtual (VPC) similares que se apliquen a tus instancias de Compute Engine.

Balanceo de cargas de tráfico

Si configuraste Elastic Load Balancing (ELB) en tu entorno de AWS, puedes configurar Cloud Load Balancing para distribuir el tráfico de red a fin de ayudar a mejorar la escalabilidad de tus cargas de trabajo en Google Cloud. Cloud Load Balancing admite varios productos de balanceo de cargas globales y regionales que funcionan en diferentes capas del modelo OSI, por ejemplo, en la capa de transporte y en la capa de la aplicación. Puedes elegir un producto de balanceo de cargas que sea adecuado para los requisitos de tus cargas de trabajo.

Cloud Load Balancing también admite la configuración de la seguridad de la capa de transporte (TLS) para encriptar el tráfico de red. Cuando configuras TLS para Cloud Load Balancing, puedes usar certificados TLS autoadministrados o administrados por Google, según tus requisitos.

Nombres DNS, zonas y registros

Si usas Amazon Route 53 en tu entorno de AWS, puedes usar lo siguiente en Google Cloud:

Por ejemplo, si registraste un dominio con Amazon Route 53, puedes transferir el registro de dominio a Cloud Domains. Del mismo modo, si configuraste zonas DNS públicas y privadas con Amazon Route 53, puedes migrar esa configuración a Cloud DNS.

Protección contra DSD y firewalls de aplicaciones web

Si configuraste AWS Shield y AWS WAF en tu entorno de AWS, puedes usar Google Cloud Armor para proteger tus cargas de trabajo de Google Cloud de ataques de DSD y de vulnerabilidades comunes.

Refactoriza los procesos operativos y de implementación

Después de migrar tus VMs a Compute Engine, refactoriza tus procesos para que realicen las siguientes acciones:

  • Aprovisiona y configura recursos en el entorno de Google Cloud en lugar de aprovisionar recursos de AWS, como las instancias de Amazon EC2 y las AMI de Amazon EC2.
  • Compila, implementa y configura las cargas de trabajo en Compute Engine en lugar de implementar cargas de trabajo en Amazon EC2.

Recopilaste información sobre estos procesos durante la fase de evaluación antes en este proceso.

El tipo de refactorización que debes considerar para estos procesos depende de cómo los diseñaste y cómo los implementaste. La refactorización también depende de cuál sea el estado final de cada proceso. Por ejemplo, considera lo siguiente:

  • Es posible que hayas implementado estos procesos en tu entorno de AWS y quieras diseñar e implementar procesos similares en Google Cloud.
  • Es posible que hayas implementado estos procesos en otro entorno de terceros fuera del entorno de AWS. En este caso, debes refactorizar estos procesos para orientar tu entorno de Google Cloud en lugar del entorno de AWS.
  • Una combinación de los enfoques anteriores.

La refactorización de los procesos operativos y de implementación puede ser complejo y puede requerir un esfuerzo significativo. Si intentas realizar estas tareas como parte de la migración de VMs, la migración puede volverse compleja y exponerte a riesgos. Después de evaluar los procesos operativos y de implementación, es probable que comprendas el diseño y la complejidad. Si estimas que necesitas un esfuerzo sustancial para refactorizar tus procesos operativos y de implementación, te recomendamos que consideres la refactorización de estos procesos como parte de un proyecto independiente y dedicado.

Para obtener más información sobre cómo diseñar e implementar procesos de implementación en Google Cloud, consulta los siguientes documentos:

Optimiza tu entorno después de la migración

Cuando completas todas las fases de migración, la migración se considera finalizada. Sin embargo, es posible que tu entorno de Google Cloud necesite más optimizaciones. Para obtener más información, consulta Proceso de migración con Migrate to VMs: Optimiza tu entorno.

¿Qué sigue?