Utilizza un'immagine macchina per archiviare tutti configurazione, metadati, autorizzazioni e dati da uno o più dischi per una VM su Compute Engine. Per informazioni su come e quando utilizzare immagini macchina, consulta Immagini macchina.
Questo documento descrive la procedura per importare un'immagine macchina da un appliance virtuale.
Prima di iniziare
- Se il progetto in cui vuoi importare l'immagine della macchina ha un
norme relative alle immagini attendibili
definita, aggiungi
projects/compute-image-import
eprojects/compute-image-tools
all'elenco di quelli autorizzati di publisher. - Se importi un'appliance virtuale da un progetto diverso, consulta Importazione da più progetti.
- Rivedi requisiti dei file OVF e VM di origine nella guida all'importazione delle appliance virtuali in Compute Engine.
- Per scoprire come soddisfare i requisiti prima di importare le immagini macchina, vedi Prerequisiti per l'importazione e l'esportazione di una VM immagini.
-
Se non l'hai ancora fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione
Compute Engine come segue.
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Puoi condividere un'immagine macchina tra progetti. Tuttavia, reti VPC condivise non sono supportate.
- Questa funzionalità non è supportata per i progetti protetti con Controlli di servizio VPC.
- Le immagini macchina non possono essere create da VM di origine che hanno più di 200 TB di dischi collegati.
MACHINE_IMAGE_NAME
: nome della macchina che vuoi importare.SOURCE_URI
: percorso del file OVA o OVF su Cloud Storage.OS
: sistema operativo del file OVA. Questo è facoltativo per impostazione predefinita, ma in alcuni casi potrebbe essere obbligatorio. Me ti consigliamo di fornire questo flag.Carica l'appliance virtuale su Cloud Storage.
Invia una richiesta
POST
a 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", "-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 quanto segue:
PROJECT_ID
: ID del progetto che in cui vuoi importare il file OVA.MACHINE_IMAGE_NAME
: nome della macchina dell'immagine da importare. Ad esempio,my-machine-image
.SOURCE_URI
: URI del file OVA o di un contenente pacchetti OVF archiviati in Cloud Storage. Ad esempio,gs://my-bucket/my-instance.ova
.OS
: sistema operativo del file OVA. Ad esempio,ubuntu-1604
. Questo flag è facoltativo per impostazione predefinita, ma potrebbe in alcuni casi. Ti consigliamo di fornire questo flag.
Per altri valori di
args
che possono essere forniti, consulta la sezione facoltativa della console Pagina GitHub di importazione OVF di 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 dei gestori di pacchetti sul per l'immagine della macchina. Questi gestori dei pacchetti potrebbero dover effettuare richieste a repository di pacchetti esterni a Google Cloud. Per consentire l'accesso a 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 della macchina utilizzando Google Cloud CLI o l'API Cloud Build.
Quando importi un'immagine macchina da un'appliance virtuale, le VM temporanee creato nel progetto. Per assicurarti che queste VM temporanee non vengano assegnate indirizzi IP esterni, devi specificare un flag o un argomento aggiuntivo.
Per ulteriori informazioni sul flag o sull'argomento richiesto, fai clic seguenti schede:
MACHINE_IMAGE_NAME
: nome della macchina che vuoi importare.SOURCE_URI
: URI di il tuo file OVA o OVF su Cloud Storage. Ad esempio:gs://my-bucket/Ubuntu.ova
.OS
: sistema operativo del file OVA. Questo è facoltativo per impostazione predefinita, ma in alcuni casi potrebbe essere obbligatorio. Me ti consigliamo di fornire questo flag. Per un elenco dei valori supportati, vedi Opzioni per--os
flag per il comandogcloud compute machine-images import
.ZONE
: il zona in cui importare dell'immagine macchina. Se viene lasciato vuoto, viene utilizzata la zona predefinita per il progetto.PROJECT_ID
: l'ID del progetto che in cui vuoi importare l'immagine macchina.MACHINE_IMAGE_NAME
: il nome dell'immagine della macchina da importare. Ad esempio,my-machine-image
.SOURCE_URI
: l'URI del file OVA in Cloud Storage. Ad esempio:gs://my-bucket/my-machine.ova
.OS
: il sistema operativo del file OVA. Ad esempio,ubuntu-1604
. Questo flag è facoltativo per impostazione predefinita, ma potrebbe in alcuni casi. Ti consigliamo di fornire questo flag. Per un elenco dei valori supportati, vedi Opzioni per--os
flag per il comandogcloud compute instances import
.ZONE
: il zona in cui importare dell'immagine macchina.Aggiungi l'appliance virtuale a Cloud Storage.
Creare un account di servizio e assegnare i ruoli minimi. Per ulteriori informazioni sulla creazione degli account di servizio, consulta Creare e gestire gli account di servizio.
Come minimo, l'account di servizio Compute Engine specificato deve avere seguenti ruoli assegnati:
roles/compute.storageAdmin
roles/storage.objectViewer
Questi ruoli minimi sono necessari per l'account di servizio specificato per
--compute-service-account
flag. Per ulteriori informazioni, vedi Concessione ruoli richiesti all'account di servizio Compute Engine.Utilizza la 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 quanto segue:
MACHINE_IMAGE_NAME
: nome della macchina che vuoi importare.SOURCE_URI
: percorso del file OVA o OVF su Cloud Storage.OS
: sistema operativo del file OVA. Questo è facoltativo per impostazione predefinita, ma in alcuni casi potrebbe essere obbligatorio. Me ti consigliamo di fornire questo flag.TEMP_SERVICE_ACCOUNT_EMAIL
: l'email associato al servizio personalizzato creato nel passaggio precedente. Questo account di servizio viene utilizzato dalle VM temporanee. Se non specificata, la VM utilizza Compute Engine predefinito l'account di servizio.SERVICE_ACCOUNT_EMAIL
: l'email indirizzo associato all'account di servizio personalizzato da collegare a qualsiasi VM creata da questa immagine macchina. Non ci sono limitazioni di autorizzazione per questo account di servizio, puoi personalizzarlo in base alle tue esigenze. Se non specificato, l'account di servizio Compute Engine predefinito è collegato alla VM.SCOPES
: specifica il livello di accesso per Opzione--service-account
. Se non specificati, vengono utilizzati gli ambiti predefiniti. Per ulteriori informazioni, consulta Flag--scopes
.
Aggiungi l'appliance virtuale a Cloud Storage.
Creare un account di servizio e assegnare i ruoli minimi. Per ulteriori informazioni sulla creazione di account di servizio, consulta Creazione e gestione degli account di servizio.
Come minimo, l'account di servizio Compute Engine specificato deve avere seguenti ruoli assegnati:
roles/compute.storageAdmin
roles/storage.objectViewer
Questi ruoli minimi sono necessari per l'account di servizio specificato per
-compute-service-account
argomento. Per ulteriori informazioni, vedi Concessione ruoli richiesti all'account di servizio Compute Engine.Invia una richiesta
POST
a 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 quanto segue:
PROJECT_ID
: l'ID del progetto che in cui vuoi importare l'immagine macchina.MACHINE_IMAGE_NAME
: il nome dell'immagine della macchina da importare. Ad esempio,my-machine-image
.SOURCE_URI
: l'URI del file OVA in Cloud Storage. Ad esempio:gs://my-bucket/my-machine.ova
.OS
: il sistema operativo del file OVA. Ad esempio,ubuntu-1604
. Questo flag è facoltativo per impostazione predefinita, ma potrebbe in alcuni casi. Ti consigliamo di fornire questo flag. Per un elenco dei valori supportati, vedi Opzioni per--os
flag per il comandogcloud compute instances import
.ZONE
: il zona in cui importare dell'immagine macchina.TEMP_SERVICE_ACCOUNT_EMAIL
: l'email associato al servizio personalizzato creato nel passaggio precedente. Questo account di servizio viene utilizzato dalle VM temporanee. Se non specificata, la VM utilizza Compute Engine predefinito l'account di servizio.SERVICE_ACCOUNT_EMAIL
: l'email indirizzo associato all'account di servizio personalizzato da collegare a qualsiasi VM creata da questa immagine macchina. Non ci sono limitazioni di autorizzazione per questo account di servizio, puoi personalizzarlo in base alle tue esigenze. Se non specificato, l'account di servizio Compute Engine predefinito è collegato alla VM.SCOPES
: specifica il livello di accesso per Opzione--service-account
. Se non specificati, vengono utilizzati gli ambiti predefiniti. Per ulteriori informazioni, consulta il flag--scopes
.
- Scopri di più sulle immagini macchina
- Crea istanze VM 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.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Limitazioni e restrizioni
Sistemi operativi supportati
Per assistenza con il sistema operativo, vedi Dettagli del sistema operativo.
Importa immagini macchina
Puoi importare immagini macchina da appliance virtuali utilizzando Google Cloud CLI o REST.
gcloud
Utilizza la 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 quanto segue:
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 è memorizzato nella directorygs://my-bucket
ed eseguecentos-7
:gcloud compute machine-images import my-machine-image \ --source-uri=gs://my-bucket/my-ova/ \ --os=centos-7
REST
Importa immagini macchina con override OVF
CPU e memoria personalizzate
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 specificare i flag
--custom-cpu
e--custom-memory
.Esempio
Un'immagine macchina denominata
my-machine-image
ha i seguenti override applicati alle impostazioni nel file OVF:Per importare
my-machine-image
con questi override, esegui questo 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, seguire i passaggi dell'API Compute Engine importare un'immagine macchina e specifica l'argomento
-machine-type
. Questo-machine-type
rappresenta un modello predefinito o macchina personalizzata tipo da utilizzare.Esempio
Un'immagine macchina denominata
my-machine-image
ha i seguenti override applicati alle impostazioni nel file OVF:Per importare
my-machine-image
con questi override, apporta le seguenti modifiche una 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", "-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" }
Sostituisci
PROJECT_ID
con l'ID progetto.Reti personalizzate
gcloud
Per configurare una rete personalizzata, segui i passaggi dell'interfaccia a riga di comando di Google Cloud CLI importare un'immagine macchina e specificare un flag
--network
. Se la rete è configurata con una modalità subnet personalizzata, devi specificare anche i flag--subnet
e--zone
.Esempio
Un'immagine macchina denominata
my-machine-image
ha i seguenti override applicati alle impostazioni nel file OVF:Per importare
my-machine-image
con questi override, esegui l'esempio seguente :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 usare una rete personalizzata, segui i passaggi dell'API Compute Engine importare un'immagine macchina e specifica un argomento
-network
. Se la rete è configurata con una modalità subnet personalizzata, devi anche specificare gli argomenti-subnet
e-zone
.Esempio
Un'immagine macchina denominata
my-machine-image
ha i seguenti override applicati alle impostazioni nel file OVF:Per importare
my-machine-image
con questi override, apporta le seguenti modifiche una 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 IP esterni
Per importare un'immagine macchina utilizzando una rete che non consente indirizzi IP esterni: di lavoro, completa i seguenti passaggi:
gcloud
Utilizza la 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 quanto segue:
REST
Utilizza la API Cloud Build e specifica 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 quanto segue:
Importa un'immagine macchina utilizzando account di servizio personalizzati
Durante l'importazione di un'immagine macchina, le istanze di macchine virtuali temporanee (VM) vengono create del progetto. Lo strumento di importazione su queste VM temporanee deve essere autenticato.
Un account di servizio è un'identità è collegato a una VM. È possibile accedere ai token di accesso all'account di servizio I metadati della VM e utilizzato per autenticare lo strumento di importazione sulla VM.
Per impostazione predefinita, il processo di importazione utilizza account di servizio Compute Engine predefinito. Tuttavia, se l'account di servizio Compute Engine predefinito è disabilitato in nel tuo progetto o se vuoi usare un account di servizio Compute Engine personalizzato, devi creare un account di servizio e specificarlo per il processo 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 2024-09-12 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }] -