Se nell'ambiente on-premise disponi di dischi virtuali con software e configurazioni necessarie (a volte indicate come dischi dorati o golden immagini), puoi risparmiare tempo importando i dischi Compute Engine e l'utilizzo dell'immagine risultante creare macchine virtuali. Lo strumento di importazione supporta la maggior parte dei formati di file di dischi virtuali, tra cui VMDK e VHD.
Se hai esportato il tuo disco da Compute Engine, puoi creazione dal disco.
Per informazioni su come creare un sistema automatico per la migrazione di più per le macchine virtuali (VM), consulta Migrazione delle VM in Compute Engine.
Prima di iniziare
- Se esistono norme relative alle immagini attendibili
definito per il progetto in cui stai importando l'immagine,
aggiungi
projects/compute-image-import
eprojects/compute-image-tools
all'elenco di publisher consentiti. - Per scoprire come soddisfare i requisiti prima di importare le immagini, consulta Prerequisiti per l'importazione e l'esportazione di una VM immagini.
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
la procedura 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:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
Se importi un disco virtuale che esegue RHEL, porta la tua licenza (BYOL) è supportato solo se Il pacchetto python-boto è sul disco virtuale prima dell'importazione.
I sistemi operativi sui dischi virtuali devono supportare ACPI.
Questa funzionalità non è supportata per i progetti protetti con Controlli di servizio VPC. Per quelli ambienti, consulta Importazione manuale dei dischi di avvio.
Non puoi importare immagini ARM utilizzando lo strumento di importazione di immagini. Per importare Per le immagini dei braccia, segui le istruzioni dettagliate come descritto in Importa manualmente i dischi di avvio.
Compute Engine non supporta l'importazione di dischi criptati del software perché non possono essere letti senza una chiave. Nello specifico, non puoi importare Windows 10 e immagini successive che utilizzano la crittografia dell'unità BitLocker.
I dischi virtuali Linux devono utilizzare
grub
come bootloader.I dischi virtuali Linux devono soddisfare gli stessi requisiti dei dischi personalizzati immagini, incluso il supporto per i dispositivi Virtio-SCSI Storage Controller.
Se sono installati su dischi virtuali Windows, il software che include le applicazioni nella lista consentita come CB Protection by Carbon Black, possono causare la mancata riuscita del processo di importazione. Potresti disinstallarlo prima dell'importazione.
Sulle VM basate su Windows, l'adattatore di loopback KM-TEST di Microsoft impedisce l'accesso al server dei metadati ed è necessario disabilitarlo o rimuoverlo prima dell'importazione.
- Nella console Google Cloud, carica il file del disco virtuale di archiviazione ideale in Cloud Storage.
Vai alla pagina Crea un'immagine .
Specifica un nome per l'immagine.
In Origine, seleziona Disco virtuale (VMDK, VHD).
Seleziona l'account di servizio Cloud Build. Puoi utilizzare il valore predefinito o seleziona un account di servizio personalizzato.
- Se selezioni un account di servizio che non dispone di autorizzazioni sufficienti per importi un'immagine, vedrai un messaggio con un'opzione per concedere le autorizzazioni necessarie. Fai clic su Concedi per fornire l'account di servizio. con le autorizzazioni richieste.
Inserisci la Posizione log. Se l'account di servizio che hai selezionato è un l'account di servizio Cloud Build, non è necessario fornire il log in ogni località. Per tutti gli altri account di servizio (incluso quello predefinito (account di servizio Compute Engine) devi fornire la posizione del log.
Individua o inserisci manualmente la posizione di archiviazione File Cloud Storage.
Seleziona il sistema operativo disponibile sul disco importato. Tu può anche apportare le seguenti modifiche:
Puoi scegliere di installare pacchetti ospite. Google consiglia di di installare l'ambiente guest. Per ulteriori informazioni l'ambiente guest, vedi ambiente guest.
Per i sistemi operativi Windows o Red Hat Enterprise Linux (RHEL), puoi scegli anche un'opzione di licenza. Puoi consentire Compute Engine per fornirti una licenza Bring Your Own License. Per ulteriori informazioni su come usare licenza su Windows, consulta Bring Your Own License.
(Facoltativo) Specifica proprietà aggiuntive per l'immagine. Ad esempio: puoi organizzare questa immagine come che fanno parte di una famiglia di immagini.
Fai clic su Crea per importare l'immagine.
IMAGE_NAME
: il nome dell'immagine di destinazione.SOURCE_FILE
: il file del disco virtuale. Questo file può essere un file locale o un file archiviato in Cloud Storage. Se le tue il disco virtuale è un ambiente puoi fornire un percorso assoluto o relativo. Se il tuo disco virtuale il file è già archiviato in Cloud Storage, deve esistere in un bucket Cloud Storage del progetto utilizzato per il processo di importazione, e devi specificare il percorso completo del file nel Formatogs://BUCKET_NAME/OBJECT_NAME
.Aggiungi il disco virtuale a Cloud Storage.
Invia una richiesta
POST
a API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "steps":[ { "args":[ "-image_name=IMAGE_NAME", "-source_file=SOURCE_FILE", "-timeout=7000s", "-client_id=api" ], "name":"gcr.io/compute-image-import/gce_vm_image_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "timeout":"7200s", "tags":[ "gce-daisy", "gce-daisy-image-import" ] }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto che in cui vuoi importare l'immagine.IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: l'URI dell'immagine in Cloud Storage, ad esempiogs://my-bucket/my-image.vmdk
.
Per altri valori di
args
che possono essere forniti, consulta la sezione facoltativa della console Pagina GitHub di importazione di immagini VM.Esempio di risposta
La seguente risposta di esempio è simile all'output che viene 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-09-20T15:55:29.353258929Z", "steps": [ { "name": "gcr.io/compute-image-import/gce_vm_image_import:release", "env": [ "BUILD_ID=3a2055bc-ccbd-4101-9434-d376b88b8940" ], "args": [ "-timeout=7000s", "-image_name=my-image", "-client_id=api", "-data-disk", "-source_file=gs://my-bucket/my-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" } }
Puoi monitorare la build in due modi:
- Esegui un
projects.builds.get
utilizzando il valore
build-id
restituito. - Esamina i log ospitati nel
logUrl
fornito.
IMAGE_NAME
: il nome dell'immagine da creare.SOURCE_FILE
: un file locale o un URI Cloud Storage di il disco virtuale da importare.OS
: il sistema operativo dell'immagine disco da importare. La licenza per il sistema operativo viene dedotto dal valore di questo flag; non c'è un'esplicita per fornire le informazioni sulla licenza durante l'importazione. Per un elenco dei i valori supportati, consulta il flag--os
.- Nella console Google Cloud, carica il file del disco virtuale di archiviazione ideale in Cloud Storage.
Vai alla pagina Crea un'immagine.
Specifica un nome per l'immagine.
In Origine, seleziona Disco virtuale (VMDK, VHD, ...).
Individua o inserisci manualmente la posizione di archiviazione File Cloud Storage.
In Sistema operativo, seleziona Nessun sistema operativo. Solo dati.
(Facoltativo) Specifica proprietà aggiuntive per l'immagine. Ad esempio: puoi organizzare questa immagine come che fanno parte di una famiglia di immagini.
Fai clic su Crea per importare l'immagine.
IMAGE_NAME
: il nome dell'immagine di destinazione.SOURCE_FILE
: il file del disco virtuale. Questo file può un file locale o archiviato in Cloud Storage. Se le tue il disco virtuale è un file locale, puoi utilizzare un percorso assoluto o relativo. Se il file del disco virtuale è già archiviato in Cloud Storage, il file deve esistere in un bucket Cloud Storage nel progetto utilizzata per il processo di importazione ed è necessario specificare il percorso completo il file nel percorso Formatogs://BUCKET_NAME/OBJECT_NAME
.Aggiungi il disco virtuale a Cloud Storage.
Invia una richiesta
POST
a API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "steps":[ { "args":[ "-image_name=IMAGE_NAME", "-source_file=SOURCE_FILE", "-timeout=7000s", "-client_id=api", "-data_disk" ], "name":"gcr.io/compute-image-import/gce_vm_image_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "timeout":"7200s", "tags":[ "gce-daisy", "gce-daisy-image-import" ] }
Sostituisci i seguenti valori di
args
:PROJECT_ID
: l'ID del progetto in cui vuoi importare l'immagine.IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: l'URI dell'immagine in Cloud Storage, ad esempiogs://my-bucket/my-image.vmdk
.
Aggiungi il disco virtuale a Cloud Storage.
Il processo di importazione delle immagini richiede l'installazione dei gestori di pacchetti nella per il disco virtuale. Questi gestori di pacchetti richiedono richieste di pacchetti di repository al di fuori di 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 il disco virtuale utilizzando Google Cloud CLI o REST.
Quando importi un disco 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 un argomento aggiuntivo.
Per saperne di più, fai clic sulle seguenti schede:
IMAGE_NAME
: il nome dell'immagine disco che hai che vuoi creare.SOURCE_FILE
: il file del disco virtuale. È possibile un file locale o un file archiviato in Cloud Storage. Se le tue il disco virtuale è un ambiente puoi fornire un percorso assoluto o relativo. Se il tuo disco virtuale il file è già archiviato in Cloud Storage, deve esistere in un bucket Cloud Storage del progetto utilizzato del processo di importazione ed è necessario specificare il percorso completo del file nel Formatogs://BUCKET_NAME/OBJECT_NAME
.ZONE
: il valore zona in cui creare dell'immagine. 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.IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: l'URI dell'immagine in di archiviazione ideale in Cloud Storage. Ad esempio,gs://my-bucket/my-image.vmdk
. per il comandogcloud compute images import
.ZONE
: il valore zona in cui creare dell'immagine. Se viene lasciato vuoto, viene utilizzata la zona predefinita per il progetto.- Se il processo di importazione di immagini non riesce a rilevare il bootloader UEFI durante l'importazione.
Se il disco è ad avvio doppio e presenta una combinazione di: hybrid-mbr + UEFI, o Protective-mbr + UEFI. Per i dischi ad avvio doppio, l'importazione potrebbe l'avvio non UEFI.
IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: l'URI dell'immagine in Cloud Storage, ad esempiogs://my-bucket/my-image.vmdk
.Aggiungi il disco virtuale a Cloud Storage.
Invia una richiesta
POST
a API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "steps":[ { "args":[ "-image_name=IMAGE_NAME", "-source_file=SOURCE_FILE", "-uefi_compatible", "-timeout=7000s", "-client_id=api" ], "name":"gcr.io/compute-image-import/gce_vm_image_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "timeout":"7200s", "tags":[ "gce-daisy", "gce-daisy-image-import" ] }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto che in cui vuoi importare l'immagine.IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: l'URI dell'immagine in Cloud Storage, ad esempiogs://my-bucket/my-image.vmdk
.
IMAGE_NAME
: il nome dell'immagine da importare.SOURCE_FILE
: il file del disco virtuale. È possibile un file locale o un file archiviato in Cloud Storage. Se le tue il disco virtuale è un ambiente puoi fornire un percorso assoluto o relativo. Se il tuo disco virtuale il file è già archiviato in Cloud Storage, deve esistere in un bucket Cloud Storage del progetto utilizzato per il processo di importazione, e devi specificare il percorso completo del file nel Formatogs://BUCKET_NAME/OBJECT_NAME
.SERVICE_PROJECT_ID
: ID del progetto che ti interessa in cui importare l'immagine.ZONE
: la zona in cui vuoi importare l'immagine. Questa zona deve corrispondere alla regione della subnet. Ad esempio, seSUBNET
èus-west1
. La zona di importazione deve essere una di:us-west1-a
,us-west1-b
ous-west1-c
.NETWORK
: il percorso completo di un rete VPC condivisa, Ad esempio:projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK_NAME
.SUBNET
: il percorso completo di un subnet VPC condivisa Ad esempio:projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME
.Comando di esempio
gcloud compute images import example-image \ --source-file gs://source-bucket/source-file.vmdk \ --project my-image-project \ --zone us-west1-c \ --network projects/my-vpc-project/global/networks/my-shared-vpc \ --subnet projects/my-vpc-project/regions/us-west1/subnetworks/my-shared-subnet
Aggiungi il disco virtuale a Cloud Storage.
Invia una richiesta
POST
a API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/SERVICE_PROJECT_ID/builds { "steps":[ { "args":[ "-image_name=IMAGE_NAME", "-source_file=SOURCE_FILE", "-zone=ZONE", "-network=NETWORK", "-subnet=SUBNET", "-timeout=7000s", "-client_id=api" ], "name":"gcr.io/compute-image-import/gce_vm_image_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "timeout":"7200s", "tags":[ "gce-daisy", "gce-daisy-image-import" ] }
Sostituisci i seguenti valori di
args
:SERVICE_PROJECT_ID
: ID del progetto in cui vuoi importare l'immagine.IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: URI dell'immagine in Cloud Storage, ad esempiogs://my-bucket/my-image.vmdk
.ZONE
: la zona in cui vuoi importare l'immagine. Questa zona deve corrispondere alla regione della subnet. Ad esempio, seSUBNET
èus-west1
. La zona di importazione deve essere una di:us-west1-a
,us-west1-b
ous-west1-c
.NETWORK
: il percorso completo di un rete VPC condivisa, Ad esempio:projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK_NAME
.SUBNET
: il percorso completo di un subnet VPC condivisa Ad esempio:projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME
Aggiungi il disco 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
Per ulteriori informazioni, vedi Concedere i ruoli richiesti all'account di servizio Compute Engine.
Utilizza la
gcloud compute images import
per importare l'immagine.gcloud compute images import IMAGE_NAME \ --source-file SOURCE_FILE \ --compute-service-account SERVICE_ACCOUNT_EMAIL
Sostituisci quanto segue:
IMAGE_NAME
: il nome dell'immagine di destinazione.SOURCE_FILE
: il file del disco virtuale. Questo file può essere un file locale o un file archiviato in Cloud Storage. Se le tue il disco virtuale è un ambiente puoi fornire un percorso assoluto o relativo. Se il tuo disco virtuale il file è già archiviato in Cloud Storage, deve esistere in un bucket Cloud Storage del progetto utilizzato per il processo di importazione, e devi specificare il percorso completo del file nel Formatogs://BUCKET_NAME/OBJECT_NAME
.SERVICE_ACCOUNT_EMAIL
: l'email indirizzo associato all'account di servizio Compute Engine creato nel passaggio precedente.
Esempio
L'esempio seguente importa un disco virtuale avviabile denominato
my_server.vmdk
archiviati ings://your_gcs_bucket
utilizzando un account di servizio che include[email protected]
.gcloud compute images import my-imported-image \ --source-file gs://your_gcs_bucket/my_server.vmdk \ --compute-service-account [email protected]
Aggiungi il disco 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
Per ulteriori informazioni, vedi Concedere i ruoli richiesti all'account di servizio Compute Engine.
Aggiungi il disco virtuale a Cloud Storage.
Invia una richiesta
POST
a API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "steps":[ { "args":[ "-image_name=IMAGE_NAME", "-source_file=SOURCE_FILE", "-compute_service_account=SERVICE_ACCOUNT_EMAIL", "-timeout=7000s", "-client_id=api" ], "name":"gcr.io/compute-image-import/gce_vm_image_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "timeout":"7200s", "tags":[ "gce-daisy", "gce-daisy-image-import" ] }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto che in cui vuoi importare l'immagine.IMAGE_NAME
: il nome dell'immagine da utilizzare importati.SOURCE_FILE
: l'URI dell'immagine in Cloud Storage, ad esempiogs://my-bucket/my-image.vmdk
.SERVICE_ACCOUNT_EMAIL
: l'email indirizzo associato all'account di servizio Compute Engine creato nel passaggio precedente.
IMAGE_NAME
: il nome dell'immagine di destinazione.SOURCE_IMAGE_NAME
: il nome dell'immagine di origine.Per istruzioni su come importare immagini con licenze esistenti in per Google Cloud, consulta Bring Your Own License.
- Crea una nuova istanza VM che utilizza l'immagine avviabile.
- Condividi la tua immagine su in modo programmatico a gestire i progetti.
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.
Sistemi operativi supportati
Puoi importare sia dischi avviabili che non avviabili. Affinché i tuoi dischi virtuali siano avviabili su Compute Engine, devono eseguire uno dei sistemi operativi supportati.
Supporto per BYOL e BYOS
Se preferisci utilizzare la tua licenza software o il tuo abbonamento, puoi importare i tuoi dischi virtuali con le relative licenze. Per informazioni sul funzionamento che supportano BYOL o BYOS, vedi dettagli.
Puoi importare immagini con licenze esistenti utilizzando Il comando
gcloud compute instances import
con il flag--byol
.Limitazioni
Questa funzionalità presenta le seguenti limitazioni generali:
Questa funzionalità ha le seguenti limitazioni su Linux:
Questa funzionalità presenta le seguenti limitazioni su Windows:
Autorizzazioni
Per offrire un'esperienza ottimale durante l'importazione delle immagini, assicurati di avere hai concesso i ruoli IAM richiesti al tuo account, il servizio Cloud Build e l'account di servizio Compute Engine. Per ulteriori informazioni, consulta l'articolo Concedere i ruoli IAM richiesti.
Verificare la compatibilità
Prima di tentare di importare il disco per la VM, scarica ed esegui strumento di precontrollo all'interno della VM. Lo strumento di precontrollo esegue la scansione per individuare eventuali problemi di compatibilità che potrebbero il processo di importazione non riesce o il disco non funziona correttamente in Compute Engine.
Importa dischi virtuali
Puoi importare i dischi virtuali utilizzando Console Google Cloud, Google Cloud CLI, oppure API Cloud Build.
Importa un disco virtuale avviabile
Per i dischi di avvio, non è necessario specificare il sistema operativo perché di importazione dati rileva automaticamente il sistema operativo per driver e pacchetti sono obbligatori. Tuttavia, se devi eseguire l'override rilevato, puoi specificare Flag
--os
o parametro-os
. Per un elenco dei valori supportati, vedi Flag--os
.Console
gcloud
Utilizza la
gcloud compute images import
per creare un'immagine Compute Engine avviabile. Sebbene Compute Engine può avviare la maggior parte delle immagini disco di avvio,import
assicura che il disco disponga dei driver richiesti e di ambiente ospite necessari per avviare un'istanza e connettersi utilizzando SSH o RDP.Puoi importare i file di dischi virtuali da un nel bucket Cloud Storage dalla workstation locale.
Se importi il file del disco virtuale dal tuo workstation, lo strumento di importazione carica automaticamente il file Cloud Storage un bucket Cloud Storage.
Se preferisci, carica il file del disco virtuale Cloud Storage prima di iniziare il processo di importazione ma devi caricare il file in un bucket Cloud Storage nello stesso progetto. che verrà utilizzato per il processo di importazione.
gcloud compute images import IMAGE_NAME \ --source-file SOURCE_FILE
Sostituisci quanto segue:
Se importi un'immagine con una licenza esistente, specifica
--byol
come segue:gcloud compute images import IMAGE_NAME \ --source-file SOURCE_FILE --byol
Per istruzioni su come importare immagini con licenze esistenti in per Google Cloud, consulta Bring Your Own License.
Se specifichi un file locale, l'operazione di caricamento può richiedere molto tempo a seconda delle dimensioni del disco virtuale e della velocità della rete connessione. L'esecuzione dell'operazione di importazione può richiedere decine di minuti, a seconda in base alla dimensione del disco.
Esempio
L'esempio seguente importa un disco virtuale denominato
my_server.vmdk
archiviati ings://your_gcs_bucket
.gcloud compute images import my-imported-image \ --source-file gs://your_gcs_bucket/my_server.vmdk
Parametri facoltativi
Per impostazione predefinita pacchetti ambiente ospite vengono aggiunti a tutte le immagini disco di avvio importate. Se non vuoi che questi pacchetti, aggiungi il flag
--no-guest-environment
al comando di importazione.REST
Importa e aggiungi una licenza a un disco virtuale
Per aggiungere una licenza durante l'importazione di un'immagine, utilizza il seguente comando
gcloud compute images import
.gcloud compute images import IMAGE_NAME \ --source-file=SOURCE_FILE --os=OS
Sostituisci quanto segue:
Per ulteriori informazioni sulla visualizzazione e sull'aggiunta di licenze, consulta Visualizzare e aggiungere licenze licenze.
Importa un disco virtuale non avviabile
Console
gcloud
Puoi utilizzare la
gcloud compute images import
per creare un'immagine Compute Engine non avviabile. Se le tue su disco virtuale non ha un sistema operativo avviabile. specificare il flag--data-disk
. In questo modo si salta il passaggio dell'installazione e pacchetti dell'ambiente guest per rendere l'immagine avviabile in Compute Engine.gcloud compute images import IMAGE_NAME \ --source-file SOURCE_FILE \ --data-disk
Sostituisci quanto segue:
Esempio 1: importare un disco virtuale non avviabile da Cloud Storage
L'esempio seguente importa il nome di un disco virtuale
my_disk.vmdk
archiviata ings://your_gcs_bucket
.gcloud compute images import my-imported-image \ --source-file gs://your_gcs_bucket/my_disk.vmdk --data-disk
Esempio 2: importare un file VMDK di grandi dimensioni specificando il valore di timeout
Il valore di timeout predefinito per il processo di importazione è di due ore. VMDK grande l'importazione dei file può richiedere fino a 24 ore. Se non specifichi
--timeout
quando importi file di grandi dimensioni, il processo non viene completato dopo due ore.L'esempio seguente importa un disco virtuale denominato
my_disk.vmdk
archiviati ings://your_gcs_bucket
. Il valore di timeout per l'importazione dura 24 ore.gcloud compute images import my-imported-image \ --source-file gs://your_gcs_bucket/my_disk.vmdk --data-disk --timeout=24h
REST
Importa i dischi utilizzando reti che non consentono indirizzi IP esterni
Per importare dischi virtuali utilizzando una rete che non consente IP esterni: completa i seguenti passaggi:
gcloud
Usa il comando
gcloud compute images import
con il flag--no-address
per importare il disco virtuale.gcloud compute images import IMAGE_NAME \ --source-file=SOURCE_FILE \ --zone=ZONE \ --no-address
Sostituisci quanto segue:
REST
Invia una richiesta
POST
all'API Cloud Build e specifica-no-external-ip
argomento.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "steps":[ { "args":[ "-image_name=IMAGE_NAME", "-source_file=SOURCE_FILE", "-zone=ZONE", "-no_external_ip", "-timeout=7000s", "-client_id=api" ], "name":"gcr.io/compute-image-import/gce_vm_image_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "timeout":"7200s", "tags":[ "gce-daisy", "gce-daisy-image-import" ] }
Sostituisci quanto segue:
Importa un disco virtuale con un bootloader UEFI
Per la maggior parte dei dischi virtuali, Compute Engine può rilevare importare dischi con un bootloader UEFI senza bisogno di un flag aggiuntivo.
Tuttavia, per scenari come quelli riportati di seguito, potrebbe essere necessario forzare Avvio di UEFI durante l'importazione.
gcloud
Puoi utilizzare il comando
gcloud compute images import
per forzare l'importazione a utilizzare l'avvio UEFI.gcloud compute images import IMAGE_NAME \ --source-file=SOURCE_FILE \ --guest-os-features=UEFI_COMPATIBLE
Sostituisci quanto segue:
Esempio
L'esempio seguente importa un disco virtuale denominato
my-disk.vmdk
archiviato ings://my-gcs-bucket/
e forza l'utilizzo dell'avvio UEFI.gcloud compute images import my-imported-image \ --source-file gs://my-gcs-bucket/my-disk.vmdk \ --guest-os-features=UEFI_COMPATIBLE
REST
Per forzare un'importazione in modo che utilizzi l'avvio UEFI, puoi utilizzare l'API Cloud Build e specificare l'argomento
-uefi_compatible
. A tale scopo, completa i seguenti passaggi:Importa un disco virtuale utilizzando un VPC condiviso
Prima di importare un disco virtuale che utilizza un VPC condiviso, devi aggiungi il ruolo
compute.networkUser
all'account di servizio Cloud Build. Per ulteriori informazioni, vedi Concedere i ruoli richiesti al servizio Cloud Build Google Cloud.gcloud
Usa il comando
gcloud compute images import
per importare il disco virtuale.gcloud compute images import IMAGE_NAME \ --source-file SOURCE_FILE \ --project SERVICE_PROJECT_ID \ --zone ZONE \ --network NETWORK \ --subnet SUBNET
Sostituisci quanto segue:
REST
Importazione di un disco virtuale utilizzando un account di servizio Compute Engine personalizzato
Durante un'importazione di immagini, le istanze di macchine virtuali temporanee (VM) vengono create del progetto. Lo strumento di importazione delle immagini 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 dell'istanza e utilizzato per autenticare lo strumento di importazione delle immagini sulla VM.
Per impostazione predefinita, il processo di importazione utilizza agente 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
Rendi un'immagine avviabile
Se disponi di un'istanza Compute Engine immagine personalizzata con un sistema operativo avviabile ma non dispone dei driver Compute Engine necessari di pacchetti dell'ambiente guest, puoi utilizzare lo strumento di importazione delle immagini per avviabili in Compute Engine.
Usa il flag
--source-image
per specificare un'immagine personalizzata da rendere avviabile, invece di utilizzare il flag--source-file
che specifica un nuovo disco da importare.gcloud compute images import IMAGE_NAME \ --source-image SOURCE_IMAGE_NAME
Sostituisci quanto segue:
Comando di esempio
L'esempio seguente trasforma un'immagine Compute Engine denominata
my-image
in un'immagine avviabile denominatamy-bootable-image
. In questo esempio,--os ubuntu-1604
esegue l'override del sistema operativo rilevato.gcloud compute images import my-bootable-image \ --source-image my-image \ --os ubuntu-1604
Pulizia delle risorse
File archiviati su Cloud Storage e immagini in Compute Engine comportano dei costi. Lo strumento di importazione importa il file del disco virtuale Cloud Storage e crea un'immagine personalizzata di Compute Engine.
Dopo aver verificato che l'immagine sia stata importata correttamente e che si avvii come istanza Compute Engine, puoi eliminare da Cloud Storage. Lo strumento stampa l'URI del file come lo carica su Cloud Storage. L'URI ha il seguente formato:
gs://BUCKET_NAME/tmpimage/IMAGE_NAME
.Se hai importato un'immagine utilizzando il flag
--data-disk
e poi hai eseguito il comando Strumentoimport
una seconda volta con la bandierina--source-image
per creare quell'immagine avviabile, la prima immagine esiste ancora. Se non ti serve, valuta la possibilità di eliminare l'immagine. Se specifichi lo stesso nome di immagine per entrambi i flag--image
e--source-image
, l'immagine viene automaticamente sovrascritta e non è necessaria un'ulteriore pulizia.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-08-02 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" }] -