In Compute Engine, puoi utilizzare gli snapshot per 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 complete del disco.
Gli snapshot coerenti con le applicazioni acquisiscono lo stato dei dati dell'applicazione l'ora del backup in cui tutte le transazioni relative alle richieste sono state completate e tutte le operazioni in sospeso con il flush del disco 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.
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:
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.
- Gli snapshot VSS funzionano solo su istanze Windows con immagine
versione
v20160810
e successive. Per le istanze con immagini meno recenti, creare 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.
Vai alla pagina Crea uno snapshot nella console Google Cloud.
Vai alla pagina Crea un'istantanea- Inserisci un Nome snapshot.
-
Seleziona un tipo di snapshot. Il valore predefinito è uno snapshot
STANDARD
, ovvero l'opzione migliore per backup e ripristino di emergenza a lungo termine.Scegli Snapshot archivio 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 Posizione, scegli la tua istantanea posizione di archiviazione.
La posizione predefinita predefinita o personalizzata definita nelle impostazioni dello snapshot viene selezionata automaticamente. Facoltativamente, puoi eseguire l'override le impostazioni degli snapshot e archiviarli in una posizione di archiviazione personalizzata nel seguente modo:
Scegli il tipo di posizione di archiviazione che preferisci per lo snapshot.
- Scegli Più regioni per una maggiore disponibilità a un costo maggiore.
- Scegli snapshot regionali per un maggiore controllo sulla località fisica dei dati a un costo inferiore.
- Nel campo Seleziona località, seleziona la regione specifica oppure dall'area multiregionale che vuoi utilizzare. Per utilizzare la regione o le regioni più vicine al disco di origine, seleziona In base alla località del disco.
- Seleziona l'opzione Attiva snapshot coerente con l'applicazione.
- Fai clic su Crea per creare lo snapshot.
Per creare uno snapshot nella posizione predefinita o personalizzata configurato nelle impostazioni dello snapshot, utilizza 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 eseguire l'override delle impostazioni dello snapshot e creare uno snapshot in una posizione di archiviazione personalizzata, includi
--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
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 ARCHIVE.
Se il tipo di snapshot non è specificato, viene creato uno snapshot
STANDARD
. -
STORAGE_LOCATION: facoltativo. La regione multipla 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 quando vuoi eseguire l'override del località di archiviazione predefinita o personalizzata configurata nello snapshot impostazioni.
Per creare uno snapshot VSS di un Persistent Disk a livello di regione, nell'esperienza precedente esempi sostituiscono
--source-disk-zone=
con--source-disk-region=
e specifica la regione in cui la tua regione Persistent Disk in cui si trova.Google Cloud CLI attende che l'operazione restituisca lo stato
READY
,FAILED
o raggiunge il timeout massimo e restituisce l'ultimo dettagli noti dello snapshot. -
Per creare uno snapshot nella posizione predefinita o personalizzata configurato nelle impostazioni dello snapshot, effettua una richiesta
POST
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 eseguire l'override delle impostazioni dello snapshot e creare uno snapshot in una posizione di archiviazione personalizzata, effettua una richiesta
POST
snapshots.insert
e includi la proprietàstorageLocations
nella tua 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, }
- 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 ARCHIVE.
Se il tipo di snapshot non è specificato, viene creato uno snapshot
STANDARD
. -
STORAGE_LOCATION: Facoltativo: il campo Cloud Storage (più regioni) o la regione di Cloud Storage in cui archiviare lo snapshot. Puoi specificare una sola posizione di archiviazione.
Utilizza il parametro
storageLocations
solo se vuoi eseguire l'override della posizione di archiviazione predefinita predefinita o personalizzata configurata nelle impostazioni dello snapshot. Assicurati che il disco sia collegato a una VM:
- Se il disco che hai creato dallo snapshot VSS è un disco di dati non di avvio, puoi collegarlo a qualsiasi VM nuova o esistente.
- Se il disco creato dallo snapshot VSS è un disco di avvio e per avviare una VM, devi collegare temporaneamente su una VM esistente separata. Dopo aver completato i seguenti passaggi passaggi, puoi scollegare il disco da quella VM e utilizzarlo 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
Usa il comando
select disk
per selezionare il disco.DISKPART> select disk DISK_NUMBER
Sostituisci
DISK_NUMBER
con il numero del disco che vuoi montare.Monta il disco.
DISKPART> online disk
Elenca tutti i volumi presenti nel disco.
DISKPART> list volume
Seleziona il nuovo volume.
DISKPART> select volume VOLUME_NUMBER
Sostituisci
VOLUME_NUMBER
con il numero del volume da e configurarle in 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à per il volume da sincronizzare. Ad esempio,F
perF:\
.- Prepara il sistema per ottenere uno snapshot pulito.
- Crea lo snapshot.
- Rimonta il disco
- Contrassegna il disco come disponibile per la lettura/scrittura
- Accedi alla VM Windows.
- Scarica e installa Sincronizza 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à per il volume da sincronizzare. Ad esempio,F
perF:\
.Accedi alla VM Windows.
Apri un prompt dei comandi di PowerShell ed esegui lo strumento
diskpart
.PS C:\> diskpart
Identifica il disco che vuoi smontare e creare uno snapshot.
DISKPART> list disk
Quindi, seleziona il disco utilizzando il numero che hai appena trovato.
DISKPART> select disk DISK_NUMBER
Sostituisci
DISK_NUMBER
con il numero del disco che hai che vuoi rimontare.Smonta il disco.
DISKPART> offline disk
- Se il disco si trova in un'unica zona (disco permanente a livello di zona o Hyperdisk), segui i passaggi descritti in Creare uno snapshot di un volume del disco permanente a livello di zona.
- In alternativa, se il disco permanente si trova in più zone, segui i passaggi descritti in Creare uno snapshot di un volume del disco permanente regionale.
Accedi alla VM Windows.
Apri un prompt dei comandi di PowerShell ed esegui lo strumento
diskpart
.PS C:\> diskpart
Identifica il disco che vuoi montare.
DISKPART> list disk
Usa il comando
select disk
per selezionare il disco.DISKPART> select disk DISK_NUMBER
Sostituisci
DISK_NUMBER
con il numero del disco che vuoi montare.Monta il disco.
DISKPART> online disk
Se necessario, completa questi 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 con 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, nella sezione al prompt dei comandi, 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 vuoi sincronizzare. Ad esempio,F
perF:\
.- Se hai acquisito uno snapshot di un disco di avvio, puoi per creare una VM da uno snapshot.
- Per scoprire come configurare Windows Server in modo da poterlo utilizzare per creare immagini Windows Server personalizzate per le tue VM o i tuoi modelli di istanza consulta Creare immagini Windows Server personalizzate.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite 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
Le istantanee del disco su Windows presentano le seguenti limitazioni:
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 Persistent Disk o gli snapshot Hyperdisk e addebita solo il costo le dimensioni totali dello snapshot.
Crea lo snapshot
Console
gcloud
Per creare uno snapshot VSS, utilizza il metodo Comando
gcloud compute snapshots create
e includi il flag--guest-flush
.Puoi creare lo snapshot nel criterio di località di archiviazione definita dal tuo impostazioni snapshot oppure utilizzando una posizione di archiviazione alternativa di tua scelta. Per ulteriori informazioni, consulta Scegliere la posizione di archiviazione degli 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 nel criterio di località di archiviazione definita dal tuo impostazioni snapshot oppure utilizzando una posizione di archiviazione alternativa di tua scelta. Per ulteriori informazioni, consulta Scegliere la posizione di archiviazione degli snapshot.
Sostituisci quanto segue:
Per creare uno snapshot VSS di un Persistent Disk a livello di regione, nelle richieste
POST
come mostrato in precedenza, sostituisci la seguente riga: Utilizza questa riga quando crei uno snapshot di un disco permanente 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 da uno snapshot VSS di un disco di avvio esistente, il flag di sola lettura il nuovo disco di avvio impedisce il corretto avvio della VM.
Per risolvere il problema, rimuovi l'indicatore di sola lettura da qualsiasi nuovo disco creato da uno snapshot VSS seguendo questi passaggi:
Creare uno snapshot senza utilizzare VSS
In alcuni casi, potresti voler creare snapshot dei dischi collegati alle VM Windows senza utilizzare VSS.
Per creare uno snapshot del disco su una VM Windows senza utilizzare VSS, segui questi passaggi:
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 crei uno snapshot del tuo disco in una fase "sporca" potrebbe forzare un controllo del disco e potrebbe causare la perdita di dati. Valuta la possibilità di sincronizzare e smontare del file system.
Sincronizza il file system
Se non è possibile smontare il disco, ad esempio in scenari in cui se un'applicazione sta scrivendo dati sul disco, puoi sincronizzare il tuo file system per svuotare i buffer del disco. Per sincronizzare il file system:
Smonta il disco
Crea uno snapshot
Rimonta il disco
Rimuovi l'indicatore di sola lettura dal disco
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-10-14 UTC.
-