In Compute Engine, puoi utilizzare gli snapshot per eseguire il backup dei dati del disco. Poiché gli snapshot sono incrementali, puoi crearli con prestazioni superiori e costi di archiviazione totali inferiori rispetto alla creazione di immagini disco complete.
Gli snapshot coerenti con l'applicazione acquisiscono lo stato dei dati dell'applicazione al momento del backup con tutte le transazioni dell'applicazione completate e tutte le scritture in attesa di cui è stato fatto il flush sul disco. Nelle VM Windows, utilizza il servizio VSS (Volume Shadow Copy Service) per creare snapshot coerenti con l'applicazione senza prima arrestare l'istanza o scollegare il disco dalla VM.
Prima di iniziare
- Crea un'istanza Windows.
- Consulta le best practice per la creazione di snapshot.
-
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:
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. After installation, initialize the Google Cloud CLI 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.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI 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 Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Limitazioni
Gli snapshot del disco su Windows presentano le seguenti limitazioni:
- Gli snapshot VSS funzionano solo sulle istanze Windows con la versione immagine
v20160810
e successive. Per le istanze con immagini precedenti, crea uno snapshot senza utilizzare VSS. - Il disco collegato deve utilizzare un file system NTFS, exFAT o ReFS.
- Gli snapshot VSS contribuiscono a preservare i dati solo se esegui applicazioni compatibili con VSS che possono coordinarsi per creare un backup coerente dei dati.
- Se l'operazione di snapshot VSS non viene completata entro 300 secondi, lo snapshot non va a buon fine con un errore di timeout.
Crea uno snapshot VSS di Windows
Puoi creare snapshot del servizio VSS (Volume Shadow Copy Service) senza dover interrompere l'istanza o scollegare il disco dalla VM. Gli snapshot VSS sono destinati a scopi di backup e recupero su sistemi con app compatibili con VSS.
Gli snapshot VSS hanno lo stesso prezzo dei normali snapshot di Persistent Disk o Hyperdisk e vengono addebitati solo per la dimensione totale dello snapshot.
Crea lo snapshot
Console
Vai alla pagina Crea uno snapshot nella console Google Cloud .
Vai alla pagina Crea uno snapshot- Inserisci un nome per lo snapshot.
-
Seleziona un tipo di snapshot. Il valore predefinito è uno snapshot
STANDARD
, che è l'opzione migliore per il backup a lungo termine e il disaster recovery.Scegli Snapshot di archiviazione per una conservazione dei dati più economica.
- (Facoltativo) Inserisci una descrizione dello snapshot.
- In Disco di origine, seleziona il disco esistente di cui vuoi creare uno snapshot.
Nella sezione Località, scegli una località per l'archiviazione dello snapshot.
La località predefinita o personalizzata indicata nelle impostazioni degli snapshot viene selezionata automaticamente. Se vuoi, puoi ignorare le impostazioni e archiviare lo snapshot in una località di archiviazione personalizzata nel seguente modo:
Scegli il tipo di località di archiviazione che preferisci per lo snapshot.
- Scegli Più regioni per una maggiore affidabilità a un costo superiore.
- Scegli gli snapshot a livello regionale per un maggiore controllo sulla posizione fisica dei dati a un costo inferiore.
- Nel campo Seleziona località, seleziona la regione o la multi-regione specifica che vuoi utilizzare. Per utilizzare la regione o la multi-regione più vicina al tuo disco di origine, seleziona Basata sulla posizione del disco.
- Seleziona l'opzione Abilita snapshot coerente con l'applicazione.
- Fai clic su Crea per creare lo snapshot.
gcloud
Per creare uno snapshot VSS, utilizza il comando
gcloud compute snapshots create
e includi il flag--guest-flush
.Puoi creare lo snapshot nella policy della località di archiviazione definita dalle tue impostazioni degli snapshot o utilizzando una località di archiviazione alternativa di tua scelta. Per saperne di più, consulta la sezione sulla scelta della località di archiviazione degli snapshot.
Per creare uno snapshot nella località predefinita o personalizzata configurata nelle impostazioni degli snapshot, utilizza il comando
gcloud compute snapshots create
.gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk-zone=SOURCE_ZONE \ --source-disk=SOURCE_DISK_NAME \ --snapshot-type=SNAPSHOT_TYPE \ --guest-flush
-
In alternativa, per ignorare le impostazioni degli snapshot e crearne uno in una località di archiviazione personalizzata, includi il flag
--storage-location
per indicare dove archiviare lo snapshot.gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk-zone=SOURCE_ZONE \ --source-disk=SOURCE_DISK_NAME \ --snapshot-type=SNAPSHOT_TYPE \ --storage-location=STORAGE_LOCATION \ --guest-flush
-
(Anteprima) Per creare uno snapshot con ambito a livello regionale in una regione consentita, includi il flag
--region
per indicare dove creare lo snapshot.gcloud beta compute snapshots create SNAPSHOT_NAME \ --region=SNAPSHOT_SCOPE_REGION --source-disk=SOURCE_DISK_NAME \ --source-disk-zone=SOURCE_ZONE \ --snapshot-type=SNAPSHOT_TYPE
Sostituisci quanto segue:
- SNAPSHOT_NAME: un nome per lo snapshot.
- SOURCE_ZONE: la zona del disco di origine.
- SOURCE_DISK_NAME: il nome del volume del disco da cui vuoi creare uno snapshot.
- SNAPSHOT_TYPE: il tipo di snapshot, STANDARD o ARCHIVIO.
Se non viene specificato un tipo di snapshot, viene creato uno snapshot
STANDARD
. -
(Facoltativo) STORAGE_LOCATION: per gli snapshot con ambito globale, indica la multi-regione di Cloud Storage o la regione di Cloud Storage in cui vuoi archiviare lo snapshot. Puoi specificare una sola località di archiviazione.
Utilizza il parametro
--storage-location
solo se vuoi sostituire la località di archiviazione personalizzata o predefinita configurata nelle impostazioni degli snapshot. -
(Facoltativo) SNAPSHOT_SCOPE_REGION: per gli snapshot con ambito a livello regionale, indica la regione che lo snapshot ha come ambito. Se includi questo parametro, non puoi utilizzare il parametro
--storage-location
. STORAGE_LOCATION viene impostato automaticamente su SNAPSHOT_SCOPE_REGION.
Per creare uno snapshot VSS di un Persistent Disk a livello regionale, negli esempi precedenti sostituisci
--source-disk-zone=
con--source-disk-region=
e specifica la regione in cui si trova il Persistent Disk a livello regionale.Google Cloud CLI attende che l'operazione restituisca uno stato
READY
oFAILED
o raggiunga il timeout massimo e restituisce gli ultimi dettagli noti dello snapshot.REST
Quando crei uno snapshot, per indicare che vuoi creare uno snapshot VSS, includi la proprietà
guestFlush
nel corpo della richiesta per la richiestaPOST
al metodocompute.snapshots.insert
.Puoi creare lo snapshot nella policy della località di archiviazione definita dalle tue impostazioni degli snapshot o utilizzando una località di archiviazione alternativa di tua scelta. Per saperne di più, consulta la sezione sulla scelta della località di archiviazione degli snapshot.
-
Per creare uno snapshot nella località predefinita o personalizzata configurata nelle impostazioni degli snapshot, invia una richiesta
POST
al metodosnapshots.insert
:POST https://compute.googleapis.com/compute/beta/projects/DESTINATION_PROJECT_ID/global/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotType": "SNAPSHOT_TYPE", "guestFlush": true, }
-
In alternativa, per ignorare le impostazioni degli snapshot e crearne uno in una località di archiviazione personalizzata, invia una richiesta
POST
al metodosnapshots.insert
e includi la proprietàstorageLocations
nella richiesta:POST https://compute.googleapis.com/compute/beta/projects/DESTINATION_PROJECT_ID/global/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotType": "SNAPSHOT_TYPE", "storageLocations": [ "STORAGE_LOCATION" ], "guestFlush": true, }
-
(Anteprima) Per creare uno snapshot con ambito a livello regionale in una regione consentita, invia una richiesta
POST
al metodosnapshots.insert
e definisci la regione di creazione:POST https://compute.googleapis.com/compute/beta/projects/DESTINATION_PROJECT_ID/regions/SNAPSHOT_SCOPE_REGION/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotType": "SNAPSHOT_TYPE" }
Sostituisci quanto segue:
- DESTINATION_PROJECT_ID: l'ID del progetto in cui vuoi creare lo snapshot.
- SNAPSHOT_NAME: un nome per lo snapshot.
- SOURCE_PROJECT_ID: l'ID del progetto del disco di origine.
- SOURCE_ZONE: la zona del disco di origine.
- SOURCE_DISK_NAME: il nome del disco da cui vuoi creare uno snapshot.
- SNAPSHOT_TYPE: il tipo di snapshot, STANDARD o ARCHIVIO.
Se non viene specificato un tipo di snapshot, viene creato uno snapshot
STANDARD
. -
(Facoltativo) STORAGE_LOCATION: per gli snapshot con ambito globale, indica la multi-regione di Cloud Storage o la regione di Cloud Storage in cui vuoi archiviare lo snapshot. Puoi specificare una sola località di archiviazione.
Utilizza il parametro
storageLocations
solo se vuoi sostituire la località di archiviazione personalizzata o predefinita configurata nelle impostazioni degli snapshot. (Facoltativo) SNAPSHOT_SCOPE_REGION: per gli snapshot con ambito a livello regionale, indica la regione che lo snapshot ha come ambito. Se includi questo parametro, non puoi utilizzare il parametro
storageLocations
. STORAGE_LOCATION viene impostato automaticamente su SNAPSHOT_SCOPE_REGION.
Per creare uno snapshot VSS di un Persistent Disk a livello regionale, nelle richieste
POST
mostrate in precedenza, sostituisci la seguente riga: Utilizza questa riga quando crei uno snapshot di un Persistent Disk a livello regionale:"sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME",
"sourceDisk": "projects/SOURCE_PROJECT_ID/regions/SOURCE_REGION/disks/SOURCE_DISK_NAME",
Facoltativo: contrassegna il disco come disponibile per la lettura e la scrittura
Quando crei uno snapshot VSS, Windows Server contrassegna il volume nello snapshot come di sola lettura. Quando crei un nuovo disco dallo snapshot VSS, anche questo viene impostato in modalità di sola lettura.
Ciò potrebbe causare problemi. Ad esempio, se crei un'istanza VM con un nuovo disco di avvio da uno snapshot VSS di un disco di avvio esistente, il flag di sola lettura sul nuovo disco di avvio impedisce alla VM di avviarsi correttamente.
Per risolvere il problema, rimuovi l'indicatore di sola lettura da qualsiasi nuovo disco creato da uno snapshot VSS seguendo questi passaggi:
Assicurati che il disco sia collegato a una VM:
- Se il disco creato dallo snapshot VSS è un disco di dati non di avvio, puoi collegarlo a qualsiasi VM nuova o esistente.
- Se il disco che hai creato dallo snapshot VSS è un disco di avvio e vuoi utilizzarlo per avviare una VM, devi collegarlo temporaneamente a una VM esistente separata. Dopo aver completato i seguenti passaggi, puoi scollegare il disco dalla VM e utilizzarlo per avviare una nuova istanza VM.
Accedi alla VM Windows a cui è collegato il disco.
Apri un prompt dei comandi PowerShell ed esegui lo strumento
diskpart
.PS C:\> diskpart
Identifica il disco che vuoi montare.
DISKPART> list disk
Utilizza il comando
select disk
per selezionare il disco.DISKPART> select disk DISK_NUMBER
Sostituisci
DISK_NUMBER
con il numero del disco che desideri montare.Monta il disco.
DISKPART> online disk
Elenca tutti i volumi del disco.
DISKPART> list volume
Seleziona il nuovo volume.
DISKPART> select volume VOLUME_NUMBER
Sostituisci
VOLUME_NUMBER
con il numero del volume da configurare come lettura e scrittura.Cancella il flag di sola lettura.
DISKPART> attr volume clear readonly hidden nodefaultdriveletter shadowcopy
Esci dallo strumento
diskpart
.DISKPART> exit
Se il disco è un disco di avvio per un'altra VM, sincronizza i file del disco di avvio con la nuova firma del disco.
PS C:\> bcdboot DRIVE_LETTERWindows /s DRIVE_LETTER
Sostituisci
DRIVE_LETTER
con la lettera dell'unità del volume che desideri sincronizzare. Ad esempio,F
perF:\
.
Crea uno snapshot senza utilizzare VSS
In alcuni casi potresti decidere di creare snapshot dei dischi collegati alle VM Windows senza utilizzare VSS.
Per creare uno snapshot del disco su una VM Windows senza utilizzare VSS:
- Prepara il sistema per uno snapshot pulito.
- Crea lo snapshot.
- Rimonta il disco
- Contrassegna il disco come disponibile per la lettura/scrittura
Prepara il sistema per uno snapshot pulito
Prima di creare uno snapshot del disco, assicurati di acquisire uno snapshot coerente con lo stato desiderato per il disco. Se acquisisci uno snapshot del disco in uno stato "non pulito", potrebbe essere forzato un controllo del disco e potrebbe verificarsi una perdita di dati. Valuta la possibilità di sincronizzare e smontare il file system.
Sincronizza il file system
Se lo smontaggio del disco non è un'opzione, ad esempio in scenari in cui un'applicazione potrebbe scrivere dati sul disco, puoi sincronizzare il file system per fare il flush dei buffer del disco. Per sincronizzare il file system:
- Accedi alla VM Windows.
- Scarica e installa lo strumento Sync di Microsoft.
- Impedisci alle applicazioni di scrivere sul disco.
- Apri una finestra del prompt dei comandi con privilegi elevati.
Nella finestra della riga di comando, esegui:
PS C:\> sync DRIVE_LETTER
Sostituisci
DRIVE_LETTER
con la lettera dell'unità del volume che desideri sincronizzare. Ad esempio,F
perF:\
.
Smonta il disco
Accedi alla VM Windows.
Apri un prompt dei comandi PowerShell ed esegui lo strumento
diskpart
.PS C:\> diskpart
Identifica il disco di cui vuoi eseguire lo smontaggio e lo snapshot.
DISKPART> list disk
Seleziona il disco utilizzando il numero che hai appena trovato.
DISKPART> select disk DISK_NUMBER
Sostituisci
DISK_NUMBER
con il numero del disco che desideri rimontare.Smonta il disco.
DISKPART> offline disk
Crea uno snapshot
- Se il disco si trova in un'unica zona (Persistent Disk o Hyperdisk a livello di zona), segui i passaggi descritti in Crea uno snapshot di un volume Persistent Disk a livello di zona.
- In alternativa, se il tuo Persistent Disk si trova in più zone, segui la procedura descritta in Crea uno snapshot di un volume Persistent Disk a livello di zona.
Rimonta il disco
Accedi alla VM Windows.
Apri un prompt dei comandi PowerShell ed esegui lo strumento
diskpart
.PS C:\> diskpart
Identifica il disco che vuoi montare.
DISKPART> list disk
Utilizza il comando
select disk
per selezionare il disco.DISKPART> select disk DISK_NUMBER
Sostituisci
DISK_NUMBER
con il numero del disco che desideri montare.Monta il disco.
DISKPART> online disk
Rimuovi il flag di sola lettura dal disco
Se necessario, completa i seguenti passaggi:
Accedi alla VM Windows.
Apri un prompt dei comandi PowerShell ed esegui lo strumento
diskpart
.PS C:\> diskpart
Elenca tutti i volumi del disco.
DISKPART> list volume
Seleziona il nuovo volume.
DISKPART> select volume VOLUME_NUMBER
Sostituisci
VOLUME_NUMBER
con il numero del volume che vuoi configurare per la lettura e la scrittura.Cancella il flag di sola lettura.
DISKPART> attr volume clear readonly hidden nodefaultdriveletter shadowcopy
Esci dallo strumento
diskpart
.DISKPART> exit
Se il disco è un disco di avvio per un'altra istanza VM, al prompt dei comandi PowerShell, sincronizza i file del disco di avvio con la nuova firma del disco.
PS C:\> bcdboot DRIVE_LETTER:\Windows /s DRIVE_LETTER
Sostituisci
DRIVE_LETTER
con la lettera dell'unità del volume che desideri sincronizzare. Ad esempio,F
perF:\
.
Passaggi successivi
- Se hai acquisito uno snapshot di un disco di avvio, puoi creare una VM da uno snapshot.
- Per scoprire come configurare Windows Server in modo da poterlo utilizzare per creare immagini di Windows Server personalizzate per le tue VM o i tuoi template di istanze, consulta Crea immagini Windows Server personalizzate.
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-08-13 UTC.
-