Migra de AWS a Google Cloud: migra de Amazon EKS a GKE

Last reviewed 2023-09-30 UTC

Google Cloud proporciona herramientas, productos, orientación y servicios profesionales para migrar de Amazon Elastic Kubernetes Service (Amazon EKS) a Google Kubernetes Engine (GKE). En este documento, podrás diseñar, implementar y validar un plan para migrar de Amazon EKS a GKE. En este documento, también se proporciona orientación si estás evaluando la posibilidad de migrar y deseas explorar cómo podría ser la migración. Además de ejecutarse en Amazon Elastic Compute Cloud (Amazon EC2), Amazon EKS tiene algunas otras opciones de implementación, como Amazon EKS en los resultados de AWS y Amazon EKS en cualquier lugar. Este documento se centra en Amazon EKS en EC2.

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 EKS a GKE 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 EKS a GKE.

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

  1. Crea un inventario integral de tus cargas de trabajo y datos.
  2. Cataloga tus cargas de trabajo y datos 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 tus inventarios

Para definir el alcance de tu migración, crea dos inventarios: uno de tus clústeres de Amazon EKS y otra de las cargas de trabajo que se implementan en esos clústeres. Después de compilar estos inventarios, evalúa los procesos operativos y de implementación para implementar cargas de trabajo en los clústeres.

Crea el inventario de tus clústeres y cargas de trabajo de Amazon EKS

Para compilar el inventario de tus clústeres de Amazon EKS, 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 EKS y otros recursos de AWS. Luego, Migration Center recomienda los servicios de Google Cloud relevantes a los que puedes migrar.

Cuando compilas el inventario de tus clústeres de Amazon EKS, es posible que algunos de ellos deban retirarse como parte de tu migración. Asegúrate de que tu plan de migración incluya la eliminación de esos recursos.

Es posible que los datos que proporciona 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, considera los siguientes datos para cada clúster de Amazon EKS que desees migrar:

  • Sigue las instrucciones en la sección Compila tus inventarios de “Migra Kubernetes a GKE”. En ese documento, se describe cómo compilar los inventarios de los clústeres y cargas de trabajo de Kubernetes. También se aplica a la compilación del inventario de tus entornos de Amazon EKS.
  • Considera los aspectos y las funciones específicas de Amazon EKS para cada clúster de Amazon EKS, incluidos los siguientes:
    • Clústeres privados
    • Control de acceso al extremo del clúster
    • Encriptación secreta
    • Grupos de nodos administrados y nodos autoadministrados
    • Etiquetas en los recursos de Amazon EKS
    • AMI personalizados de Amazon en EKS
    • Uso de Amazon EKS Fargate
    • Uso de Amazon EKS administrado de Prometheus
    • Configuración de autenticación de OpenID Connect
  • Evalúa cómo autenticas en tus clústeres de Amazon EKS y cómo configuraste la administración de identidades y accesos (IAM) de AWS para Amazon EKS.
  • Evalúa la configuración de red de tus clústeres de Amazon EKS.
  • Evalúa los requisitos normativos y de cumplimiento, y si cumples con estos.

Evalúa los procesos operativos y de implementación

Después de compilar los inventarios de tus clústeres y cargas de trabajo de Amazon EKS, te recomendamos que evalúes tus 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í.

Tu proceso operativo y de implementación pueden compilar los artefactos que tus cargas de trabajo necesitan para funcionar. Por lo tanto, debes recopilar información sobre cada tipo de artefacto. Por ejemplo, un artefacto puede ser un paquete de sistema operativo, un paquete de implementación de aplicación, una imagen de sistema operativo, una imagen de contenedor o algo más.

Además del tipo de artefacto, considera cómo completar las siguientes tareas:

  • Genera los artefactos que implementas en Amazon EKS. Para implementar tus cargas de trabajo en Amazon EKS, puedes generar artefactos implementables, como 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 hacer que los artefactos estén disponibles en tu entorno de Google Cloud. Puedes hacerlo mediante el uso de estrategias como las siguientes:
    • Establece un canal de comunicación entre los entornos: Haz que los artefactos de tu entorno de origen sean accesibles desde el entorno de destino de Google Cloud. Esto te ayuda a prepararte para tu uso eventual de Artifact Registry.
    • Refactoriza el proceso de compilación de artefactos: Completa un mínimo de refactorización de tu entorno de origen para que puedas almacenar artefactos en el entorno de origen y en el de destino. Este enfoque admite la migración mediante la compilación de una infraestructura, como un repositorio de artefactos antes de tener que implementar los procesos de compilación de artefactos en el entorno de Google Cloud de destino. Puedes implementar este enfoque directamente o puedes basarte primero en el enfoque de establecer un canal de comunicación.
  • Implementa artefactos en tus clústeres de Amazon EKS. Después de generar artefactos implementables, puedes implementarlos en Amazon EKS. 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 EKS, es posible que debas refactorizarlos para que se orienten a tu entorno de Google Cloud.
  • Incorpora la configuración del entorno de ejecución. Es posible que insertes una configuración de entorno de ejecución para clústeres específicos de Amazon EKS, entornos de ejecución o implementaciones de cargas de trabajo. La configuración puede inicializar variables de entorno y otros valores de configuración, como secretos, credenciales y claves. 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 estás configurando las cargas de trabajo que se ejecutan en Amazon EKS.

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.

Completa la evaluación

Después de compilar los inventarios de tu entorno de Amazon S3, 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.

Compila tu base en Google Cloud

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 (IAM) de Google Cloud
  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 la sección Planifica y compila tu base en “Migra contenedores a Google Cloud: Migra Kubernetes a GKE”.

Migra tus datos y, luego, implementa cargas de trabajo

En la fase de implementación, debes realizar las siguientes tareas:

  1. Aprovisionar y configurar tu entorno de GKE.
  2. Configurar tus clústeres de GKE.
  3. Migrar datos de tu entorno de origen a Google Cloud.
  4. Implementar tus cargas de trabajo en tu entorno de GKE.
  5. Validar las cargas de trabajo.
  6. Exponer las cargas de trabajo que se ejecutan en GKE.
  7. Cambiar el tráfico del entorno de origen al entorno de GKE.
  8. Retirar de servicio el entorno de origen.

Para obtener información sobre cómo completar cada una de estas tareas, consulta la sección Implementa tus cargas de trabajo en “Migra contenedores a Google Cloud: Migra Kubernetes a GKE”. En las siguientes secciones, se integran las consideraciones de ese documento.

Migrar datos

En la sección Migra datos de “Migra contenedores a Google Cloud: migra Kubernetes a GKE”, se incluye información sobre cómo migrar datos de un entorno de Kubernetes genérico a GKE. Las recomendaciones de esa sección son aplicables para migrar datos de Amazon EKS a GKE. Para planificar tu migración, integra la información del entorno genérico en el documento vinculado en las siguientes secciones que son específicas de la migración de datos de Amazon EKS a GKE.

AWS proporciona varias opciones de almacenamiento de datos para Amazon EKS. Este documento se centra en las siguientes situaciones de migración de datos:

  • Migrar datos de volúmenes de Amazon EBS a recursos PersistentVolume de GKE
  • Copia datos de volúmenes de Amazon EBS a Amazon S3 o a Cloud Storage y, luego, migra datos a recursos PersistentVolume de GKE.

Migra datos de volúmenes de Amazon EBS a PersistentVolumes de GKE

Puedes migrar datos de volúmenes de Amazon EBS a recursos PersistentVolume de GKE mediante uno de los siguientes enfoques:

  • Copia directamente los datos de los volúmenes de Amazon EBS a los discos persistentes de Compute Engine:
    1. Aprovisiona las instancias de Amazon EC2 y adjunta los volúmenes de Amazon EBS que contienen los datos que se migrarán.
    2. Aprovisiona las instancias de Compute Engine con discos persistentes vacíos que tengan suficiente capacidad para almacenar los datos que se migrarán.
    3. Ejecuta una herramienta de sincronización de datos, como rsync, para copiar datos de los volúmenes de Amazon EBS a los discos persistentes de Compute Engine.
    4. Desconecta los discos persistentes de las instancias de Compute Engine.
    5. Inhabilita las instancias de Compute Engine.
    6. Configura los discos persistentes como recursos PersistentVolume de GKE.
  • Migra instancias de Amazon EC2 y volúmenes de Amazon EBS a Compute Engine:
    1. Aprovisiona las instancias de Amazon EC2 y adjunta los volúmenes de Amazon EBS que contienen los datos que se migrarán.
    2. Migra las instancias de Amazon EC2 y los volúmenes de Amazon EBS a Compute Engine con Migrate for Virtual Machines.
    3. Desconecta los discos persistentes de las instancias de Compute Engine.
    4. Inhabilita las instancias de Compute Engine.
    5. Configura los discos persistentes como recursos PersistentVolume de GKE.

Para obtener más información sobre la migración de instancias de Amazon EC2 a Compute Engine, consulta Migra de AWS a Google Cloud: Migra de Amazon EC2 a Compute Engine.

Para obtener más información sobre el uso de discos persistentes de Compute Engine como recursos PersistentVolume de GKE, consulta Usa discos persistentes preexistentes como PersistentVolumes.

Copiar los datos de los volúmenes de EBS de Amazon a un contenido multimedia intermedio y migrar a PersistentVolumes de GKE

En lugar de migrar de volúmenes de Amazon EBS a recursos PersistentVolume de GKE directamente, puedes usar un medio provisional, como un depósito de objetos:

  1. Sube datos de volúmenes de Amazon EBS a un medio provisional, como un bucket de Amazon S3 o uno de Cloud Storage.
  2. Descarga los datos desde los medios provisionales a tus recursos PersistentVolume de GKE.

En ciertas situaciones, el uso de varios medios puede simplificar la transferencia de datos según tu red y las configuraciones de seguridad. Por ejemplo, primero puedes subir los datos a un bucket de S3, luego copiarlos en un bucket de Cloud Storage y, luego, descargar los datos en los volúmenes persistentes. Sin importar el enfoque que elijas, para garantizar una transición sin problemas mientras tomas en cuenta consideraciones importantes, te recomendamos que revises Migra de AWS a Google Cloud: migra de Amazon S3 a Cloud Storage.

Elige una opción de migración

La mejor opción de migración para ti depende de tus necesidades y requisitos específicos, como las siguientes consideraciones:

  • La cantidad de datos que necesitas migrar.
    • Si tienes que migrar una pequeña cantidad de datos, como algunos archivos de datos, considera usar herramientas como rsync para copiar los datos directamente en los discos persistentes de Compute Engine. Esta opción es relativamente rápida, pero podría no ser adecuada para grandes cantidades de datos.
    • Si tienes una gran cantidad de datos que migrar, considera usar Migrate to Virtual Machines para migrar los datos a Compute Engine. Esta opción es más compleja que copiar los datos directamente, pero es más confiable y escalable.
  • El tipo de datos que necesitas migrar.
  • Tu conectividad de red entre los entornos de origen y destino.
    • Si no puedes establecer la conectividad de red directa entre tus instancias de AWS EC2 y Compute Engine, te recomendamos usar Amazon S3 o Cloud Storage para almacenar los datos de forma temporal mientras migras la migración a Compute Engine. . Esta opción puede ser menos costosa, ya que no tendrás que mantener las instancias de EC2 y Compute Engine en ejecución de forma simultánea.
  • El cronograma de migración
    • Si tienes un ancho de banda de red limitado o una gran cantidad de datos, y tu cronograma no es estricto, también puedes usar Transfer Appliance para mover tus datos. De AWS a Google Cloud

Sin importar la opción que elijas, es importante que pruebes tu migración antes de iniciarla. Las pruebas te ayudarán a identificar cualquier problema potencial y a garantizar que la migración sea exitosa.

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 GKE necesite más optimizaciones. Para obtener más información, consulta Migra Kubernetes a GKE: Optimiza tu entorno.

¿Qué sigue?