Copiar el sistema de archivos de la máquina de origen

Para modernizar un componente de una aplicación, es necesario crear una copia del sistema de archivos de la máquina de origen.

En esta página se describen los pasos necesarios para copiar el sistema de archivos de la máquina de origen, así como algunas especificaciones para reducir el tamaño del sistema de archivos copiado.

Crear una copia local del sistema de archivos de la máquina de origen Linux

La CLI de Migrate to Containers admite el acceso a máquinas de origen mediante una conexión SSH directa o con gcloud.

SSH directo

Para copiar mediante acceso SSH directo, ejecuta el siguiente comando:

./m2c copy ssh [USERNAME@]HOSTNAME \
  -i PATH_TO_PRIVATE_KEY \
  -o OUTPUT_FILESYSTEM_DIR

Haz los cambios siguientes:

  • USERNAME: tu nombre de usuario
  • HOSTNAME: el nombre de host
  • PATH_TO_PRIVATE_KEY: la ruta a la clave privada
  • OUTPUT_FILESYSTEM_DIR: la ruta del directorio de salida de tu máquina local en el que quieres copiar el sistema de archivos de la máquina de origen.

gcloud

Si la máquina de origen tiene una IP pública, ejecuta el siguiente comando:

./m2c copy gcloud \
  -p PROJECT_ID \
  -z ZONE \
  -n VM_NAME \
  -o OUTPUT_FILESYSTEM_DIR

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto
  • ZONE: la zona de tu VM
  • VM_NAME: el nombre de la VM de origen
  • OUTPUT_FILESYSTEM_DIR: la ruta del directorio de salida en tu máquina local donde quieras copiar el sistema de archivos de la máquina de origen

Si el equipo de origen no tiene una IP pública, puedes hacer una de las siguientes acciones:

  • Si ejecutas la CLI de Migrate to Containers desde una máquina de la misma red interna, usa la marca --internal-ip.
  • Si estás en otra red, usa la marca --tunnel-through-iap.

Para obtener más información sobre estas marcas, consulta la documentación de gcloud.

Una vez completada la copia, habrá una copia del sistema de archivos de la máquina de origen en el directorio de salida especificado.

Reducir el tamaño del sistema de archivos copiado

En función del equipo de origen, el sistema de archivos copiado puede ser muy grande. Cuanto mayor sea la copia, más tiempo tardará en completarse cada operación y, si no hay suficiente espacio, la operación de copia fallará.

La CLI Migrate to Containers aplica filtros para reducir el tamaño de la copia, pero, con la información proporcionada sobre el componente de la aplicación, puedes modificar los filtros para reducir aún más el tamaño de la copia.

Cuando vuelvas a ejecutar el comando copy con los filtros modificados, el contenido del directorio de salida se actualizará según los cambios que hayas aplicado en el archivo de filtro.

Para modificar los filtros predeterminados, sigue estos pasos:

  1. Obtener una lista de los filtros predeterminados:

    ./m2c copy default-filters > filters.txt
    
  2. Edita el archivo filters.txt para eliminar los directorios irrelevantes. El archivo usa el formato de regla de filtro rsync, tal como se especifica en la página de documentación de rsync.

  3. Usa la marca --filters para especificar el archivo de filtro con el comando copy.

    SSH directo

    ./m2c copy ssh [USERNAME@]HOSTNAME \
      -i PATH_TO_PRIVATE_KEY \
      -o OUTPUT_FILESYSTEM_DIR \
      --filters filters.txt
    

    gcloud

    ./m2c copy gcloud \
      -p PROJECT_ID \
      -z ZONE \
      -n VM_NAME \
      -o OUTPUT_FILESYSTEM_DIR \
      --filters filters.txt
    

Crear una copia local del sistema de archivos de la máquina de origen de Windows

En el caso de las máquinas de origen Windows, debes copiar las imágenes de disco en formato VHD o VHDX para el proceso de migración. Sin embargo, la CLI de Migrate to Containers no admite la exportación de imágenes de disco de tu plataforma de origen a tu máquina local.

  • Para exportar el disco de una instancia de máquina virtual (VM) de Compute Engine, primero crea una imagen a partir del disco y, después, exporta la imagen a la máquina local.

  • Para exportar una imagen de Compute Engine, sigue estos pasos:

    1. Exporta la imagen a Cloud Storage con el comando gcloud compute images export:

      gcloud compute images export \
        --export-format vhdx \
        --destination-uri DESTINATION_URI \
        --image IMAGE_NAME
      

      Haz los cambios siguientes:

      • DESTINATION_URI: el URI de Cloud Storage de destino del archivo de imagen exportado.
      • IMAGE_NAME: el nombre de la imagen de disco que se va a exportar.
    2. Descarga la imagen en tu máquina local:

      gcloud storage cp DESTINATION_URI LOCAL_PATH
      

      Haz los cambios siguientes:

      • DESTINATION_URI: el URI de Cloud Storage de destino del archivo de imagen exportado
      • LOCAL_PATH: la ruta a la carpeta local donde quieras descargar la imagen

    Para obtener más información, consulta Exportar una imagen personalizada a Cloud Storage.

  • Para obtener más información sobre cómo exportar imágenes de Amazon EC2, consulta Exportar una instancia como una máquina virtual con Importación/Exportación de VMs.

  • Para obtener más información sobre cómo exportar imágenes de Azure Cloud Compute, consulta el artículo Descargar un VHD de Windows de Azure.

  • Para exportar imágenes de disco de máquinas virtuales de VMware, primero debes seguir los pasos para exportar una imagen a un archivo VMDK. A continuación, convierte el archivo VMDK en un archivo VHD con herramientas de terceros, como qemu-img.

Siguientes pasos