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

La modernización de un componente de aplicación requiere la creación de 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 junto con algunas especificaciones para reducir el tamaño del sistema de archivos copiado.

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

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

SSH directo

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

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

Reemplaza lo siguiente:

  • USERNAME: tu nombre de usuario
  • HOSTNAME: el nombre de host
  • PATH_TO_PRIVATE_KEY: la ruta de acceso a la clave privada.
  • OUTPUT_FILESYSTEM_DIR: la ruta del directorio de salida en tu máquina local en el que deseas 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

Reemplaza lo siguiente:

  • 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 de acceso del resultado del directorio en tu máquina local en el que deseas copiar el sistema de archivos de la máquina de origen.

Si la máquina de origen no tiene una IP pública, puedes realizar una de las siguientes acciones:

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

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

Una vez que se completa la copia, hay una copia del sistema de archivos de la máquina de origen disponible en el directorio de salida especificado.

Reduce el tamaño del sistema de archivos copiado

Según la máquina de origen, el sistema de archivos copiado puede ser muy grande. Cuanto más grande 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 de Migrate to Containers aplica filtros para reducir el tamaño de la copia, pero con un conocimiento determinado del componente de la aplicación, puedes modificar los filtros para reducir aún más el tamaño de la copia.

Cuando vuelves a ejecutar el comando copy con los filtros modificados, el contenido del directorio de salida se actualiza según los cambios que aplicaste en el archivo de filtro.

Para modificar los filtros predeterminados, sigue estos pasos:

  1. Obtén una lista de los filtros predeterminados:

    ./m2c copy default-filters > filters.txt
    
  2. Edita el archivo filters.txt para quitar directorios irrelevantes. El archivo usa el formato de regla de filtro rsync, 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
    

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

En las máquinas de origen de 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 desde la plataforma de origen a la máquina local.

  • Para exportar un disco de instancia de máquina virtual (VM) de Compute Engine, primero debes crear una imagen desde el disco y, luego, exportarla a la máquina local.

  • Para exportar una imagen desde Compute Engine, realiza los siguientes 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
      

      Reemplaza lo siguiente:

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

      gcloud storage cp DESTINATION_URI LOCAL_PATH
      

      Reemplaza lo siguiente:

      • DESTINATION_URI: el destino del URI de Cloud Storage del archivo de imagen exportado
      • LOCAL_PATH: la ruta de acceso a la carpeta local en la que deseas descargar la imagen.

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

  • Para obtener más información sobre la exportación de imágenes de Amazon EC2, consulta Exporta una instancia como una VM con la importación o exportación de VM.

  • Para obtener más información sobre la exportación de imágenes de Azure Cloud Compute, consulta Descarga un VHD de Windows desde Azure.

  • Para exportar imágenes de disco de VM de VMware, primero completa los pasos para exportar una imagen a un archivo VMDK. Luego, convierte el archivo VMDK en un archivo VHD mediante herramientas de terceros, como qemu-img.

¿Qué sigue?