Utilizza un'immagine macchina per archiviare tutte le configurazioni, i metadati, le autorizzazioni e i dati di uno o più dischi per l'istanza di una VM in esecuzione su Compute Engine. Per informazioni su quando e come utilizzare le immagini macchina, vedi Immagini macchina.
Questo documento descrive i passaggi da seguire per importare un'immagine macchina da un'appliance virtuale.
Prima di iniziare
- Se nel progetto in cui vuoi importare l'immagine macchina è definita una policy per immagini attendibili, aggiungi
projects/compute-image-import
eprojects/compute-image-tools
all'elenco consentito dei publisher. - Se stai importando un'appliance virtuale da un altro progetto, vedi Importazione tra progetti.
- Esamina i requisiti della VM di origine e del file OVF nella guida di Compute Engine sull'importazione di appliance virtuali.
- Per informazioni su come soddisfare i requisiti prima di importare le immagini macchina, vedi Prerequisiti per l'importazione e l'esportazione di immagini VM.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API di 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:
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
- Puoi condividere un'immagine macchina tra progetti diversi. Tuttavia, le reti VPC condivise non sono supportate.
- Questa funzionalità non è supportata per i progetti protetti con Controlli di servizio VPC.
- Non è possibile creare immagini macchina da VM di origine a cui sono collegati dischi per una capacità superiore a 200 TB.
MACHINE_IMAGE_NAME
: il nome dell'immagine macchina da importare.SOURCE_URI
: il percorso del file OVA o OVF su Cloud Storage.OS
: il sistema operativo specificato nel file OVA. Per impostazione predefinita, questo flag è facoltativo, ma in alcuni casi potrebbe essere obbligatorio. Ti consigliamo di inserirlo.Carica l'appliance virtuale in Cloud Storage.
Invia una richiesta
POST
al metodoprojects.builds.create
.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout": "7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Sostituisci i seguenti valori:
PROJECT_ID
: l'ID del progetto in cui va importato il file OVA.MACHINE_IMAGE_NAME
: il nome dell'immagine macchina da importare. Ad esempio,my-machine-image
.SOURCE_URI
: URI del file OVA o una directory contenente pacchetti OVF archiviati in Cloud Storage. Ad esempio,gs://my-bucket/my-instance.ova
.OS
: il sistema operativo specificato nel file OVA. Ad esempio,ubuntu-1604
. Per impostazione predefinita, questo flag è facoltativo, ma in alcuni casi potrebbe essere obbligatorio. Ti consigliamo di inserirlo.
Per informazioni su altri valori che possono essere inseriti nella sezione
args
, consulta il paragrafo sui flag facoltativi della pagina GitHub sull'importazione di file OVF in Compute Engine.- Sistema operativo:
Ubuntu 1404
- CPU:
2 CPUs
- Memoria:
2048 MB
- Sistema operativo:
Ubuntu 1404
- CPU:
2 CPUs
- Memoria:
2048 MB
- Sistema operativo:
Ubuntu 1404
- Rete:
custom-vpc-network
- Subnet:
company-vpc-us-east1-c
- Zona:
us-east1-c
- Sistema operativo:
Ubuntu 1404
- Rete:
custom-vpc-network
- Subnet:
company-vpc-us-east1-c
- Zona:
us-central1-c
Aggiungi l'appliance virtuale a Cloud Storage.
Il processo di importazione richiede l'installazione di gestori di pacchetti sul sistema operativo dell'immagine macchina. Questi gestori di pacchetti potrebbero dover effettuare richieste a repository di pacchetti esterni a Google Cloud. Per consentire l'accesso per questi aggiornamenti, devi configurare Cloud NAT. Per ulteriori informazioni, vedi Crea una configurazione NAT utilizzando il router Cloud.
Configura l'accesso privato Google. Per ulteriori informazioni, vedi Configurazione dell'accesso privato Google.
Importa l'immagine macchina utilizzando Google Cloud CLI o l'API Cloud Build.
Quando importi un'immagine macchina da un'appliance virtuale, nel progetto vengono create VM temporanee. Per assicurarti che a queste VM temporanee non vengano assegnati indirizzi IP esterni, devi specificare un flag o argomento aggiuntivo.
Per ulteriori informazioni sul flag o argomento obbligatorio, fai clic sulle schede seguenti:
MACHINE_IMAGE_NAME
: il nome dell'immagine macchina da importare.SOURCE_URI
: l'URI del file OVA o OVF su Cloud Storage. Ad esempio,gs://my-bucket/Ubuntu.ova
.OS
: il sistema operativo specificato nel file OVA. Per impostazione predefinita, questo flag è facoltativo, ma in alcuni casi potrebbe essere obbligatorio. Ti consigliamo di inserirlo. Per un elenco dei valori supportati, vedi le opzioni del flag--os
per il comandogcloud compute machine-images import
.ZONE
: la zona in cui importare l'immagine macchina. Se non la specifichi, viene utilizzata la zona predefinita per il progetto.PROJECT_ID
: l'ID del progetto in cui vuoi importare l'immagine macchina.MACHINE_IMAGE_NAME
: il nome dell'immagine macchina da importare. Ad esempio,my-machine-image
.SOURCE_URI
: l'URI del file OVA archiviato in Cloud Storage. Ad esempio,gs://my-bucket/my-machine.ova
.OS
: il sistema operativo specificato nel file OVA. Ad esempio,ubuntu-1604
. Per impostazione predefinita, questo flag è facoltativo, ma in alcuni casi potrebbe essere obbligatorio. Ti consigliamo di inserirlo. Per un elenco dei valori supportati, vedi le opzioni del flag--os
per il comandogcloud compute instances import
.ZONE
: la zona in cui importare l'immagine macchina.Aggiungi l'appliance virtuale a Cloud Storage.
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.objectViewer
Questi ruoli minimi sono necessari per il service account specificato con il flag
--compute-service-account
. Per ulteriori informazioni, vedi Concedi i ruoli richiesti al service account di Compute Engine.Utilizza il comando
gcloud compute machine-images import
per importare un'immagine macchina da appliance virtuali.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=gs:SOURCE_URI \ --os=OS \ --compute-service-account=TEMP_SERVICE_ACCOUNT_EMAIL \ --service-account=SERVICE_ACCOUNT_EMAIL \ --scopes=SCOPES
Sostituisci i seguenti valori:
MACHINE_IMAGE_NAME
: il nome dell'immagine macchina da importare.SOURCE_URI
: il percorso del file OVA o OVF su Cloud Storage.OS
: il sistema operativo specificato nel file OVA. Per impostazione predefinita, questo flag è facoltativo, ma in alcuni casi potrebbe essere obbligatorio. Ti consigliamo di inserirlo.TEMP_SERVICE_ACCOUNT_EMAIL
: l'indirizzo email associato al service account personalizzato creato nel passaggio precedente. Questo service account viene utilizzato dalle VM temporanee. Se non viene specificato, la VM utilizza il service account di Compute Engine predefinito.SERVICE_ACCOUNT_EMAIL
: l'indirizzo email associato al service account personalizzato da associare a qualsiasi VM creata a partire da questa immagine macchina. Non ci sono limitazioni relative alle autorizzazioni per questo service account, che puoi personalizzare in base alle tue esigenze. Se non viene specificato un service account, alle VM viene associato quello predefinito di Compute Engine.SCOPES
: specifica il livello di accesso per l'opzione--service-account
. Se non viene specificato, vengono utilizzati gli ambiti predefiniti. Per ulteriori informazioni, vedi il flag--scopes
.
Aggiungi l'appliance virtuale a Cloud Storage.
Crea un service account e assegnagli i ruoli minimi. Per ulteriori informazioni sulla creazione dei service account, consulta Creazione di service account.
Al service account di Compute Engine specificato devono essere assegnati almeno i seguenti ruoli:
roles/compute.storageAdmin
roles/storage.objectViewer
Questi ruoli minimi sono necessari per il service account specificato con l'argomento
-compute-service-account
. Per ulteriori informazioni, vedi Concedi i ruoli richiesti al service account di Compute Engine.Invia una richiesta
POST
al metodoprojects.builds.create
utilizzando l'API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-zone=ZONE", "-compute-service-account=TEMP_SERVICE_ACCOUNT_EMAIL", "-service-account=SERVICE_ACCOUNT_EMAIL", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Sostituisci i seguenti valori:
PROJECT_ID
: l'ID del progetto in cui vuoi importare l'immagine macchina.MACHINE_IMAGE_NAME
: il nome dell'immagine macchina da importare. Ad esempio,my-machine-image
.SOURCE_URI
: l'URI del file OVA archiviato in Cloud Storage. Ad esempio,gs://my-bucket/my-machine.ova
.OS
: il sistema operativo specificato nel file OVA. Ad esempio,ubuntu-1604
. Per impostazione predefinita, questo flag è facoltativo, ma in alcuni casi potrebbe essere obbligatorio. Ti consigliamo di inserirlo. Per un elenco dei valori supportati, vedi le opzioni del flag--os
per il comandogcloud compute instances import
.ZONE
: la zona in cui importare l'immagine macchina.TEMP_SERVICE_ACCOUNT_EMAIL
: l'indirizzo email associato al service account personalizzato creato nel passaggio precedente. Questo service account viene utilizzato dalle VM temporanee. Se non viene specificato, la VM utilizza il service account di Compute Engine predefinito.SERVICE_ACCOUNT_EMAIL
: l'indirizzo email associato al service account personalizzato da associare a qualsiasi VM creata a partire da questa immagine macchina. Non ci sono limitazioni relative alle autorizzazioni per questo service account, che puoi personalizzare in base alle tue esigenze. Se non viene specificato un service account, alle VM viene associato quello predefinito di Compute Engine.SCOPES
: specifica il livello di accesso per l'opzione--service-account
. Se non viene specificato, vengono utilizzati gli ambiti predefiniti. Per ulteriori informazioni, vedi il flag--scopes
.
- Scopri di più sulle immagini macchina.
- Crea istanze di VM a partire da immagini macchina.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Limitazioni e restrizioni
Sistemi operativi supportati
Per informazioni sul supporto dei sistemi operativi, vedi Dettagli del sistema operativo.
Importa immagini macchina
È possibile importare immagini macchina da appliance virtuali utilizzando Google Cloud CLI o l'API Cloud Build.
gcloud
Utilizza il comando
gcloud compute machine-images import
per importare un'immagine macchina da appliance virtuali.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=gs:SOURCE_URI \ --os=OS
Sostituisci i seguenti valori:
Esempio
Ad esempio, puoi utilizzare il seguente comando
gcloud
per importare un'immagine macchina denominatamy-machine-image
da un file OVA di origine denominatomy-ova
che è archiviato nella directorygs://my-bucket
ed esegue il sistema operativocentos-7
:gcloud compute machine-images import my-machine-image \ --source-uri=gs://my-bucket/my-ova/ \ --os=centos-7
REST
Importa immagini macchina eseguendo l'override dei file OVF
Quando importi un'immagine macchina da un'appliance virtuale, puoi eseguire l'override delle impostazioni presenti nel file OVF. Ad esempio, puoi modificare la configurazione della CPU o della memoria oppure utilizzare una rete personalizzata.
CPU e memoria personalizzate
Per eseguire l'override della configurazione della CPU o della memoria specificata nel file OVF, completa i seguenti passaggi:
gcloud
Per eseguire l'override della configurazione della CPU o della memoria specificata nel file OVF, segui i passaggi di Google Cloud CLI per importare un'immagine macchina e specifica i flag
--custom-cpu
e--custom-memory
.Esempio
I seguenti override delle impostazioni presenti nel file OVF vanno applicati a un'immagine macchina denominata
my-machine-image
:Per importare
my-machine-image
con questi override, esegui il seguente comando:gcloud compute machine-images import my-machine-image \ --os=ubuntu-1404 --source-uri=gs://my-bucket/Ubuntu.ova \ --custom-cpu=2 --custom-memory=2048MB
REST
Per eseguire l'override della configurazione della CPU o della memoria specificata nel file OVF, segui i passaggi dell'API Compute Engine per importare un'immagine macchina e specifica l'argomento
-machine-type
.-machine-type
rappresenta un tipo di macchina predefinita o un tipo di macchina personalizzata della serie N1 da utilizzare.Esempio
I seguenti override delle impostazioni presenti nel file OVF vanno applicati a un'immagine macchina denominata
my-machine-image
nel progettomy-project
:Per importare
my-machine-image
con questi override, invia la seguente richiesta all'API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/my-project/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=my-machine-image", "-ovf-gcs-path=gs://my-bucket/Ubuntu.ova", "-os=ubuntu-1404", "-machine-type=custom-2-2048", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Reti personalizzate
Per eseguire l'override della configurazione di rete specificata nel file OVF, completa i seguenti passaggi:
gcloud
Per configurare una rete personalizzata, segui i passaggi di Google Cloud CLI per importare un'immagine macchina e specifica un flag
--network
. Se la rete è configurata con una modalità subnet personalizzata, devi specificare anche i flag--subnet
e--zone
.Esempio
I seguenti override delle impostazioni presenti nel file OVF vanno applicati a un'immagine macchina denominata
my-machine-image
:Per importare
my-machine-image
con questi override, esegui il seguente comando di esempio:gcloud compute machine-images import my-machine-image \ --os=ubuntu-1404 \ --source-uri=gs://my-bucket/Ubuntu.ova \ --network=custom-vpc-network \ --subnet=company-vpc-us-east1-c \ --zone=us-east1-c
REST
Per utilizzare una rete personalizzata, segui i passaggi REST per importare un'immagine macchina e specifica un argomento
-network
. Se la rete è configurata con una modalità subnet personalizzata, devi specificare anche gli argomenti-subnet
e-zone
.Esempio
I seguenti override delle impostazioni presenti nel file OVF vanno applicati a un'immagine macchina denominata
my-machine-image
:Per importare
my-machine-image
con questi override, invia la seguente richiesta all'API Compute Engine.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=my-machine-image", "-ovf-gcs-path=gs://my-bucket/Ubuntu.ova", "-os=ubuntu-1404", "-zone=us-central1-c", "-network=custom-vpc-network", "-subnet=company-vpc-us-east1-c", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUsILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Sostituisci
PROJECT_ID
con l'ID progetto.Importa un'immagine macchina all'interno di una rete che non consente indirizzi IP esterni
Per importare un'immagine macchina utilizzando una rete che non consente indirizzi IP esterni, segui questi passaggi:
gcloud
Utilizza il comando
gcloud compute machine-images import
con il flag--no-address
.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=SOURCE_URI \ --os=OS \ --zone=ZONE \ --no-address
Sostituisci i seguenti valori:
REST
Invia una richiesta
POST
al metodoprojects.builds.create
utilizzando l'API Cloud Build e specificando l'argomento-no-external-ip
.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-zone=ZONE", "-no-external-ip", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Sostituisci i seguenti valori:
Importa un'immagine macchina utilizzando service account personalizzati
Durante l'importazione di un'immagine macchina, nel progetto vengono create istanze di macchine virtuali (VM) temporanee. Lo strumento di importazione presente su queste VM temporanee 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 della VM e utilizzarli per autenticare lo strumento di importazione presente sulla VM.
Per impostazione predefinita, il processo di importazione utilizza il service account predefinito di Compute Engine. Tuttavia, se il service account predefinito di Compute Engine è disattivato nel tuo progetto o se vuoi utilizzare un service account di Compute Engine personalizzato, devi crearne uno e specificarlo per la procedura di importazione.
gcloud
REST
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-11 UTC.
-