Puoi creare una pianificazione di snapshot per eseguire regolarmente e automaticamente il backup dei volumi Persistent Disk e Google Cloud Hyperdisk a livello di zona e di regione. Usa le pianificazioni di snapshot come best practice per eseguire il backup dei carichi di lavoro Compute Engine.
Se vuoi creare una pianificazione di snapshot che acquisisca lo stato dei dati delle applicazioni al momento del backup, chiamata anche snapshot coerente con l'applicazione, svuotamento dell'ambiente guest o VSS, consulta Crea snapshot dei dischi coerenti con l'applicazione Linux o Crea snapshot del disco coerenti con l'applicazione Windows.
Per ulteriori informazioni sulle proprietà della pianificazione di snapshot, consulta Proprietà della pianificazione snapshot.
Prima di iniziare
- Rivedi le limitazioni per le pianificazioni 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.
Vai
Per utilizzare gli esempi di Go questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
Java
Per utilizzare gli esempi di Java questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
Node.js
Per utilizzare gli esempi di Node.js questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
Python
Per utilizzare gli esempi di Python questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
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.
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 .
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni necessarie per creare una pianificazione di snapshot, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:
-
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1
) -
Per connetterti a una VM che può essere eseguita come service account:
Service Account User (v1) (
roles/iam.serviceAccountUser
)
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per creare una pianificazione di snapshot. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare una pianificazione di snapshot sono necessarie le seguenti autorizzazioni:
-
Per creare una pianificazione di snapshot:
compute.resourcePolicies.create
sul progetto o sull'organizzazione -
Per collegare una pianificazione di snapshot a un disco:
-
compute.disks.addResourcePolicies
sul disco -
compute.resourcePolicies.use
sulla policy risorse
-
-
Per creare un disco con una pianificazione di snapshot:
-
compute.disks.create
sul progetto -
compute.resourcePolicies.create
sul progetto -
compute.disks.addResourcePolicies
sul disco
-
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Panoramica della creazione di pianificazioni di snapshot
Quando crei una pianificazione di snapshot, crei una policy risorse che puoi applicare a uno o più volumi Persistent Disk o Hyperdisk.
Puoi creare pianificazioni di snapshot nei modi seguenti:
- Crea una pianificazione di snapshot, quindi collegala a un disco esistente.
- Crea un nuovo disco con una pianificazione di snapshot.
Utilizzo della crittografia con le pianificazioni di snapshot
Se un disco utilizza una chiave di crittografia gestita dal cliente (CMEK), quando usi una pianificazione di snapshot per creare snapshot del disco, tutti gli snapshot creati vengono criptati automaticamente con la stessa chiave.
Non puoi usare le pianificazioni di snapshot con i dischi che utilizzano una chiave di crittografia fornita dal cliente (CSEK).
Crea pianificazione snapshot
Puoi creare una pianificazione di snapshot per i tuoi dischi utilizzando la console Google Cloud , Google Cloud CLI o REST. Devi creare la pianificazione di snapshot nella stessa regione in cui si trova il disco. Ad esempio, se il tuo disco si trova nella zona
us-west1-a
, devi creare la pianificazione di snapshot nella regioneus-west1
. Tuttavia, puoi scegliere di archiviare gli snapshot generati dalla pianificazione di snapshot in una posizione diversa.Console
-
Nella console Google Cloud , vai alla pagina Istanze VM.
Vai a Istanze VM
I passaggi rimanenti verranno visualizzati automaticamente nella console Google Cloud . - Seleziona il progetto che contiene le istanze VM.
- Nella colonna Nome, fai clic sul nome della VM con il disco permanente per cui vuoi creare la pianificazione di snapshot.
-
In
Spazio di archiviazione , fai clic sul nome del disco di avvio o del disco aggiuntivo per cui vuoi creare la pianificazione di snapshot. - Fai clic su Modifica. Potresti dover fare clic sul menu Altre azioni e poi su Modifica.
- In Pianificazione snapshot, scegli Crea una pianificazione.
-
In Nome, inserisci uno dei seguenti nomi per la pianificazione di snapshot:
boot-disk-snapshot-schedule
attached-persistent-disk-snapshot-schedule
-
Nella sezione Località, scegli la località di archiviazione degli snapshot. La località predefinita o personalizzata indicata nelle impostazioni degli snapshot viene selezionata automaticamente. Se vuoi, puoi ignorare le impostazioni e archiviare gli 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 disponibilità a un costo superiore.
- Scegli gli snapshot regionali per un maggiore controllo sulla località fisica dei dati a un costo inferiore.
-
Scegli Più regioni
per una maggiore disponibilità a un costo superiore.
-
Nel campo Seleziona località, seleziona la regione specifica o più regioni che vuoi utilizzare. Per utilizzare la regione o più regioni più vicine al tuo disco di origine, seleziona In base alla località del disco.
-
- Per completare la creazione della pianificazione di snapshot, fai clic su Crea.
- Per collegare questa pianificazione di snapshot al disco permanente, fai clic su Salva.
gcloud
Per pianificare snapshot con ambito globale per un disco, usa il comando
gcloud compute resource-policies create snapshot-schedule
. Imposta la frequenza di pianificazione su oraria, giornaliera o settimanale.gcloud compute resource-policies create snapshot-schedule SCHEDULE_NAME \ --description "SCHEDULE_DESCRIPTION" \ --max-retention-days MAX_RETENTION_DAYS \ --start-time START_TIME \ --hourly-schedule SNAPSHOT_INTERVAL \ --daily-schedule \ --weekly-schedule SNAPSHOT_INTERVAL or --weekly-schedule-from-file FILE_NAME \ --on-source-disk-delete DELETION_OPTION \ --storage-location=STORAGE_LOCATION
(Anteprima) Per pianificare snapshot con ambito regionale per un disco, usa il comando
gcloud compute resource-policies create snapshot-schedule
e specifica la regione di snapshot.gcloud beta compute resource-policies create snapshot-schedule SCHEDULE_NAME \ --description "SCHEDULE_DESCRIPTION" \ --max-retention-days MAX_RETENTION_DAYS \ --start-time START_TIME \ --hourly-schedule SNAPSHOT_INTERVAL \ --daily-schedule \ --weekly-schedule SNAPSHOT_INTERVAL or --weekly-schedule-from-file FILE_NAME \ --on-source-disk-delete DELETION_OPTION \ --storage-location=STORAGE_LOCATION \ --region REGION \ --snapshot-region SNAPSHOT_REGION
Sostituisci quanto segue:
SCHEDULE_NAME
: il nome della pianificazione di snapshot.SCHEDULE_DESCRIPTION
: una descrizione della pianificazione di snapshot. Racchiudi la descrizione tra virgolette.REGION
: la posizione della policy risorse della pianificazione di snapshot.SNAPSHOT_REGION
: la regione a cui è applicato lo snapshot pianificato.MAX_RETENTION_DAYS
: il numero di giorni per cui conservare lo snapshot.Ad esempio, un valore
3
indica che gli snapshot vengono conservati per 3 giorni prima di essere eliminati. Devi utilizzare un valore pari o superiore a1
.START_TIME
: l'ora di inizio nel fuso orario UTC. L'ora di inizio deve essere un'ora piena.Ad esempio:
- Le 14:00 PST devono essere indicate come
22:00
. - Se imposti un'ora di inizio pari a
22:13
, ricevi un errore.
Se utilizzi il flag
--weekly-schedule-from-file
e specifichi un'ora di inizio all'interno del file, non devi includere questo flag.- Le 14:00 PST devono essere indicate come
SNAPSHOT_INTERVAL
: l'intervallo tra la creazione di snapshot successivi. I flag di frequenza degli snapshothourly-schedule
,daily-schedule
,weekly-schedule
eweekly-schedule-from-file
si escludono a vicenda. Puoi utilizzarne solo uno per la pianificazione di snapshot.- Imposta una pianificazione giornaliera includendo il flag
--daily-schedule
senza alcun valore. - Imposta una pianificazione oraria con il flag
--hourly-schedule
impostato su un valore intero compreso tra 1 e 23. Per generare snapshot alla stessa ora ogni giorno, scegli un numero di ore che sia divisibile per 24. Ad esempio, se imposti--hourly-schedule
su12
, viene creato uno snapshot ogni 12 ore. - Imposta una pianificazione settimanale con il flag
--weekly-schedule
impostato sul giorno della settimana in cui vuoi che venga creato lo snapshot. Devi scrivere per esteso il giorno della settimana; i valori non sono sensibili alle maiuscole. Ad esempio, per eseguire il backup del disco ogni venerdì, il comando includerà--weekly-schedule=friday
. Imposta una pianificazione settimanale avanzata, specificando giorni diversi della settimana e ore di inizio diverse, includendo il flag
--weekly-schedule-from-file
. SostituisciFILE_NAME
con il nome file che contiene la pianificazione di snapshot settimanale. Sebbene sia possibile specificare giorni della settimana diversi e ore di inizio diverse utilizzando un file, non puoi specificare più pianificazioni settimanali direttamente sulla riga di comando. Ad esempio, il file potrebbe specificare due pianificazioni settimanali, il lunedì e il mercoledì, ma non puoi duplicare questa impostazione sulla riga di comando:[ {"day": "MONDAY", "startTime": "04:00"}, {"day": "WEDNESDAY", "startTime": "02:00"} ]
Se includi un'ora di inizio nel file, non devi impostare il flag
--start-time
sulla riga di comando. La pianificazione utilizza il fuso orario UTC.
- Imposta una pianificazione giornaliera includendo il flag
DELETION_OPTION
: determina cosa succede ai tuoi snapshot se il disco di origine viene eliminato. Se vuoi conservare tutti gli snapshot generati, puoi omettere questo flag. In caso contrario, specificaapply-retention-policy
per utilizzare le impostazioni in una policy di conservazione.STORAGE_LOCATION
: (Facoltativo) la località di archiviazione. Se ometti questo flag, viene utilizzata la località di archiviazione predefinita.
Esempi
In tutti i seguenti esempi:
- La regola di eliminazione del disco è inclusa; il flag
--on-source-disk-delete
è impostato sul valore predefinitokeep-auto-snapshots
per conservare in modo permanente tutti gli snapshot generati automaticamente. In alternativa, imposta questo flag suapply-retention-policy
per utilizzare la policy di conservazione degli snapshot. - La località di archiviazione è impostata manualmente su
US
, pertanto tutti gli snapshot generati vengono archiviati nella multi-regione degli Stati Uniti. - Le etichette
env=dev
emedia=images
vengono applicate a tutti gli screenshot generati. - La policy di conservazione è impostata su 10 giorni.
Pianificazione oraria: in questo esempio, la pianificazione di snapshot inizia alle 22:00 UTC (14:00 PST) e viene eseguita ogni 4 ore.
gcloud compute resource-policies create snapshot-schedule hourly-schedule1 \ --description "MY HOURLY SNAPSHOT SCHEDULE" \ --max-retention-days 10 \ --start-time 22:00 \ --hourly-schedule 4 \ --region us-west1 \ --on-source-disk-delete keep-auto-snapshots \ --snapshot-labels env=dev,media=images \ --storage-location US
Pianificazione giornaliera: in questo esempio, la pianificazione di snapshot inizia alle 22:00 UTC (14:00 PST) e viene eseguita ogni giorno alla stessa ora. Il flag
--daily-schedule
deve essere presente, ma senza un valore associato.gcloud compute resource-policies create snapshot-schedule daily-schedule2 \ --description "MY DAILY SNAPSHOT SCHEDULE" \ --max-retention-days 10 \ --start-time 22:00 \ --daily-schedule \ --region us-west1 \ --on-source-disk-delete keep-auto-snapshots \ --snapshot-labels env=dev,media=images \ --storage-location US
Pianificazione settimanale: in questo esempio, la pianificazione di snapshot inizia alle 22:00 UTC (14:00 PST) e viene eseguita ogni settimana di martedì.
gcloud compute resource-policies create snapshot-schedule weekly-schedule3 \ --description "MY WEEKLY SNAPSHOT SCHEDULE" \ --max-retention-days 10 \ --start-time 22:00 \ --weekly-schedule tuesday \ --region us-west1 \ --on-source-disk-delete keep-auto-snapshots \ --snapshot-labels env=dev,media=images \ --storage-location US
Go
Java
Node.js
Python
REST
Per creare una pianificazione di snapshot per gli snapshot con ambito globale, crea una richiesta
POST
aresourcePolicies.insert
. Devi includere il nome della pianificazione di snapshot e la relativa frequenza.Puoi anche specificare manualmente una località di archiviazione degli snapshot e aggiungere etichette risorse alla richiesta.
Per impostazione predefinita, il parametro
onSourceDiskDelete
è impostato sukeepAutoSnapshots
. Ciò significa che se il disco di origine viene eliminato, lo snapshot generato automaticamente per quel disco viene conservato a tempo indeterminato. In alternativa, puoi impostare il flag suapplyRetentionPolicy
per applicare la policy di conservazione.Nell'esempio seguente viene impostata una pianificazione di snapshot giornaliera che inizia alle 12:00 UTC (04:00 PST) e si ripete ogni giorno. L'esempio imposta anche una policy di conservazione di 5 giorni; dopo 5 giorni, gli snapshot vengono rimossi automaticamente.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "SCHEDULE_NAME", "description": "SCHEDULE_DESCRIPTION", "snapshotSchedulePolicy": { "schedule": { "dailySchedule": { "startTime": "12:00", "daysInCycle": "1" } }, "retentionPolicy": { "maxRetentionDays": "5" }, "snapshotProperties": { "guestFlush": "False", "labels": { "env": "dev", "media": "images" }, "storageLocations": "STORAGE_LOCATION" } } }
(Anteprima) Per creare una pianificazione degli snapshot per gli snapshot con ambito regionale, crea una richiesta
POST
aresourcePolicies.insert
e specifica la regione di snapshot.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "SCHEDULE_NAME", "description": "SCHEDULE_DESCRIPTION", "snapshotSchedulePolicy": { "schedule": { "dailySchedule": { "startTime": "12:00", "daysInCycle": "1" } }, "retentionPolicy": { "maxRetentionDays": "5" }, "snapshotProperties": { "guestFlush": "False", "region": "SNAPSHOT_REGION" } } }
Sostituisci quanto segue:
PROJECT_ID
: il nome del progetto.REGION
: la posizione della policy risorse della pianificazione degli snapshot.SNAPSHOT_REGION
: la regione a cui è applicato lo snapshot pianificato.SCHEDULE_DESCRIPTION
: la descrizione della pianificazione di snapshot.SCHEDULE_NAME
: il nome della pianificazione di snapshot.STORAGE_LOCATION
: (Facoltativo) la località di archiviazione. Se ometti questo flag, viene utilizzata la località di archiviazione predefinita.
Analogamente, puoi creare una pianificazione settimanale o mensile. Rivedi il metodo
resourcePolicies.insert
per dettagli specifici sull'impostazione di una pianificazione settimanale o mensile.Ad esempio, la seguente richiesta crea una pianificazione settimanale che viene eseguita il martedì alle 09:00 UTC.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "SCHEDULE_NAME", "description": "SCHEDULE_DESCRIPTION", "snapshotSchedulePolicy": { "schedule": { "weeklySchedule": { "dayOfWeeks": [ { "day": "Tuesday", "startTime": "9:00" } ] } }, "retentionPolicy": { "maxRetentionDays": "5" }, "snapshotProperties": { "guestFlush": "False", "labels": { "production": "webserver" }, "storageLocations": "US" } } }
Collega una pianificazione snapshot a un disco
Dopo aver creato una pianificazione, collegala a un disco esistente. Utilizza la console, gcloud CLI o l'API Compute Engine.
Console
Collega una pianificazione di snapshot a un disco esistente.
Nella console Google Cloud vai alla pagina Dischi.
Seleziona il nome del disco a cui vuoi collegare una pianificazione di snapshot. Si aprirà la pagina Gestisci disco.
Nella pagina Gestisci disco, fai clic su
Modifica. Potresti prima dover fare clic sul menu Altre azioni.Utilizza il menu a discesa Pianificazione snapshot per aggiungere la pianificazione al disco. In alternativa, crea una nuova pianificazione.
Se hai creato una nuova pianificazione, fai clic su Crea.
Fai clic su Salva per completare l'attività.
gcloud
Per collegare una pianificazione di snapshot a un disco, usa il comando
gcloud disks add-resource-policies
.gcloud compute disks add-resource-policies DISK_NAME \ --resource-policies SCHEDULE_NAME \ --zone ZONE
Sostituisci quanto segue:
DISK_NAME
: il nome del disco esistenteSCHEDULE_NAME
: il nome della pianificazione di snapshot.ZONE
: la posizione del disco
Go
Java
Python
REST
Crea una richiesta
POST
didisks.addResourcePolicies
per collegare una pianificazione di snapshot a un disco esistente.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/addResourcePolicies { "resourcePolicies": [ "regions/REGION/resourcePolicies/SCHEDULE_NAME" ] }
Sostituisci quanto segue:
PROJECT_ID
: il nome del progetto.ZONE
: la zona in cui si trova il discoREGION
: la regione in cui è stata creata la pianificazione di snapshotDISK_NAME
: il nome del discoSCHEDULE_NAME
: il nome della pianificazione di snapshot che stai applicando a questo disco
Crea un disco con una pianificazione di snapshot
Puoi usare la console Google Cloud o gcloud CLI per creare contemporaneamente un disco e una pianificazione di snapshot.
Console
Nella console Google Cloud vai alla pagina Dischi.
Fai clic su Crea disco.
Compila i campi obbligatori per creare un disco a livello di zona o di regione.
Crea il disco nella stessa regione della pianificazione di snapshot.
Compila i campi della Pianificazione snapshot.
Utilizza il menu a discesa e compila i campi per creare la pianificazione.
Fai clic su Crea per creare la pianificazione.
Fai clic su Crea per creare il disco.
gcloud
Utilizza il comando
gcloud disks create
per creare un Persistent Disk o un Hyperdisk a livello di zona o di regione e collega una pianificazione di snapshot.gcloud compute disks create DISK_NAME \ --resource-policies SCHEDULE_NAME \ --zone ZONE
Sostituisci quanto segue:
DISK_NAME
: il nome del nuovo disco.SCHEDULE_NAME
: il nome della pianificazione degli snapshot.ZONE
: la località in cui stai creando il disco. Il disco deve trovarsi in una zona della stessa regione della pianificazione di snapshot.
Go
Java
Passaggi successivi
- Scopri di più sulla gestione delle pianificazioni di snapshot.
- Scopri di più sulle frequenze degli snapshot pianificati, sulle policy di conservazione e sulle regole di denominazione in Informazioni sulle pianificazioni di snapshot per i dischi.
- Scopri come creare un'immagine personalizzata dallo snapshot.
- Scopri come visualizzare i log.
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-07-30 UTC.
-