Vai al contenuto

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:

Backup Management

Creare uno snapshot

Horizon

  1. Acceda a Volumes > Volumes.
  2. Individui il volume di cui desidera creare uno snapshot e apra il menu delle azioni.
  3. Selezioni Create Snapshot.
  4. Inserisca un Snapshot Name e, facoltativamente, una descrizione.
  5. 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

  1. Acceda a Volumes > Snapshots.
  2. Individui lo snapshot e apra il menu delle azioni.
  3. Selezioni Create Volume.
  4. Inserisca il nome del nuovo volume, le dimensioni (almeno pari a quelle dello snapshot) e il tipo.
  5. 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

  1. Acceda a Volumes > Snapshots.
  2. Individui lo snapshot e apra il menu delle azioni.
  3. Selezioni Delete Snapshot.
  4. 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>