Crea immagini macchina


Utilizza un'immagine macchina per archiviare ogni configurazione, metadato, autorizzazione e dato di più dischi per un'istanza VM in esecuzione su Compute Engine. L'istanza VM che utilizzi per creare un'immagine macchina è detta istanza VM di origine.

Per informazioni su quando e come utilizzare le immagini macchina, consulta Immagini macchina.

Questo documento descrive i passaggi per creare un'immagine macchina da un'istanza VM di origine.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud. 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 Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

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

Limitazioni e restrizioni

  • Puoi creare un'immagine macchina di un'istanza specifica al massimo sei volte ogni 60 minuti.
  • Puoi proteggere un'immagine macchina utilizzando Cloud Key Management Service (Cloud KMS) o una chiave di crittografia fornita dal cliente (CSEK). La chiave di crittografia protegge i contenuti dei dischi. Tuttavia, i metadati non sono protetti.
  • Se utilizzi una CSEK per proteggere l'immagine della macchina, una copia completa di tutti i dati del disco viene archiviata durante la generazione dell'immagine della macchina. In tutti gli altri scenari, i dati del disco vengono archiviati in copie differenziali.
  • Non puoi creare immagini macchina da VM di origine che:

    • Avere più di 200 TB di dischi collegati.
    • Non avere dischi collegati.
    • Avere volumi Hyperdisk collegati.
    • Utilizza un tipo di macchina C3D, H3, A3 o Z3

Proprietà di istanze e dischi non supportate dall'immagine macchina

Quando crei immagini macchina da istanze VM o crei istanze VM da immagini macchina, le seguenti proprietà di istanze e dischi non vengono conservate o ripristinate:

  • disks.architecture
  • disks.description
  • disks.labels
  • disks.locked
  • disks.multiWriter
  • disks.onUpdateAction
  • disks.provisionedIops
  • disks.shieldedInstanceInitialState
  • disks.sourceImage
  • disks.sourceImageEncryptionKey
  • disks.sourceInstantSnapshot
  • disks.sourceSnapshot
  • disks.sourceSnapshotEncryptionKey
  • privateIpv6GoogleAccess
  • resourceManagerTags
  • resourcePolicies
  • secure_tag
  • shieldedInstanceConfig

Creazione di un'immagine macchina da una VM

Puoi creare immagini macchina utilizzando la console Google Cloud, la Google Cloud CLI o REST.

Per creare un'immagine macchina, sono necessarie le seguenti informazioni:

  • Un nome per l'immagine macchina che vuoi creare.
  • Il nome dell'istanza VM di origine.
  • La zona in cui si trova l'istanza VM di origine.
  • Una descrizione facoltativa.
  • Un storageLocation facoltativo. Se non specifichi una posizione, la posizione di archiviazione predefinita è la posizione di Cloud Storage multiregionale dell'istanza VM di origine.
  • Una chiave di crittografia facoltativa. Puoi scegliere tra una chiave di proprietà di Google e gestita da Google, una chiave di Cloud Key Management Service (Cloud KMS) o una chiave di crittografia fornita dal cliente (CSEK). Se non viene specificata alcuna chiave di crittografia, le immagini macchina vengono criptate utilizzando una chiave di proprietà di Google e gestita da Google.
  • Se vuoi utilizzare un'immagine macchina per la clonazione e gli snapshot delle istanze, rimuovi le informazioni sul sistema operativo e sulle app univoche per l'istanza prima di generare l'immagine macchina da un'istanza. Ad esempio, per le istanze VM Windows, utilizza GCESysprep per preparare il sistema alla replica.

Console

  1. Nella console Google Cloud, vai alla pagina Immagini macchina.

    Vai a Immagini macchina

  2. Fai clic su Crea immagine della macchina.

  3. Specifica un nome per l'immagine macchina.

  4. (Facoltativo) Fornisci una Descrizione.

  5. Seleziona l'istanza VM di origine.

  6. (Facoltativo) Specifica dove archiviare l'immagine della macchina. Scegli tra lo spazio di archiviazione multiregionale o regionale. Per ulteriori informazioni sulla posizione, consulta Posizione di archiviazione delle immagini macchina.

  7. (Facoltativo) Seleziona un metodo di crittografia.

  8. Fai clic su Crea.

gcloud

Utilizza il comando gcloud compute machine-images create per creare un'immagine macchina da un'istanza.

gcloud compute machine-images create MACHINE_IMAGE_NAME \
    --source-instance=SOURCE_VM_NAME

Sostituisci quanto segue:

  • MACHINE_IMAGE_NAME: il nome dell'immagine della macchina che vuoi creare.
  • SOURCE_VM_NAME: il nome dell'istanza VM di origine da cui vuoi creare l'immagine.

Esempio

Ad esempio, puoi utilizzare il seguente comando gcloud per creare un'immagine macchina denominata my-machine-image da un'istanza di origine denominata my-instance:

gcloud compute machine-images create my-machine-image  \
    --source-instance=my-instance

Il processo richiede alcuni minuti. Quando viene creata l'immagine macchina, viene visualizzato un output simile al seguente:

Created [https://www.googleapis.com/compute/v1/projects/project-12345/global/machineImages/my-machine-image].
NAME               STATUS
my-machine-image   READY

REST

Nell'API, crea una richiesta POST al metodo machineimages.insert. Nel corpo della richiesta, includi la seguente richiesta POST:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/machineImages

{
  "name": "MACHINE_IMAGE_NAME",
  "sourceInstance": "SOURCE_INSTANCE_URL"
}

Sostituisci quanto segue:

  • PROJECT_ID: ID progetto.
  • MACHINE_IMAGE_NAME: il nome dell'immagine della macchina che vuoi creare.
  • SOURCE_INSTANCE_URL: URL completo o parziale dell'istanza VM di origine che vuoi utilizzare per creare l'immagine macchina. Ad esempio, se hai un'istanza di origine denominata my-instance in un progetto denominato myProject. I seguenti URL sono validi:

    • https://www.googleapis.com/compute/v1/projects/myProject/global/instances/my-instance
    • projects/myProject/global/instances/my-instance
    • global/instances/my-instance

Passaggi successivi