Snapshots
Gli snapshot di volume sono copie puntuali dei dati di un volume. Sono memorizzati sullo stesso cluster Ceph ad alte prestazioni del volume stesso, il che li rende rapidi da creare e da ripristinare. Questa pagina illustra come creare, elencare ed eliminare gli snapshot e come creare un nuovo volume da uno snapshot.
Snapshot vs Backup
| Snapshot | Backup | |
|---|---|---|
| Archiviazione | Stesso cluster Ceph del volume | Archiviazione fredda (più economica, più lenta) |
| Velocità | Pochi secondi per la creazione | Alcune ore (a seconda delle dimensioni) |
| Caso d'uso | Ripristino rapido, clonazione di volumi | Conservazione a lungo termine, disaster recovery |
| Pianificazione | Manuale (o tramite script) | Pianificazione automatizzata con policy |
| Protezione da ransomware | No | Sì (protezione dall'eliminazione, policy rigorose) |
Per una strategia di backup completa con backup pianificati, protezione da ransomware e ripristino cross-AZ, utilizzi la funzione Backup Management del Cloud Services Portal:
Creare uno snapshot
Horizon
- Acceda a Volumes > Volumes.
- Individui il volume di cui desidera creare uno snapshot e apra il menu delle azioni.
- Selezioni Create Snapshot.
- Inserisca un Snapshot Name e, facoltativamente, una descrizione.
- Clicchi su Create Snapshot.
CLI
openstack volume snapshot create --volume <VOLUME-NAME> <SNAPSHOT-NAME>
Esempio:
openstack volume snapshot create --volume data-vol-01 data-vol-01-snap1
Note
Se il volume è in-use (collegato a una VM), aggiunga l'opzione --force:
openstack volume snapshot create --volume data-vol-01 --force data-vol-01-snap1
Lo snapshot inizia con lo stato creating e passa a available al termine (di solito pochi secondi).
Elencare gli snapshot
openstack volume snapshot list
+--------------------------------------+---------------------+-------------+-----------+------+
| ID | Name | Description | Status | Size |
+--------------------------------------+---------------------+-------------+-----------+------+
| 0ec94901-93b5-43c1-86bd-735572574776 | data-vol-01-snap1 | None | available | 100 |
+--------------------------------------+---------------------+-------------+-----------+------+
Creare un volume da uno snapshot
Può creare un nuovo volume da uno snapshot: è utile per clonare dati o tornare a uno stato precedente.
Horizon
- Acceda a Volumes > Snapshots.
- Individui lo snapshot e apra il menu delle azioni.
- Selezioni Create Volume.
- Inserisca il nome del nuovo volume, le dimensioni (almeno pari a quelle dello snapshot) e il tipo.
- Clicchi su Create Volume.
CLI
openstack volume create --snapshot <SNAPSHOT-NAME> <NEW-VOLUME-NAME>
Esempio:
openstack volume create --snapshot data-vol-01-snap1 data-vol-01-restore
Non è necessario indicare le dimensioni: per impostazione predefinita vengono riprese quelle dello snapshot. Una volta che il nuovo volume è in stato available, può collegarlo a una VM.
Eliminare uno snapshot
Horizon
- Acceda a Volumes > Snapshots.
- Individui lo snapshot e apra il menu delle azioni.
- Selezioni Delete Snapshot.
- Confermi.
CLI
openstack volume snapshot delete <SNAPSHOT-NAME>
Impossibile eliminare uno snapshot
Se l'eliminazione non riesce, un volume creato da quello snapshot potrebbe dipenderne ancora. In tal caso deve eliminare prima il volume dipendente.
Cerchi i volumi collegati allo snapshot:
for i in $(openstack volume list -c ID -f value); do
echo "volume: $i"
openstack volume show $i -c snapshot_id -f value
done
Se trova un volume il cui snapshot_id corrisponde allo snapshot che desidera eliminare, elimini prima quel volume:
openstack volume delete <VOLUME-ID>
Provi quindi a eliminare di nuovo lo snapshot:
openstack volume snapshot delete <SNAPSHOT-NAME>