Esporta un'immagine personalizzata in Cloud Storage

Se devi spostare i dati del disco di avvio di Compute Engine al di fuori del tuo progetto Compute Engine, puoi esportare un'immagine del disco di avvio in Cloud Storage come file tar.gz. Se devi creare un'immagine del disco permanente da utilizzare quando crei nuovi dischi permanenti su Compute Engine, leggi Creazione di un'immagine personalizzata.

Puoi eseguire il backup o condividere un'immagine personalizzata esportandola in Cloud Storage. Questo metodo è ideale per condividere singole immagini con progetti che non hanno accesso alle tue immagini. In alternativa, puoi condividere le immagini concedendo il ruolo Utente immagini Compute Engine sull'immagine o sul progetto che la contiene.

Il seguente diagramma mostra alcuni flussi di lavoro tipici per la creazione e il riutilizzo di un'immagine personalizzata.

Creazione e riutilizzo di immagini personalizzate.
Figure 1. Esempi di creazione e riutilizzo di immagini personalizzate

Prima di iniziare

  • Leggi la pagina Immagini.
  • Se nel progetto da cui vuoi esportare l'immagine è definita una policy per immagini attendibili, aggiungi projects/compute-image-import e projects/compute-image-tools all'elenco consentito dei publisher.
  • Per informazioni su come soddisfare i requisiti prima di esportare le immagini, vedi Prerequisiti per l'importazione e l'esportazione di immagini VM.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo di verifica dell'identità per poter accedere a Trusted Cloud by S3NS servizi e API. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.

    gcloud

    1. Installa Google Cloud CLI, quindi accedi a gcloud CLI con la tua identità federata. Dopo aver eseguito l'accesso, inizializza Google Cloud CLI eseguendo il seguente comando:

      gcloud init
    2. Set a default region and zone.

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.

      Installa Google Cloud CLI, quindi accedi a gcloud CLI con la tua identità federata. Dopo aver eseguito l'accesso, inizializza Google Cloud CLI eseguendo il seguente comando:

      gcloud init

    Per saperne di più, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Trusted Cloud .

Limitazioni e restrizioni

Al processo di esportazione delle immagini si applicano le seguenti limitazioni.

Limitazioni generali

Quando esporti un'immagine, viene creata una sessione sulla macchina da cui esporti l'immagine. Questa sessione deve rimanere attiva fino al completamento della procedura di esportazione. Se la sessione termina prima del completamento del processo di esportazione o se il job non va a buon fine, le risorse effimere come dischi temporanei, istanze VM o bucket di archiviazione potrebbero non essere eliminate. In questo caso, devi eliminare manualmente queste risorse effimere.

Viene creato un bucket Cloud Storage chiamato ${PROJECT}-daisy-bkt-${REGION} per le risorse effimere create durante il processo di esportazione nella stessa regione o multiregione del bucket di destinazione. Per gestire il ciclo di vita di queste risorse, consulta la sezione Gestione del ciclo di vita degli oggetti.

Il processo di esportazione utilizza Cloud Build per esportare un'immagine. Una sessione Cloud Build dura al massimo 24 ore. Se l'immagine è molto grande e l'esportazione richiede più di 24 ore, puoi esportarla manualmente.

Limitazioni dei Controlli di servizio VPC

Per i progetti protetti con Controlli di servizio VPC, utilizza uno dei seguenti metodi:

  • esportare dallo stesso progetto in cui si trova l'immagine
  • esportare l'immagine manualmente

Esportare un'immagine con un solo comando

Esporta un'immagine in Cloud Storage

Puoi esportare le immagini utilizzando la consoleTrusted Cloud , Google Cloud CLI o REST.

Console

  1. Nella console Trusted Cloud vai alla pagina Immagini.

    Vai a Immagini

  2. Fai clic sul nome dell'immagine che vuoi esportare per andare alla pagina dei dettagli dell'immagine. Non puoi esportare le immagini pubbliche fornite da Google. Puoi esportare solo le immagini che hai creato o importato in precedenza.

  3. Dalla pagina dei dettagli dell'immagine, fai clic su Esporta per aprire la pagina Esporta immagine.

  4. Nella pagina Esporta immagine, scegli il formato di esportazione dell'immagine.

  5. Scegli la posizione di Cloud Storage in cui esportare l'immagine facendo clic su Sfoglia.

  6. Scegli una posizione Cloud Storage esistente in cui esportare l'immagine. In alternativa, segui le istruzioni per creare un nuovo bucket Cloud Storage, quindi inserisci un nome per il nuovo bucket Cloud Storage.

  7. Dopo aver scelto Cloud Storage, scegli un nome file per l'immagine esportata. Puoi utilizzare il nome file predefinito o sceglierne uno personalizzato.

  8. Dopo aver scelto un Cloud Storage e inserito un nome file per l'immagine, fai clic su Seleziona.

  9. Nella pagina Esporta immagine, fai clic su Esporta. Dopo aver scelto Esporta, la console Trusted Cloud mostra la Cronologia esportazione immagini, dove puoi visualizzare la procedura di esportazione delle immagini. Per ulteriori dettagli sulla procedura di esportazione delle immagini, fai clic sull'ID build Cloud per accedere alla pagina Dettagli esportazione immagini, dove puoi visualizzare e scaricare il log di esportazione delle immagini.

  10. Vai alla pagina Storage per accedere all'immagine esportata.

    Vai ad Archiviazione

gcloud

Il modo preferito per esportare un'immagine in Cloud Storage è utilizzare il comando gcloud compute images export. Questo comando utilizza Daisy per concatenare i vari passaggi necessari per esportare un'immagine.

Il comando gcloud compute images export presuppone che tu abbia già creato un'immagine, ad esempio con il comando gcloud compute images create.

Utilizzando Google Cloud CLI, esegui:

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

Sostituisci quanto segue:

  • DESTINATION_URI: l'URI Cloud Storage di destinazione per il file immagine esportato.
  • IMAGE_NAME: il nome dell'immagine disco da esportare.

Per impostazione predefinita, le immagini vengono esportate nel formato Compute Engine, ovvero un file disk.raw compresso con tar e gzip. Per esportare immagini in altri formati supportati dall'utilità di immagini disco QEMU, puoi utilizzare il flag --export-format. I formati validi includono vmdk, vhdx, vpc, vdi e qcow2.

Esempio

Ad esempio, il seguente comando esporta un'immagine denominata my-image da my-project a un bucket Cloud Storage denominato my-bucket. Per impostazione predefinita, l'immagine viene esportata come disk.raw file e compressa nel formato file tar.gz.

gcloud compute images export \
    --destination-uri gs://my-bucket/my-image.tar.gz \
    --image my-image \
    --project my-project

Per i flag, consulta la documentazione di riferimento di gcloud compute images export.

REST

Invia una richiesta POST all'API Cloud Build.

POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds
{
  "timeout": "7200s",
  "steps":[
    {
      "args":[
        "-timeout=7000s",
        "-source_image=SOURCE_IMAGE",
        "-client_id=api",
        "-format=IMAGE_FORMAT",
        "-destination_uri=DESTINATION_URI"
      ],
      "name":"gcr.io/compute-image-tools/gce_vm_image_export:release",
      "env":[
        "BUILD_ID=$BUILD_ID"
      ]
    }
  ],
  "tags":[
    "gce-daisy",
    "gce-daisy-image-export"
  ]
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene l'immagine che vuoi esportare.
  • SOURCE_IMAGE: il nome dell'immagine da esportare.
  • IMAGE_FORMAT: il formato dell'immagine esportata. I formati validi includono vmdk, vhdx, vpc, vdi e qcow2.
  • DESTINATION_URI: la posizione URI Cloud Storage in cui vuoi esportare il file immagine. Ad esempio, gs://my-bucket/my-exported-image.vmdk.

Per informazioni su altri valori che possono essere inseriti nella sezione args, consulta il paragrafo sui flag facoltativi della pagina GitHub sull'esportazione di immagini VM.

Esempio di risposta

La seguente risposta di esempio è simile all'output restituito:

{
"name": "operations/build/myproject-12345/operation-1578608233418",
"metadata": {
 "@type": "type.googleapis.com/google.devtools.cloudbuild.v1.BuildOperationMetadata",
 "build": {
  "id": "3a2055bc-ccbd-4101-9434-d376b88b8940",
  "status": "QUEUED",
  "createTime": "2019-10-02T18:59:13.393492020Z",
  "steps": [
   {
    "name": "gcr.io/compute-image-tools/gce_vm_image_export:release",
    "env": [
     "BUILD_ID=3a2055bc-ccbd-4101-9434-d376b88b8940"
    ],
    "args": [
     "-timeout=7056s",
     "-source_image=my-image",
     "-client_id=api",
     "-format=vmdk",
     "-destination_uri=gs://my-bucket/my-exported-image.vmdk"
    ]
   }
  ],
  "timeout": "7200s",
  "projectId": "myproject-12345",
  "logsBucket": "gs://123456.cloudbuild-logs.googleusercontent.com",
  "options": {
   "logging": "LEGACY"
  },
  "logUrl": "https://console.cloud.google.com/cloud-build/builds/3a2055bc-ccbd-4101-9434-d376b88b8940?project=123456"
 }
 }

Esistono due modi per monitorare la build:

  • Esegui una richiesta projects.builds.get utilizzando build-id restituito.
  • Esamina i log ospitati all'indirizzo logUrl fornito.

Esporta un'immagine da un progetto utilizzando un account di servizio Compute Engine personalizzato

Durante l'esportazione di un'immagine, nel progetto viene creata un'istanza di macchina virtuale (VM) temporanea. Lo strumento di esportazione delle immagini su questa VM temporanea deve essere autenticato.

Un service account è un'identità associata a una VM. È possibile accedere ai token di accesso del service account tramite il server dei metadati dell'istanza e utilizzarli per autenticare lo strumento di esportazione delle immagini sulla VM.

Per impostazione predefinita, il processo di esportazione utilizza l'agente di servizio Compute Engine predefinito del progetto. Tuttavia, se il account di servizio predefinito di Compute Engine è disattivato nel tuo progetto o se vuoi utilizzare un account di servizio di Compute Engine personalizzato, devi crearne uno e specificarlo per la procedura di esportazione.

Puoi esportare le immagini utilizzando Google Cloud CLI o REST.

gcloud

  1. Crea un service account e assegnagli i ruoli minimi. Per ulteriori informazioni sulla creazione dei service account, vedi Creazione e gestione dei service account.

    Al service account di Compute Engine specificato devono essere assegnati almeno i seguenti ruoli:

    • roles/compute.storageAdmin
    • roles/storage.objectAdmin

    Per ulteriori informazioni, vedi Concedi i ruoli richiesti al service account di Compute Engine.

  2. Utilizza il comando gcloud compute images export per esportare l'immagine.

    gcloud compute images export \
        --destination-uri DESTINATION_URI \
        --image IMAGE_NAME \
        --compute-service-account SERVICE_ACCOUNT_EMAIL

    Sostituisci quanto segue:

    • DESTINATION_URI: l'URI Cloud Storage di destinazione per il file immagine esportato.
    • IMAGE_NAME: il nome dell'immagine disco da esportare.
    • SERVICE_ACCOUNT_EMAIL: l'indirizzo email associato al account di servizio Compute Engine creato nel passaggio precedente.

Esempio

Ad esempio, il seguente comando esporta un'immagine denominata my-image da my-project a un bucket Cloud Storage denominato my-bucket con unaccount di serviziont con l'email image-export-service-account@proj-12345.s3ns-system.iam.gserviceaccount.com. Per impostazione predefinita, l'immagine viene esportata come file disk.raw e compressa nel formato file tar.gz.

gcloud compute images export \
    --destination-uri gs://my-bucket/my-image.tar.gz \
    --image my-image \
    --project my-project \
    --compute-service-account image-export-service-account@proj-12345.s3ns-system.iam.gserviceaccount.com
    

Per i flag, consulta la documentazione di riferimento di gcloud compute images export.

REST

  1. Crea un service account e assegnagli i ruoli minimi. Per ulteriori informazioni sulla creazione dei service account, vedi Creazione e gestione dei service account.

    Al service account di Compute Engine specificato devono essere assegnati almeno i seguenti ruoli:

    • roles/compute.storageAdmin
    • roles/storage.objectAdmin

    Per ulteriori informazioni, vedi Concedi i ruoli richiesti al service account di Compute Engine.

  2. Nell'API, crea una richiesta POST all'API Cloud Build.

    POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds
    {
      "timeout": "7200s",
      "steps":[
        {
          "args":[
            "-timeout=7000s",
            "-source_image=SOURCE_IMAGE",
            "-client_id=api",
            "-format=IMAGE_FORMAT",
            "-destination_uri=DESTINATION_URI",
            "-compute_service_account=SERVICE_ACCOUNT_EMAIL"
          ],
          "name":"gcr.io/compute-image-tools/gce_vm_image_export:release",
          "env":[
            "BUILD_ID=$BUILD_ID"
          ]
        }
      ],
      "tags":[
        "gce-daisy",
        "gce-daisy-image-export"
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto che contiene l'immagine che vuoi esportare.
    • SOURCE_IMAGE: il nome dell'immagine da esportare.
    • IMAGE_FORMAT: il formato dell'immagine esportata. I formati validi includono vmdk, vhdx, vpc, vdi e qcow2.
    • DESTINATION_URI: la posizione URI Cloud Storage in cui vuoi esportare il file immagine. Ad esempio, gs://my-bucket/my-exported-image.vmdk.
    • SERVICE_ACCOUNT_EMAIL: l'indirizzo email associato al account di servizio Compute Engine creato nel passaggio precedente.

Per informazioni su altri valori che possono essere inseriti nella sezione args, consulta il paragrafo sui flag facoltativi della pagina GitHub sull'esportazione di immagini VM.

Esporta un'immagine utilizzando il VPC condiviso

Prima di esportare un'immagine che utilizza un VPC condiviso, devi aggiungere il ruolo compute.networkUser alaccount di serviziot Cloud Build nel progetto da cui esporti le immagini. Per ulteriori informazioni, vedi Concedi i ruoli richiesti al service account Cloud Build.

Puoi esportare l'immagine utilizzando Google Cloud CLI o REST.

gcloud

Utilizza il comando gcloud compute images export per esportare l'immagine.

gcloud compute images export \
    --image IMAGE_NAME \
    --destination-uri DESTINATION_URI \
    --project PROJECT_ID \
    --network NETWORK \
    --subnet SUBNET \
    --zone ZONE

Sostituisci quanto segue:

  • IMAGE_NAME: il nome dell'immagine da esportare.
  • DESTINATION_URI: la posizione URI Cloud Storage in cui vuoi esportare il file immagine.
  • PROJECT_ID: l'ID del progetto in cui si trova l'immagine.
  • NETWORK: il percorso completo di una rete VPC condivisa. Ad esempio projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK_NAME.
  • SUBNET: (Facoltativo) Il percorso completo di una subnet VPC condivisa. Ad esempio projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME.

    La specifica di questa modalità dipende dalla modalità di rete VPC.

    • Se la rete VPC utilizza la modalità legacy, non specificare una subnet.
    • Se la rete VPC utilizza la modalità automatica, la specifica della subnet è facoltativa.
    • Se la rete VPC utilizza la modalità personalizzata, questo campo deve essere specificato.
  • ZONE: (Facoltativo) La zona da utilizzare per l'esportazione. Questa zona deve corrispondere alla regione della subnet. Ad esempio, se SUBNET si trova nella regione us-west1, la zona di esportazione deve essere una delle seguenti: us-west1-a, us-west1-b o us-west1-c.

    Se hai specificato un SUBNET, devi specificare anche la zona.

Ad esempio, il seguente comando esporta un'immagine denominata example-image da my-project a un bucket Cloud Storage denominato my-bucket. In questo esempio, la rete Virtual Private Cloud (my-shared-vp) utilizza una subnet personalizzata (my-custom-subnet). Per impostazione predefinita, l'immagine viene esportata come file disk.raw e compressa nel formato di file tar.gz.

Comando di esempio

gcloud compute images export \
    --image example-image \
    --destination-uri gs://my-bucket/my-image.tar.gz \
    --project my-project \
    --network projects/my-vpc-project/global/networks/my-shared-vpc \
    --subnet projects/my-vpc-project/regions/us-west1/subnetworks/my-custom-subnet \
    --zone us-west1-c
 

REST

  1. Aggiungi l'immagine a Cloud Storage.

  2. Nell'API, crea una richiesta POST all'API Cloud Build.

    POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds
    {
      "timeout": "7200s",
      "steps":[
        {
          "args":[
            "-timeout=7000s",
            "-source_image=SOURCE_IMAGE",
            "-client_id=api",
            "-format=IMAGE_FORMAT",
            "-destination_uri=DESTINATION_URI",
            "-network=NETWORK",
            "-subnet=SUBNET",
            "-zone=ZONE"
          ],
          "name":"gcr.io/compute-image-tools/gce_vm_image_export:release",
          "env":[
            "BUILD_ID=$BUILD_ID"
          ]
        }
      ],
      "tags":[
        "gce-daisy",
        "gce-daisy-image-export"
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto che contiene l'immagine che vuoi esportare.
    • SOURCE_IMAGE: il nome dell'immagine da esportare.
    • IMAGE_FORMAT: il formato dell'immagine esportata. I formati validi includono vmdk, vhdx, vpc, vdi e qcow2.
    • DESTINATION_URI: la posizione URI Cloud Storage in cui vuoi esportare il file immagine. Ad esempio, gs://my-bucket/my-exported-image.vmdk.
    • NETWORK: il percorso completo di una rete VPC condivisa. Ad esempio projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK_NAME.
    • SUBNET: il percorso completo di una subnet VPC condivisa. Ad esempio projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME.

      La specifica di questa modalità dipende dalla modalità di rete VPC.

      • Se la rete VPC utilizza la modalità legacy, non specificare una subnet.
      • Se la rete VPC utilizza la modalità automatica, la specifica della subnet è facoltativa.
      • Se la rete VPC utilizza la modalità personalizzata, questo campo deve essere specificato.
    • ZONE: la zona da utilizzare per l'esportazione. Questa zona deve corrispondere alla regione della subnet. Ad esempio, se SUBNET si trova nella regione us-west1, la zona di esportazione deve essere una delle seguenti: us-west1-a, us-west1-b o us-west1-c.

      Nella maggior parte dei casi, la specifica di una zona è facoltativa. Se è specificato SUBNET, deve essere specificata la zona.

    Per informazioni su altri valori che possono essere inseriti nella sezione args, consulta il paragrafo sui flag facoltativi della pagina GitHub sull'esportazione di immagini VM.

Creare ed esportare un'immagine manualmente

Se i comandi gcloud compute images create e gcloud compute images export non soddisfano i tuoi requisiti, puoi creare ed esportare un'immagine manualmente da un'istanza Compute Engine. Questo processo prevede passaggi discreti per creare prima un'immagine e poi esportarla.

Nell'esempio seguente, tieni presente che il disco creato è denominato image-disk.

Per creare ed esportare un'immagine:

  1. (Facoltativo) Arresta l'istanza a cui è collegato il disco prima di creare lo snapshot. L'arresto dell'istanza garantisce l'integrità dei contenuti del disco nello snapshot.

  2. Crea uno snapshot del disco. Assegna allo snapshot il nome image-snapshot.

    gcloud compute disks snapshot DISK_NAME \
        --snapshot-names image-snapshot

    Sostituisci DISK_NAME con il nome del disco che vuoi utilizzare per creare lo snapshot. Puoi trovare il nome del disco elencando i dischi.

  3. Utilizza lo snapshot image-snapshot per creare un nuovo disco denominato image-disk eseguendo il comando seguente:

    gcloud compute disks create image-disk \
        --source-snapshot image-snapshot
  4. Crea un disco temporaneo denominato temporary-disk per contenere il file tar e specifica che le dimensioni del disco SIZE siano almeno il 50% più grandi del disco immagine.

    Puoi scollegare ed eliminare il disco in un secondo momento.

    gcloud compute disks create temporary-disk \
        --size SIZE

    dove SIZE è la dimensione, in gigabyte o terabyte, del disco temporaneo. Ad esempio, specifica 100GB per creare un disco da 100 gigabyte.

  5. Crea un'istanza e abilita l'ambito storage-rw sull'istanza. Inoltre, collega image-disk e temporary-disk all'istanza come dischi secondari con attributi device-name specifici. Sostituisci VM_NAME con il nome dell'istanza da creare.

    gcloud compute instances create VM_NAME \
        --scopes storage-rw \
        --disk name=image-disk,device-name=image-disk \
        --disk name=temporary-disk,device-name=temporary-disk

    Tieni presente che stai trasmettendo gli ambiti del account di servizio in modo da poter caricare il file su Cloud Storage nei passaggi successivi.

    Se necessario, esamina i dettagli su come avviare una nuova istanza.

  6. Connettiti all'istanza. Sostituisci VM_NAME con il nome dell'istanza a cui connetterti.

    gcloud compute ssh VM_NAME
  7. Formatta e monta il disco temporaneo. La formattazione del disco elimina i contenuti del disco temporaneo.

    sudo mkdir /mnt/tmp
    sudo mkfs.ext4 -F /dev/disk/by-id/google-temporary-disk
    sudo mount -o discard,defaults /dev/disk/by-id/google-temporary-disk /mnt/tmp
  8. (Facoltativo) Monta il disco immagine e apporta ulteriori modifiche prima di creare il file tar. Ad esempio, potresti voler eliminare tutti i file esistenti dalla directory /home se non vuoi che facciano parte dell'immagine. Monta le partizioni del disco che devi modificare, modifica i file sul disco che devi cambiare e poi smonta il disco al termine dell'operazione.

    1. Crea una directory in cui montare il disco o la partizione.

      sudo mkdir /mnt/image-disk
    2. Utilizza il comando ls per determinare quale disco o partizione del disco devi montare.

      ls /dev/disk/by-id/

      Il comando stampa un elenco di ID disco e partizioni. Ad esempio, il seguente disco ha una tabella di partizione con una partizione. L'ID google-image-disk punta al disco completo da cui vuoi creare un'immagine. L'ID google-image-disk-part1 punta alla prima partizione di questo disco. Monta la partizione se devi apportare modifiche al disco, quindi crea l'immagine dal disco completo.

      google-image-disk
      google-image-disk-part1
      
    3. Monta il disco o la partizione. Se il disco ha una tabella di partizione, monta le singole partizioni del disco. Ad esempio, monta google-image-disk-part1.

      sudo mount /dev/disk/by-id/google-image-disk-part1 /mnt/image-disk

      In alternativa, se il disco è formattato in formato non elaborato senza tabella di partizione, monta l'intero disco google-image-disk.

      sudo mount /dev/disk/by-id/google-image-disk /mnt/image-disk
    4. Modifica i file nella directory /mnt/image-disk per configurare i file sul disco. Ad esempio, potresti rimuovere il file /mnt/image-disk/home/[USER]/.ssh/authorized_keys per proteggere le tue chiavi SSH dalla condivisione.

    5. Dopo aver terminato la modifica dei file, smonta il disco.

      sudo umount /mnt/image-disk/
  9. Crea un file tar dell'immagine.

    Al termine della personalizzazione dei file sul disco immagine, crea un file di disco non elaborato sul disco temporaneo. Il nome dell'immagine del disco non elaborata deve essere "disk.raw":

     sudo dd if=/dev/disk/by-id/google-image-disk of=/mnt/tmp/disk.raw bs=4096

    Quindi, crea il file tar.gz:

    cd /mnt/tmp

    sudo tar czvf myimage.tar.gz disk.raw

    Questo comando crea un'immagine dell'istanza nella seguente posizione:

    /mnt/tmp/myimage.tar.gz

  10. Carica l'immagine in Cloud Storage.

    Per caricare il file tar su Cloud Storage, utilizza Google Cloud CLI preinstallata sulla tua istanza.

    1. Crea un bucket utilizzando gcloud CLI.

      Prima di creare il bucket, assicurati di esaminare le linee guida per la denominazione di bucket e oggetti. Quindi, crea il bucket utilizzando il seguente comando. Sostituisci BUCKET_NAME con il nome del bucket da creare.

      me@example-instance:~$ 
      gcloud storage buckets create gs://BUCKET_NAME
    2. Copia il file nel nuovo bucket. Sostituisci BUCKET_NAME con il nome del bucket in cui copiare il file.

      me@example-instance:~$ 
      gcloud storage cp /mnt/tmp/myimage.tar.gz gs://BUCKET_NAME

Hai esportato il file in Cloud Storage. Ora puoi condividere l'immagine con altre persone o utilizzare il file tar per aggiungere una nuova immagine a un progetto della consoleTrusted Cloud .

Passaggi successivi