Cómo Migrar un Servidor GNU/Linux desde AWS a Plenit

Prepara la máquina, exporta su disco a un bucket S3 con AWS CLI e impórtalo en Plenit por la URL del objeto.

Para migrar un servidor GNU/Linux de AWS a Plenit, exportas el disco de la instancia a un bucket de S3 en formato VHD y lo importas después en Plenit por la URL del objeto.

El grueso del trabajo está en el lado de AWS: preparar la máquina, dejar un S3 con los permisos correctos y lanzar la exportación con AWS CLI.


👍

Qué consigues

El disco de tu instancia de AWS exportado a S3 en formato VHD e importado en Plenit por su URL, listo para desplegar el servidor de destino.


Antes de empezar

  • Iniciar sesión en la plataforma de Plenit con permisos de administrador de compañía o sobre una suscripción de Servidores.
  • Tener acceso al apartado Migrations dentro de Cloud Services.
  • Tener una suscripción de AWS con al menos un servidor que exportar.

❗️

Qué no permite exportar AWS

Antes de empezar, comprueba que tu caso no choca con los límites de AWS:

  • No exporta imágenes con software de terceros de AWS: ni Windows, ni SQL Server, ni imágenes creadas desde el AWS Marketplace.
  • No exporta imágenes con instantáneas de EBS cifradas en el block device mapping.
  • Solo exporta volúmenes de datos de EBS del block device mapping; no los añadidos tras lanzar la instancia.
  • No exporta imágenes compartidas desde otra cuenta de AWS.
  • Máximo 5 tareas de conversión por región en paralelo (ampliable a 20).
  • No exporta volúmenes mayores de 1 TB.

Paso 0. Prepara la máquina GNU/Linux

Antes de exportar, deja el servidor de origen listo:

  • Habilita SSH para el acceso remoto y permite las sesiones SSH en el firewall de la máquina (por ejemplo, en iptables).
  • Crea un usuario adicional no root para trabajar por SSH.
  • Comprueba que la máquina usa GRUB (Legacy o GRUB 2) como gestor de arranque.
  • Comprueba que el sistema de archivos raíz es uno de estos: EXT2, EXT3, EXT4, Btrfs, JFS o XFS.

Para verificar el sistema de archivos y el arranque:

lsblk -f            # tipo de sistema de archivos de cada volumen
ls /boot/grub*      # presencia de GRUB / GRUB2

Paso 1. Instala AWS CLI en tu equipo

Instala la interfaz de línea de comandos de AWS en el equipo desde el que vas a lanzar la migración (en Windows, el instalador .msi, añadiéndolo al Path; en Linux, vía Python y Pip). Después, comprueba que responde:

aws --version
Comprobación de la versión de AWS CLI

Paso 2. Prepara el bucket S3

2.1 Crea el bucket en la misma región

En la consola de AWS, busca S3 y pulsa Crear bucket. Dale un nombre y elige la región.

❗️

Misma región que la instancia

El bucket S3 debe estar en la misma región que la máquina que vas a exportar. Si la instancia está en Irlanda (eu-west-1), el bucket también.


En Propiedades de objetos, marca ACL habilitadas.

Creación del bucket S3 con nombre y región

2.2 Permite el acceso necesario

En Bloquear acceso público, desmarca Bloquear todo el acceso público y acepta el aviso. Deja el resto por defecto y pulsa Crear bucket.

Configuración de acceso público del bucket

2.3 Añade el beneficiario de Plenit en la ACL

Entra en el bucket, pestaña Permisos → Lista de control de acceso (ACL) → Editar. Pulsa Agregar beneficiario, introduce la cadena del beneficiario canónico de Plenit, marca Lectura y Escritura y Guarda cambios.


🚧

Confirma la cadena del beneficiario

Es el identificador de la cuenta de Plenit que recogerá la exportación desde tu bucket. Usa el valor vigente que te facilite Partner Success; si no es correcto, la exportación no se entregará.

Edición de la ACL del bucket para añadir el beneficiario

Paso 3. Exporta la instancia de AWS

3.1 Localiza el ID de la instancia

En la consola, busca EC2 → Instancias, localiza la máquina a migrar y copia su ID de instancia (i-…). Resérvalo.

Copia del ID de la instancia en EC2

3.2 Crea las claves de acceso

Desde el perfil de usuario, entra en Credenciales de seguridad → Claves de acceso → Crear una clave de acceso. Copia el ID de clave de acceso y la clave secreta y descarga el archivo de claves. Las usarás para autenticar AWS CLI.

Creación de las claves de acceso de AWS

3.3 Prepara el fichero de exportación

Crea un fichero file.json con el formato de salida (VHD, para importarlo en Plenit), el bucket y el prefijo (la carpeta donde se guardará lo exportado):

{
  "DiskImageFormat": "VHD",
  "S3Bucket": "tu-bucket",
  "S3Prefix": "vms/"
}

Anota la ruta donde guardas el fichero, la necesitas en el comando. En Linux, dale permiso de lectura al archivo.


3.4 Carga las credenciales y lanza la exportación

Carga las variables de entorno con tu región y tus claves. En PowerShell (Windows):

$Env:AWS_DEFAULT_REGION='eu-west-1'
$Env:AWS_ACCESS_KEY_ID='<ID-CLAVE-ACCESO>'
$Env:AWS_SECRET_ACCESS_KEY='<CLAVE-SECRETA>'
echo $Env:AWS_DEFAULT_REGION   # comprueba que se cargó

En GNU/Linux es lo mismo con export:

export AWS_DEFAULT_REGION='eu-west-1'
export AWS_ACCESS_KEY_ID='<ID-CLAVE-ACCESO>'
export AWS_SECRET_ACCESS_KEY='<CLAVE-SECRETA>'
echo $AWS_DEFAULT_REGION

Lanza la tarea de exportación con el ID de la instancia y la ruta del file.json:

aws ec2 create-instance-export-task --instance-id <ID-INSTANCIA> --target-environment microsoft --export-to-s3-task file://<RUTA-AL-FICHERO>
Carga de variables y comando de exportación de la instancia

3.5 Recoge la URL del VHD

El proceso tarda según el tamaño del servidor. Cuando termine, entra en el bucket S3, abre la carpeta del prefijo que definiste (por ejemplo, vms/) y, sobre el VHD, copia la URL del objeto. Es la que usarás para importar en Plenit (también puedes descargar el VHD, pero para la migración lo práctico es la URL).

Copia de la URL del VHD en el bucket S3

Paso 4. Importa el disco en Plenit

En Cloud Services → Migrations, pulsa Nueva migración.

🚧

Importa desde el mismo equipo de la operativa AWS

La importación por URL debe lanzarse desde el equipo en el que hiciste todo el proceso de AWS.


4.1 Servicio y tipo de origen

Selecciona Servidores y, como tipo, Virtual.

Selección de Servidores y tipo Virtual en el asistente

4.2 Formato, método y datos del disco

Selecciona Discos Virtuales Compatibles como formato y descarga mediante URL como método de entrega (más rápido que el FTP, al evitar la intermediación). Rellena los datos del disco:

  • Nombre del fichero con su extensión (la del Paso 3).
  • URL del disco: la que copiaste del bucket.
  • Tipo de disco: el principal del sistema operativo, de sistema; los demás, de datos.
  • Nombre a mostrar: el identificador del disco en la consola.

Pulsa Siguiente.

Formato, método por URL y datos del disco

4.3 Organización, suscripción y despliegue

Indica la organización, la suscripción y la zona de disponibilidad donde subir el disco. A la pregunta de desplegar un servidor nuevo con los discos importados, lo habitual es .

Selección de organización, suscripción y despliegue

4.4 Servidor de destino

Si elegiste desplegar, indica el nombre (admite espacios), el sistema operativo, el tamaño (CPU y RAM) y el tipo de red (estándar o VPC). Pulsa Finalizar.

Configuración del servidor de destino

Con esto quedan sentadas las bases de la migración y arrancan los procesos internos que desembocan en el despliegue del servidor en la suscripción elegida.


Conclusión

Esta migración es la más laboriosa del bloque porque casi todo ocurre en AWS: preparar la máquina, dejar el bucket S3 con la región y los permisos correctos, cargar las credenciales y lanzar la exportación a VHD.

Dos cosas la condicionan por completo: respetar los límites de exportación de AWS (nada de Windows, SQL Server, imágenes de Marketplace o volúmenes de más de 1 TB) y que la ACL del bucket tenga bien puesto el beneficiario de Plenit, porque es lo que permite recoger la exportación. Con el VHD ya en S3, importarlo en Plenit es pegar su URL en el asistente, eso sí, desde el mismo equipo donde hiciste el trabajo en AWS.