Per accedere ai dati acquisiti in uno snapshot istantaneo, devi ripristinare o creare un nuovo disco dallo snapshot istantaneo.
Questa pagina spiega come creare un disco da uno snapshot istantaneo. Dopo aver creato il disco, puoi utilizzarlo collegandolo a una macchina virtuale (VM).
Prima di iniziare
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione verifica la tua identità per l'accesso ad API e servizi Google Cloud . Per eseguire
codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su
Compute Engine selezionando una delle seguenti opzioni:
Seleziona la scheda relativa a come intendi utilizzare i campioni in questa pagina:
Console
Quando utilizzi la console Google Cloud per accedere ai servizi Google Cloud e alle API, non devi configurare l'autenticazione.
gcloud
-
Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:
gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
- Imposta una regione e una zona predefinite.
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.
Installa Google Cloud CLI.
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni necessarie per creare un disco da uno snapshot istantaneo, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto:
- Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) -
Per connetterti a una VM che può essere eseguita come account di servizio:
Service Account User (v1) (
roles/iam.serviceAccountUser)
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per creare un disco da uno snapshot istantaneo. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare un disco da uno snapshot istantaneo sono necessarie le seguenti autorizzazioni:
-
compute.disks.createnel progetto di destinazione per il nuovo disco -
compute.instantSnapshots.useReadOnlynello snapshot istantaneo di origine -
Se lo snapshot istantaneo di origine è il disco di avvio di un'istanza a cui è collegato un account di servizio:
iam.serviceAccounts.actAssul account di servizio dell'istanza -
Per creare dischi da un gruppo di coerenza di snapshot istantanei:
-
compute.disks.createsul progetto di destinazione -
compute.instantSnapshots.useReadOnlynegli snapshot istantanei di origine -
compute.resourcePolicies.useReadOnlynegli snapshot istantanei di origine -
compute.instantSnapshotGroups.useReadOnlynel gruppo di coerenza di origine degli snapshot istantanei
-
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Limitazioni
Ai gruppi di coerenza e agli snapshot istantanei si applicano le seguenti limitazioni:
Quando crei un disco da uno snapshot istantaneo, il nuovo disco ha sempre lo stesso tipo, posizione e crittografia del disco di origine dello snapshot.
Non puoi creare una VM direttamente da uno snapshot istantaneo. Devi creare un disco dallo snapshot istantaneo e poi utilizzare il nuovo disco per creare una VM.
Se il disco di origine dello snapshot istantaneo utilizza chiavi di crittografia gestite dal cliente o fornite dal cliente, devi fornire la stessa chiave di crittografia quando crei un nuovo disco dallo snapshot istantaneo.
Considera questo esempio. Supponiamo di avere un disco,
DISK-1criptato con una chiave di crittografia fornita dal cliente (CSEK),KEY-1. Hai anche uno snapshot istantaneo,IS-1, creato daDISK-1. Per creare un nuovo disco daIS-1, devi fornire la stessa chiave,KEY-1, quando crei il nuovo disco.Se il disco è criptato con chiavi di crittografia gestite dal cliente (CMEK), devi fornire la chiave solo se utilizzi l'API REST o gcloud CLI per creare il disco. Se utilizzi la consoleGoogle Cloud , non devi specificare la chiave di crittografia.
Quando crei nuovi dischi da un gruppo di coerenza di snapshot istantanei, la posizione dei nuovi dischi è la stessa del gruppo di coerenza di origine degli snapshot istantanei.
Crea un disco da uno snapshot istantaneo
Uno snapshot istantaneo viene criptato con la stessa crittografia del disco di origine. I passaggi per creare un disco da uno snapshot istantaneo dipendono dalla modalità di crittografia del disco di origine dello snapshot istantaneo.
Ogni disco di origine è criptato con uno dei seguenti metodi:
- Google-owned and Google-managed encryption keys. Questa è l'impostazione predefinita.
- Chiavi di crittografia gestite dal cliente (CMEK)
- Chiavi di crittografia fornite dal cliente (CSEK).
Per scoprire come viene criptato un determinato disco, vedi Visualizzare le informazioni sulla crittografia di un disco.
Crea un disco da uno snapshot istantaneo criptato con la crittografia predefinita
Puoi creare un disco da uno snapshot istantaneo con gcloud CLI, la console Google Cloud o REST.
Console
Trova lo snapshot istantaneo che vuoi ripristinare:
Nella console Google Cloud , vai alla pagina Snapshot.
Fai clic sulla scheda Snapshot istantanei.
Nella colonna Nome, fai clic sul nome dello snapshot istantaneo che vuoi ripristinare.
Fai clic su Crea disco.
Nel campo Nome, inserisci un nuovo nome per il disco.
(Facoltativo) Nel campo Descrizione, inserisci ulteriori dettagli.
Verifica che il tipo di disco di origine sia Snapshot istantaneo.
Nell'elenco Snapshot istantaneo di origine, scegli lo snapshot istantaneo.
(Facoltativo) Configura personalizzazioni aggiuntive per il disco.
- Inserisci una dimensione: nel campo Dimensioni, specifica una dimensione per il disco in GB. Le dimensioni devono essere uguali o maggiori di quelle del disco di origine per lo snapshot.
- Pianifica i backup: se vuoi che Compute Engine crei snapshot standard di questo nuovo disco in base a una pianificazione, seleziona la casella di controllo Abilita pianificazione snapshot e scegli una pianificazione snapshot. In caso contrario, deseleziona la casella di controllo.
(Facoltativo) Per organizzare il progetto, aggiungi una o più etichette.
Per creare il disco, fai clic su Crea.
gcloud
Utilizza il comando gcloud compute disks create.
Gli argomenti che specifichi dipendono dal fatto che tu stia creando un disco a livello di zona o di regione.
Crea un disco a livello di zona
Specifica la zona con il flag --zone:
gcloud compute disks create DISK_NAME --zone=ZONE \ --source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME
Sostituisci quanto segue:
DISK_NAME: il nome del nuovo disco.ZONE: la zona per il nuovo disco, ad esempioeurope-west1-a.SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine.
Crea un disco a livello di regione
Specifica la regione con --region e le zone di replica di destinazione del nuovo disco con --replica-zones.
gcloud compute disks create DISK_NAME \ --region=REGION \ --source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME \ --replica-zones=ZONE1,ZONE2
Sostituisci quanto segue:
DISK_NAME: il nome del nuovo disco.REGION: la regione in cui deve trovarsi il disco regionale, ad esempio:europe-west1.SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine.ZONE1,ZONE2: le zone all'interno della regione in cui si trovano le due repliche del disco, ad esempio:europe-west1-b,europe-west1-c.
REST
Per creare un disco a livello di zona o di regione da uno snapshot istantaneo, utilizza il
metodo disks.insert. Il
nuovo disco deve essere dello stesso tipo del disco di origine dello snapshot
istantaneo. Ad esempio, non puoi creare un disco regionale da uno snapshot di un
disco di zona.
Crea un disco a livello di zona
Invia una richiesta POST specificando lo snapshot istantaneo di origine.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/SOURCE_ZONE/disks/insert
{
"name": "NEW_DISK_NAME",
"sourceInstantSnapshot": "projects/PROJECT/zones/SOURCE_ZONE/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME"
}
Sostituisci quanto segue:
PROJECT: il progetto in cui creare il nuovo disco.SOURCE_ZONE: la zona in cui si trova lo snapshot istantaneo, ad esempious-central1-aIl disco viene creato in questa zona.NEW_DISK_NAME: un nome univoco per il nuovo disco.SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine.
Crea un disco a livello di regione
Invia una richiesta POST specificando lo snapshot istantaneo di origine e le zone in cui deve essere replicato il disco.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/region/SOURCE_REGION/disks/insert
{
"name": "NEW_DISK_NAME",
"sourceInstantSnapshot": "projects/PROJECT/regions/SOURCE_REGION/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME",
"replicaZones": [
"projects/PROJECT/zones/ZONE1",
"projects/PROJECT/zones/ZONE2"
]
}
Sostituisci quanto segue:
PROJECT: il progetto in cui creare il nuovo disco.SOURCE_REGION: la regione in cui si trova lo snapshot istantaneo. Il disco viene creato in questa regione.NEW_DISK_NAME: un nome univoco per il nuovo disco.SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine.ZONE1,ZONE2: le zone all'interno della regione per le due repliche del disco, ad esempioeurope-west1-b,europe-west1-c.
Risposta alla richiesta API
Se la richiesta POST ha esito positivo, il corpo della risposta sarà un oggetto di cui puoi eseguire il polling per ottenere lo stato di creazione del disco. Per ulteriori informazioni, consulta
la sezione Gestione delle risposte dell'API.
Crea un disco da uno snapshot istantaneo criptato con CMEK o CSEK
Console
Se lo snapshot istantaneo utilizza la crittografia predefinita di Google o CMEK,la console Google Cloud fornisce automaticamente la chiave di crittografia quando crei un disco dallo snapshot istantaneo. In caso contrario, se lo snapshot istantaneo è criptato con CSEK, devi fornire la chiave di crittografia per creare un disco.
Segui i passaggi nella sezione Crittografia gestita da Google, specificando la chiave di crittografia utilizzando queste istruzioni:
- Nella sezione Decrittografia, inserisci la chiave di crittografia nel campo Chiave di crittografia.
- Se la chiave è sottoposta a wrapping con la chiave RSA pubblica, seleziona Chiave con wrapping.
gcloud
Utilizza il comando gcloud compute disks create.
Se il disco di origine è criptato con CMEK, utilizza il parametro --kms-key per fornire il nome della chiave.
Se il disco di origine è criptato con CSEK, utilizza il parametro --csek-key-file per specificare la chiave di crittografia del disco di origine.
CMEK
Per creare un disco a livello di zona da uno snapshot istantaneo criptato con CMEK, utilizza il seguente comando:
gcloud compute disks create NEW_DISK_NAME \
--zone=SOURCE_ZONE \
--source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME \
--kms-key=projects/KMS_PROJECT_NAME/locations/KEYRING_LOCATION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Sostituisci quanto segue:
NEW_DISK_NAME: il nome del nuovo disco.SOURCE_ZONE: la zona in cui è archiviato lo snapshot istantaneo, ad esempioeurope-west1-a.-
SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine. KMS_PROJECT_NAME: il progetto contenente la chiave.KEYRING_LOCATION: la posizione delle chiavi automatizzate a cui appartiene la chiave. Se il keyring è globale, specificaglobal. In caso contrario, specifica il nome della regione in cui si trova il keyring, ad esempious-west1.KEY_RING_NAME: il nome delle chiavi automatizzate che include la chiave, ad esempiokey-ring-1.KEY_NAME: il nome della chiave utilizzata per criptare il disco.
CSEK
Per creare un disco a livello di zona da uno snapshot istantaneo criptato con CSEK, utilizza il seguente comando:
gcloud compute disks create NEW_DISK_NAME \
--zone=SOURCE_ZONE \
--source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME \
--csek-key-file=PATH_TO_CSEK_JSON_FILE
Sostituisci quanto segue:
NEW_DISK_NAME: il nome del nuovo disco.SOURCE_ZONE: la zona in cui è archiviato lo snapshot istantaneo, ad esempioeurope-west1-a.-
SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine. CSEK_JSON_FILE: percorso di un file JSON contenente la chiave. Vedi un esempio di formato del file CSEK.
Per creare un disco a livello di regione, sostituisci il flag --zone nell'esempio precedente con i seguenti flag:
--region: la regione per il nuovo disco--replica-zones: le zone all'interno della regione per le due repliche del disco.
REST
Per creare un disco a livello di zona o di regione da uno snapshot istantaneo criptato con CMEK o CSEK, invia una richiesta POST al metodo disks.insert utilizzando le proprietà elencate nella sezione Crittografia gestita da Google.
Inoltre, fornisci la chiave di crittografia del disco di origine con il campo diskEncryptionKey. Le proprietà del campo diskEncryptionKey dipendono dal fatto che il disco sia criptato con CMEK o CSEK.
Gli esempi seguenti mostrano come creare un nuovo disco di zona per ogni tipo di crittografia.
CMEK
Nel corpo della richiesta, specifica il nome della chiave con la
proprietà diskEncryptionKey.kmsKeyName:
{
"name": "NEW_DISK_NAME",
"sourceInstantSnapshot": "projects/PROJECT/zones/SOURCE_ZONE/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME",
"diskEncryptionKey": {
"kmsKeyName": "projects/KMS_PROJECT/locations/LOCATION/keyRings/KEYRING_LOCATION/cryptoKeys/KEY_NAME"
}
}
Sostituisci quanto segue:
NEW_DISK_NAME: un nome univoco per il nuovo disco.PROJECT: il progetto in cui creare il nuovo disco.SOURCE_ZONE: la zona in cui si trova lo snapshot istantaneo, ad esempious-central1-a. Il disco viene creato in questa zona.SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine.KMS_PROJECT: il progetto contenente la chiave.LOCATION: la posizione delle chiavi automatizzate a cui appartiene la chiave. Se il keyring è globale, specificaglobal. In caso contrario, specifica il nome della regione in cui si trova il keyring, ad esempious-west1.KEY_RING: il nome delle chiavi automatizzate che include la chiave, ad esempiokey-ring-1.KEY: il nome della chiave utilizzata per criptare il disco.
CSEK
Il corpo della richiesta dipende dal fatto che la CSEK utilizzata per criptare lo snapshot istantaneo sia criptata con RSA o meno.
Per utilizzare una chiave non criptata (senza crittografia RSA), specifica la chiave nella
proprietà diskEncryptionKey.rawKey del corpo della richiesta:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/SOURCE_ZONE/disks/insert
{
"name": "NEW_DISK_NAME",
"sourceInstantSnapshot": "projects/PROJECT/zones/SOURCE_ZONE/instantSnapshots/INSTANT_SNAPSHOT_NAME,
"diskEncryptionKey": {
"rawKey": "RAW_ENCRYPTION_KEY"
}
}
Sostituisci quanto segue con i valori corrispondenti:
PROJECT: il progetto in cui creare il nuovo disco.SOURCE_ZONE: la zona in cui si trova lo snapshot istantaneo, ad esempious-central1-aIl disco viene creato in questa zona.NEW_DISK_NAME: un nome univoco per il nuovo disco.SOURCE_INSTANT_SNAPSHOT_NAME: il nome dello snapshot istantaneo di origine.RAW_ENCRYPTION_KEY: la chiave utilizzata per criptare lo snapshot istantaneo e il relativo disco di origine, ad esempioSGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=.
Per utilizzare una chiave criptata con RSA, modifica l'esempio precedente nel seguente modo:
Effettua una richiesta
POSTal metododisks.insert:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/insert
Specifica la chiave nella proprietà
diskEncryptionKey.rsaEncryptedKeydel corpo della richiesta:"diskEncryptionKey": { "rsaEncryptedKey": "RSA_ENCRYPTED_KEY" }
Sostituisci RSA_ENCRYPTED_KEY con la chiave criptata.
Risposta alla richiesta API
Se la richiesta POST ha esito positivo, il corpo della risposta sarà un oggetto di cui puoi eseguire il polling per ottenere lo stato di creazione del disco. Per ulteriori informazioni, consulta
la sezione
Gestione delle risposte dell'API.
Crea dischi da un gruppo di coerenza di snapshot istantanei
Se hai eseguito il backup di un gruppo di coerenza di dischi con un gruppo di coerenza di snapshot istantanei, puoi creare nuovi dischi dal gruppo di snapshot. Dopo aver creato i nuovi dischi, puoi facoltativamente aggiungerli a un gruppo di coerenza.
gcloud
La modalità di creazione dei dischi da un gruppo di snapshot istantanei dipende dal fatto che tutti i dischi del gruppo di coerenza si trovino nella stessa zona, per i dischi a livello di zona, o nella stessa regione, per i dischi a livello di regione.
Se il gruppo di coerenza degli snapshot istantanei contiene un mix di dischi a livello di regione e di zona oppure se gli snapshot istantanei si trovano in zone diverse, devi ripristinare ogni snapshot istantaneo su un nuovo disco singolarmente utilizzando il comando
gcloud compute disks create. Per istruzioni sulla creazione di un disco da uno snapshot istantaneo, consulta Crea un disco da uno snapshot istantaneo.Se tutti i dischi del gruppo di coerenza sono dischi a livello di regione nella stessa regione o dischi a livello di zona nella stessa zona, utilizza
gcloud compute disks bulk create command.Per creare dischi a livello di zona da un gruppo di coerenza di snapshot istantanei:
gcloud compute disks bulk create \ --zone=ZONE \ --source-instant-snapshot-group=SOURCE_INSTANT_SNAPSHOT_GROUP \ --source-instant-snapshot-group-zone=SOURCE_ZONE
Sostituisci quanto segue:
ZONE: la zona in cui si trovano i nuovi dischi.SOURCE_INSTANT_SNAPSHOT_GROUP: il nome del gruppo di coerenza degli snapshot che stai ripristinando.SOURCE_ZONE: la zona in cui si trova il gruppo di coerenza di snapshot di origine.
Per creare dischi a livello di regione da un gruppo di coerenza di snapshot istantanei:
gcloud compute disks bulk create \ --region=REGION \ --source-instant-snapshot-group=SOURCE_INSTANT_SNAPSHOT_GROUP \ --source-instant-snapshot-group-region=SOURCE_REGION
Sostituisci quanto segue:
REGION: la regione in cui si trovano i nuovi dischi.SOURCE_INSTANT_SNAPSHOT_GROUP: il nome del gruppo di coerenza degli snapshot che stai ripristinando.SOURCE_REGION: la regione in cui si trova il gruppo di coerenza di snapshot di origine.
REST
La modalità di creazione dei dischi da un gruppo di snapshot istantanei dipende dal fatto che tutti i dischi del gruppo di coerenza si trovino nella stessa zona, per i dischi a livello di zona, o nella stessa regione, per i dischi a livello di regione.
Se il gruppo di coerenza degli snapshot istantanei contiene un mix di dischi a livello di regione e di zona o se gli snapshot istantanei si trovano in zone diverse, devi ripristinare ogni snapshot istantaneo su un nuovo disco singolarmente utilizzando il metodo
disks.insert. Per istruzioni sulla creazione di un disco da uno snapshot istantaneo, consulta Crea un disco da uno snapshot istantaneo.Se tutti i dischi del gruppo di coerenza sono dischi di zona nella stessa zona o dischi a livello di regione nella stessa regione, invia una richiesta
POSTal metododisks.bulkInsert. Nel corpo, specificasourceInstantSnapshotGroup.Per creare dischi a livello di zona da un gruppo di coerenza di snapshot istantanei:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/bulkInsert --data-ascii { "instantSnapshotGroupParameters": { "sourceInstantSnapshotGroup": "zones/ZONE/instantSnapshotGroups/INSTANT_SNAPSHOT_GROUP_NAME" } }Sostituisci quanto segue:
PROJECT_ID: il tuo ID progetto.ZONE: la zona in cui si trovano i nuovi dischi.INSTANT_SNAPSHOT_GROUP_NAME: il nome del gruppo di coerenza degli snapshot che stai ripristinando.
Per creare dischi a livello di regione da un gruppo di coerenza di snapshot istantanei:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks/bulkInsert --data-ascii { "instantSnapshotGroupParameters": { "sourceInstantSnapshotGroup": "regions/REGION/instantSnapshotGroups/INSTANT_SNAPSHOT_GROUP_NAME" } }Sostituisci quanto segue:
PROJECT_ID: il tuo ID progetto.REGION: la regione in cui si trovano i nuovi dischi.INSTANT_SNAPSHOT_GROUP_NAME: il nome del gruppo di coerenza degli snapshot che stai ripristinando.
(Facoltativo) Per aggiungere i dischi appena creati a un gruppo di coerenza, segui i passaggi descritti in Aggiungere un disco a un gruppo di coerenza.