Questo documento descrive come spostare un'istanza di macchina virtuale (VM) tra zone o aree geografiche.
Prima di iniziare
- Se vuoi utilizzare gli esempi a riga di comando in questa guida:
- Installa o aggiorna la versione più recente di Google Cloud CLI.
- Imposta una regione e una zona predefinite.
- Se vuoi utilizzare gli esempi di API in questa guida, configura l'accesso all'API.
- Leggi la documentazione sulle zone.
Requisiti
Questa sezione elenca i requisiti per lo spostamento di una VM tra zone e aree geografiche:
Quota del progetto. Il tuo progetto deve avere una quota sufficiente per:
- Crea nuovi snapshot.
- Promuovi qualsiasi indirizzo IP esterno temporaneo.
Crea nuove VM e nuovi dischi nell'area geografica di destinazione.
Ad esempio, se hai tre dischi collegati alla VM che vuoi spostare, hai bisogno di una quota sufficiente per creare tre snapshot di dischi permanenti temporanei e tre nuovi dischi. Dopo aver creato i nuovi dischi, puoi eliminare gli snapshot temporanei.
Consulta la pagina Quote per assicurarti di disporre di una quota sufficiente per le risorse precedenti. Per saperne di più, consulta Informazioni sulle quote.
Dischi permanenti. I dischi permanenti collegati alla VM che vuoi spostare non sono collegati ad altre VM.
SSD locali. Le unità SSD locali sono destinate all'archiviazione temporanea e i dati sulle unità SSD locali non vengono conservati tramite terminazioni VM manuali. Se devi conservare dati SSD locali, replicali utilizzando un'opzione di archiviazione durevole come i dischi permanenti.
GPU. Se la tua VM include GPU, verifica che le GPU che vuoi utilizzare siano disponibili nella zona di destinazione della VM. Per un elenco delle GPU e delle zone in cui sono disponibili, consulta la pagina relativa alle GPU su Compute Engine.
Subnet. Se vuoi spostare la VM tra regioni, ad esempio tra
us-west1-a
easia-south1-b
, e la tua VM appartiene a una subnet, devi selezionare una nuova subnet per la tua VM. Per istruzioni su come creare subnet, consulta la sezione Aggiungere subnet.
Limitazione
Se sposti una VM tra regioni diverse, non potrai conservare l'indirizzo IP interno o esterno della VM. Devi scegliere un nuovo indirizzo IP quando ricrei la VM.
Proprietà della risorsa
Per spostare la VM, devi arrestarla, spostarla nella zona o nell'area geografica di destinazione e riavviarla. Dopo aver spostato la VM, aggiorna eventuali riferimenti alla risorsa originale, ad esempio VM di destinazione o pool di destinazione che rimandano alla VM precedente.
Durante lo spostamento, alcune proprietà della VM e dei dischi generati dal server cambiano.
Proprietà che cambiano per le VM
La tabella seguente descrive le proprietà che cambiano per le VM:
Nome proprietà | Modifiche |
---|---|
Indirizzo IP interno | In genere viene assegnato un nuovo indirizzo IP interno, ma la VM potrebbe conservare l'indirizzo IP interno originale. |
Indirizzo IP esterno | Se la VM si sposta tra zone nella stessa area geografica, l'indirizzo IP esterno rimane invariato. In caso contrario, scegli un indirizzo IP esterno diverso per l'istanza VM. |
Piattaforma CPU | A seconda della piattaforma CPU disponibile nella zona di destinazione, la VM potrebbe avere una piattaforma CPU diversa dopo lo spostamento. Per un elenco completo delle piattaforme CPU in ogni zona, consulta Aree geografiche e zone disponibili. |
Rete/subnet | Se la VM appartiene a una subnet e stai spostando una VM in più aree geografiche, devi scegliere una nuova subnet per la VM. Le VM che si spostano tra zone nella stessa area geografica mantengono la stessa subnet. |
Proprietà che cambiano per i dischi
La seguente tabella descrive le proprietà che cambiano per i dischi:
Nome proprietà | Modifiche |
---|---|
Snapshot di origine | Lo snapshot di origine del nuovo disco è impostato sullo snapshot temporaneo creato durante lo spostamento. |
ID snapshot di origine | L'ID snapshot di origine è impostato sull'ID dello snapshot temporaneo. |
Immagine di origine | Il campo dell'immagine di origine è vuoto. |
ID immagine | Il campo ID immagine è vuoto. |
Timestamp ultimo scollegamento | Il timestamp dell'ultimo scollegamento è vuoto. |
Timestamp ultimo collegamento | L'ultimo timestamp collegato cambia in timestamp quando il nuovo disco è stato collegato alla nuova istanza. |
Proprietà che cambiano sia per le VM sia per i dischi
La tabella seguente descrive le proprietà che cambiano sia per le VM sia per i dischi:
Nome proprietà | Modifiche |
---|---|
ID | Viene generato un nuovo ID risorsa. |
Timestamp creazione | Viene generato un nuovo timestamp di creazione. |
URL risorsa zona | Tutti gli URL delle risorse di zona cambiano per riflettere la zona di destinazione. Il seguente elenco mostra gli URL delle risorse che cambiano:
|
Spostamento di una VM tra zone o regioni
Per spostare una VM tra zone o aree geografiche:
- Crea un'immagine della macchina della tua VM di origine.
- Crea una VM dall'immagine della macchina in una zona o area geografica diversa.
I seguenti esempi mostrano come spostare una VM tra zone diverse.
gcloud
In questo esempio, sposti una VM denominata myinstance
con due dischi permanenti denominati mybootdisk
e mydatadisk
, da europe-west1-c
a us-west1-b
.
Identifica i dischi associati alla VM che vuoi spostare:
gcloud compute instances describe myinstance --format="list(name,status,disks)"
In questo esempio troverai i seguenti due dischi associati per la VM
myinstance
:- Un disco di avvio denominato
mybootdisk
- Un disco dati denominato
mydatadisk
- Un disco di avvio denominato
Imposta lo stato di eliminazione automatica di
mybootdisk
emydatadisk
sufalse
per assicurarti che i dischi non vengano eliminati automaticamente quando viene eliminata la VM.gcloud compute instances set-disk-auto-delete myinstance --zone europe-west1-c \ --disk mybootdisk --no-auto-delete
Se lo stato è stato aggiornato,
gcloud compute
restituisce la rispostaUpdated [...]
. Se lo stato di eliminazione automatica era già impostato su false,gcloud compute
restituisce:No change requested; skipping update for [myinstance].
(Facoltativo) Salva i metadati della VM.
Quando elimini la tua VM, vengono rimossi anche i metadati della VM. Puoi salvare queste informazioni in un file separato e poi applicare di nuovo i metadati della VM alla nuova VM.
Descrivi i metadati della tua VM in questo modo:
gcloud compute instances describe myinstance --zone europe-west1-c
Salva il contenuto in un file separato.
Crea backup dei dati utilizzando gli snapshot di dischi permanenti.
Per precauzione, crea backup dei tuoi dati mentre i dischi permanenti sono ancora collegati alla VM tramite snapshot di dischi permanenti. Prima di acquisire uno snapshot, assicurati che sia coerente con lo stato del disco permanente rispettando le best practice relative agli snapshot.
Dopo aver cancellato i buffer del disco, crea gli snapshot:
gcloud compute disks snapshot mybootdisk mydatadisk \ --snapshot-names backup-mybootsnapshot,backup-mydatasnapshot \ --zone europe-west1-c
Per verificare che lo snapshot sia stato creato, esegui
gcloud compute snapshots list
.(Facoltativo) Se stai spostando una VM tra zone all'interno della stessa regione e vuoi conservare il suo indirizzo IP interno o esterno temporaneo, promuovi l'indirizzo IP interno o esterno a un indirizzo IP statico, che puoi riutilizzare in un secondo momento.
Elimina la VM.
L'eliminazione della VM ne comporta la pulizia e lo scollegamento di qualsiasi disco permanente.
gcloud compute instances delete myinstance --zone europe-west1-c
gcloud
ti chiede di confermare l'eliminazione:The following VMs are deleted. Any attached disks configured to be auto-deleted are deleted unless they are attached to any other VMs or the `--keep-disks` flag is given and specifies them for keeping. Deleting a disk is irreversible and any data on the disk is lost. — [myinstance] in [europe-west1-c]
Do you want to continue (Y/n)?
Poiché hai disattivato lo stato di eliminazione automatica dei dischi in precedenza, inserisci Y per continuare e ignora l'avviso.
Successivamente, crea un altro snapshot sia del disco di avvio sia del disco dati.
gcloud compute disks snapshot mybootdisk mydatadisk \ --snapshot-names mybootsnapshot,mydatasnapshot \ --zone europe-west1-c
Created [.../mydatasnapshot]. Created [.../mybootsnapshot].
(Facoltativo) Elimina i dischi permanenti.
Se prevedi di riutilizzare i nomi dei dischi permanenti per i nuovi dischi, devi eliminare i dischi esistenti per rilasciarli. L'eliminazione dei dischi consente inoltre di risparmiare sui costi di archiviazione dei dischi permanenti.
Se non prevedi di riutilizzare gli stessi nomi dei dischi, non è necessario eliminarli.
gcloud compute disks delete mybootdisk mydatadisk --zone europe-west1-c
Crea nuovi dischi permanenti in
us-west1-b
dagli snapshot che hai creato. Innanzitutto, crea il disco di avvio.gcloud compute disks create mybootdiskb --source-snapshot mybootsnapshot \ --zone us-west1-b
Created [.../mybootdiskb]. NAME ZONE SIZE_GB TYPE STATUS mybootdiskb us-west1-b 100 pd-standard READY
quindi crea il disco dati.
gcloud compute disks create mydatadiskb --source-snapshot mydatasnapshot \ --zone us-west1-b
Created [.../mydatadiskb]. NAME ZONE SIZE_GB TYPE STATUS mydatadiskb us-west1-b 4000 pd-standard READY
Ricrea la VM in
us-west1-b
.Se hai scelto di salvare i metadati della VM in un file, ad esempio
myinstance.describe
, puoi utilizzarla per impostare gli stessi metadati sulla VM.Se la tua VM aveva un indirizzo IP esterno statico, puoi riassegnarlo alla nuova VM specificando l'opzione
--address [ADDRESS]
. Se stai spostando una VM tra regioni diverse, devi scegliere un indirizzo IP esterno diverso per la nuova istanza VM.Se la tua VM aveva un indirizzo IP interno statico, puoi riassegnarlo alla nuova VM specificando l'opzione
--private-network-ip ADDRESS
. Se stai spostando una VM tra regioni diverse, devi scegliere un indirizzo IP interno diverso per la nuova istanza VM.Se la tua VM includeva GPU, aggiungi GPU alla VM utilizzando l'opzione
--accelerator
.Se la VM utilizza una subnet specifica, aggiungi il flag
--subnet [SUBNET_NAME]
.
Per un elenco completo dei flag aggiuntivi, vedi gcloud compute instances create.
gcloud compute instances create myinstanceb --machine-type n1-standard-4 \ --zone us-west1-b \ --disk name=mybootdiskb,boot=yes,mode=rw \ --disk name=mydatadiskb,mode=rw
Created [.../myinstanceb]. NAME ZONE MACHINE_TYPE INTERNAL_IP EXTERNAL_IP STATUS myinstanceb us-west1-b n1-standard-4 10.240.173.229 146.148.112.106 RUNNING
(Facoltativo) Elimina gli snapshot di disco permanente.
Dopo aver confermato che le macchine virtuali sono state spostate, risparmia sui costi di archiviazione eliminando gli snapshot temporanei che hai creato.
gcloud compute snapshots delete mybootsnapshot mydatasnapshot
Se non ti servono più, elimina anche gli snapshot:
gcloud compute snapshots delete backup-mybootsnapshot backup-mydatasnapshot
Go
Ottieni i dettagli della VM e identifica i dischi collegati alla VM.
Imposta lo stato di eliminazione automatica del disco di avvio e del disco dati su
false
per assicurarti che i dischi non vengano eliminati automaticamente quando viene eliminata la VM.Crea backup dei dati utilizzando gli snapshot di dischi permanenti.
Per precauzione, crea backup dei tuoi dati mentre i dischi permanenti sono ancora collegati alla VM tramite snapshot di dischi permanenti. Prima di acquisire uno snapshot, assicurati che sia coerente con lo stato del disco permanente rispettando le best practice relative agli snapshot.
Dopo aver cancellato i buffer del disco, crea gli snapshot:
Elimina la VM dalla zona di origine.
Successivamente, crea un altro snapshot sia del disco di avvio sia dei dischi di dati.
(Facoltativo) Elimina i dischi permanenti.
Se prevedi di riutilizzare i nomi dei dischi permanenti per i nuovi dischi, devi eliminare i dischi esistenti per rilasciarli. L'eliminazione dei dischi consente inoltre di risparmiare sui costi di archiviazione dei dischi permanenti.
Se non prevedi di riutilizzare gli stessi nomi dei dischi, non è necessario eliminarli.
Crea nuovi dischi permanenti nella zona di destinazione dagli snapshot che hai creato. Prima crea il disco di avvio, poi i dischi dati.
Ricrea la VM con i nuovi dischi nella zona di destinazione.
(Facoltativo) Elimina gli snapshot temporanei del disco. Dopo aver confermato che le macchine virtuali sono state spostate, risparmia sui costi di archiviazione eliminando gli snapshot temporanei che hai creato.
Java
Ottieni i dettagli della VM e identifica i dischi collegati alla VM.
Imposta lo stato di eliminazione automatica del disco di avvio e del disco dati su
false
per assicurarti che i dischi non vengano eliminati automaticamente quando viene eliminata la VM.Crea backup dei dati utilizzando gli snapshot di dischi permanenti.
Per precauzione, crea backup dei tuoi dati mentre i dischi permanenti sono ancora collegati alla VM tramite snapshot di dischi permanenti. Prima di acquisire uno snapshot, assicurati che sia coerente con lo stato del disco permanente rispettando le best practice relative agli snapshot.
Dopo aver cancellato i buffer del disco, crea gli snapshot:
Elimina la VM dalla zona di origine.
Successivamente, crea un altro snapshot sia del disco di avvio sia dei dischi di dati.
(Facoltativo) Elimina i dischi permanenti.
Se prevedi di riutilizzare i nomi dei dischi permanenti per i nuovi dischi, devi eliminare i dischi esistenti per rilasciarli. L'eliminazione dei dischi consente inoltre di risparmiare sui costi di archiviazione dei dischi permanenti.
Se non prevedi di riutilizzare gli stessi nomi dei dischi, non è necessario eliminarli.
Crea nuovi dischi permanenti nella zona di destinazione dagli snapshot che hai creato. Prima crea il disco di avvio, poi i dischi dati.
Ricrea la VM con i nuovi dischi nella zona di destinazione.
(Facoltativo) Elimina gli snapshot temporanei del disco. Dopo aver confermato che le macchine virtuali sono state spostate, risparmia sui costi di archiviazione eliminando gli snapshot temporanei che hai creato.
Node.js
Ottieni i dettagli della VM e identifica i dischi collegati alla VM.
Imposta lo stato di eliminazione automatica del disco di avvio e del disco dati su
false
per assicurarti che i dischi non vengano eliminati automaticamente quando viene eliminata la VM.Crea backup dei dati utilizzando gli snapshot di dischi permanenti.
Per precauzione, crea backup dei tuoi dati mentre i dischi permanenti sono ancora collegati alla VM tramite snapshot di dischi permanenti. Prima di acquisire uno snapshot, assicurati che sia coerente con lo stato del disco permanente rispettando le best practice relative agli snapshot.
Dopo aver cancellato i buffer del disco, crea gli snapshot:
Elimina la VM dalla zona di origine.
Successivamente, crea un altro snapshot sia del disco di avvio sia dei dischi di dati.
(Facoltativo) Elimina i dischi permanenti.
Se prevedi di riutilizzare i nomi dei dischi permanenti per i nuovi dischi, devi eliminare i dischi esistenti per rilasciarli. L'eliminazione dei dischi consente inoltre di risparmiare sui costi di archiviazione dei dischi permanenti.
Se non prevedi di riutilizzare gli stessi nomi dei dischi, non è necessario eliminarli.
Crea nuovi dischi permanenti nella zona di destinazione dagli snapshot che hai creato. Prima crea il disco di avvio, poi i dischi dati.
Ricrea la VM con i nuovi dischi nella zona di destinazione.
(Facoltativo) Elimina gli snapshot temporanei del disco. Dopo aver confermato che le macchine virtuali sono state spostate, risparmia sui costi di archiviazione eliminando gli snapshot temporanei che hai creato.
Python
Ottieni i dettagli della VM e identifica i dischi collegati alla VM.
Imposta lo stato di eliminazione automatica del disco di avvio e del disco dati su
false
per assicurarti che i dischi non vengano eliminati automaticamente quando viene eliminata la VM.Crea backup dei dati utilizzando gli snapshot di dischi permanenti.
Per precauzione, crea backup dei tuoi dati mentre i dischi permanenti sono ancora collegati alla VM tramite snapshot di dischi permanenti. Prima di acquisire uno snapshot, assicurati che sia coerente con lo stato del disco permanente rispettando le best practice relative agli snapshot.
Dopo aver cancellato i buffer del disco, crea gli snapshot:
Elimina la VM dalla zona di origine.
Successivamente, crea un altro snapshot sia del disco di avvio sia dei dischi di dati.
(Facoltativo) Elimina i dischi permanenti.
Se prevedi di riutilizzare i nomi dei dischi permanenti per i nuovi dischi, devi eliminare i dischi esistenti per rilasciarli. L'eliminazione dei dischi consente inoltre di risparmiare sui costi di archiviazione dei dischi permanenti.
Se non prevedi di riutilizzare gli stessi nomi dei dischi, non è necessario eliminarli.
Crea nuovi dischi permanenti nella zona di destinazione dagli snapshot che hai creato. Prima crea il disco di avvio, poi i dischi dati.
Ricrea la VM con i nuovi dischi nella zona di destinazione.
(Facoltativo) Elimina gli snapshot temporanei del disco. Dopo aver confermato che le macchine virtuali sono state spostate, risparmia sui costi di archiviazione eliminando gli snapshot temporanei che hai creato.
Passaggi successivi
- Scopri come modificare la zona/area geografica predefinita per il tuo progetto.
- Scopri di più sulla migrazione live.
- Controlla lo stato di una VM.
- Scopri di più sulla migrazione di VM a Compute Engine.