Copia il file system della macchina di origine

La modernizzazione di un componente dell'applicazione richiede la creazione di una copia del file system della macchina di origine.

In questa pagina vengono descritti i passaggi necessari per copiare il file system della macchina di origine, nonché alcune specifiche per ridurre le dimensioni del file system copiato.

Crea una copia locale del file system della macchina di origine Linux

L'interfaccia a riga di comando Migrate to Containers supporta l'accesso alle macchine di origine tramite connessione SSH diretta o gcloud.

SSH diretto

Per copiare utilizzando l'accesso SSH diretto, esegui questo comando:

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

Sostituisci quanto segue:

  • USERNAME: il tuo nome utente
  • HOSTNAME: il nome host
  • PATH_TO_PRIVATE_KEY: il percorso della chiave privata
  • OUTPUT_FILESYSTEM_DIR: il percorso della directory di output sulla macchina locale in cui vuoi copiare il file system della macchina di origine

gcloud

Se la macchina di origine ha un IP pubblico, esegui questo comando:

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto
  • ZONE: la zona della VM
  • VM_NAME: il nome della VM di origine
  • OUTPUT_FILESYSTEM_DIR: il percorso dell'output della directory sulla macchina locale in cui vuoi copiare il file system della macchina di origine

Se la macchina di origine non ha un IP pubblico, puoi procedere in uno dei seguenti modi:

  • Se esegui l'interfaccia a riga di comando Migrate to Containers da una macchina nella stessa rete interna, utilizza il flag --internal-ip.
  • Se stai eseguendo su una rete diversa, utilizza il flag --tunnel-through-iap.

Per ulteriori informazioni su questi flag, consulta la documentazione di gcloud.

Al termine della copia, una copia del file system della macchina di origine è disponibile nella directory di output specificata.

Riduci le dimensioni del file system copiato

A seconda del computer di origine, il file system copiato potrebbe essere molto grande. Maggiore è la dimensione della copia, maggiore è il tempo necessario per il completamento di ogni operazione e, se lo spazio non è sufficiente, l'operazione di copia non andrà a buon fine.

L'interfaccia a riga di comando di Migrate to Containers applica filtri per ridurre le dimensioni della copia, ma con una conoscenza del componente dell'applicazione, puoi modificare i filtri per ridurre ulteriormente le dimensioni della copia.

Quando esegui di nuovo il comando copy con i filtri modificati, i contenuti della directory di output vengono aggiornati in base alle modifiche applicate al file del filtro.

Per modificare i filtri predefiniti:

  1. Visualizza un elenco dei filtri predefiniti:

    ./m2c copy default-filters > filters.txt
    
  2. Modifica il file filters.txt per rimuovere le directory non pertinenti. Il file utilizza il formato delle regole di filtro rsync, come specificato nella pagina della documentazione di rsync.

  3. Utilizza il flag --filters per specificare il file del filtro con il comando copy.

    SSH diretto

    ./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 locale del file system del computer di origine Windows

Per i computer di origine Windows, devi copiare le immagini disco in formato VHD o VHDX per il processo di migrazione. Tuttavia, l'interfaccia a riga di comando di Migrate to Containers non supporta l'esportazione di immagini disco dalla piattaforma di origine alla macchina locale.

  • Per esportare un disco di un'istanza di una macchina virtuale (VM) Compute Engine, devi prima creare un'immagine dal disco, quindi esportare l'immagine nella macchina locale.

  • Per esportare un'immagine da Compute Engine, segui questi passaggi:

    1. Esporta l'immagine in Cloud Storage utilizzando il comando gcloud compute images export:

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

      Sostituisci quanto segue:

      • DESTINATION_URI: la destinazione URI Cloud Storage per il file immagine esportato.
      • IMAGE_NAME: il nome dell'immagine disco da esportare.
    2. Scarica l'immagine sulla tua macchina locale:

      gsutil cp DESTINATION_URI LOCAL_PATH
      

      Sostituisci quanto segue:

      • DESTINATION_URI: la destinazione URI Cloud Storage del file immagine esportato
      • LOCAL_PATH: il percorso della cartella locale in cui vuoi scaricare l'immagine

    Per maggiori informazioni, vedi Esportare un'immagine personalizzata in Cloud Storage.

  • Per ulteriori informazioni sull'esportazione delle immagini Amazon EC2, consulta Esportazione di un'istanza come VM utilizzando l'importazione/esportazione delle VM.

  • Per maggiori informazioni sull'esportazione delle immagini di Azure Cloud Compute, consulta Scaricare un VHD Windows da Azure.

  • Per esportare le immagini del disco VM VMware, devi prima completare i passaggi per esportare un'immagine in un file VMDK. Poi, converti il file VMDK in un file VHD utilizzando strumenti di terze parti come qemu-img.

Passaggi successivi