Ricerca nel sito web

Come acquisire un'istantanea del volume logico e ripristinarla in LVM - Parte III


Le istantanee LVM sono copie point-in-time efficienti in termini di spazio dei volumi LVM. Funziona solo con lvm e consuma lo spazio solo quando vengono apportate modifiche al volume logico di origine al volume dello snapshot. Se al volume di origine sono state apportate modifiche enormi per la somma di 1 GB, le stesse modifiche verranno apportate al volume dello snapshot. È meglio avere sempre piccole modifiche per l'efficienza dello spazio. Nel caso in cui lo snapshot esaurisca lo spazio di archiviazione, possiamo utilizzare lvextend per crescere. E se abbiamo bisogno di ridurre l'istantanea possiamo usare lvreduce.

Se abbiamo cancellato accidentalmente qualsiasi file dopo aver creato un'istantanea non dobbiamo preoccuparci perché l'istantanea contiene il file originale che abbiamo eliminato. È possibile che il file fosse presente al momento della creazione dello snapshot. Non alterare il volume dello snapshot, mantienilo così com'è mentre lo snapshot viene utilizzato per eseguire un ripristino rapido.

Le istantanee non possono essere utilizzate come opzione di backup. I backup sono copie primarie di alcuni dati, quindi non possiamo utilizzare le istantanee come opzione di backup.

Requisiti

  1. Creare spazio di archiviazione su disco con LVM in Linux – PARTE 1
  2. Come estendere/ridurre gli LVM in Linux – Parte II
La mia configurazione del server
  1. Sistema operativo – CentOS 6.5 con installazione LVM
  2. IP del server – 192.168.0.200

Passaggio 1: creazione dell'istantanea LVM

Innanzitutto, controlla lo spazio libero nel gruppo di volumi per creare una nuova istantanea utilizzando il seguente comando "vgs".

vgs
lvs

Vedi, ci sono 8 GB di spazio libero rimasti nell'output vgs sopra. Quindi, creiamo uno snapshot per uno dei miei volumi denominato tecmint_datas. A scopo dimostrativo, creerò solo un volume di snapshot da 1 GB utilizzando i seguenti comandi.

lvcreate -L 1GB -s -n tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas        

OR

lvcreate --size 1G --snapshot --name tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas

Entrambi i comandi precedenti fanno la stessa cosa:

  1. -s – Crea un'istantanea
  2. -n: nome dell'istantanea

Ecco la spiegazione di ciascun punto sopra evidenziato.

  1. Dimensioni dell'istantanea che sto creando qui.
  2. Crea un'istantanea.
  3. Crea un nome per l'istantanea.
  4. Nome del nuovo snapshot.
  5. Un volume di cui creeremo un'istantanea.

Se desideri rimuovere uno snapshot, puoi utilizzare il comando "lvremove".

# lvremove /dev/vg_tecmint_extra/tecmint_datas_snap

Ora elenca lo snapshot appena creato utilizzando il comando seguente.

lvs

Come vedi sopra, un'istantanea è stata creata con successo. Ho contrassegnato con una freccia la provenienza delle istantanee da dove sono state create, è tecmint_datas. Sì, perché abbiamo creato un'istantanea per tecmint_datas l-volume.

Aggiungiamo alcuni nuovi file in tecmint_datas. Ora il volume contiene alcuni dati di circa 650 MB e la dimensione della nostra istantanea è 1 GB. Quindi c'è abbastanza spazio per eseguire il backup delle nostre modifiche nel volume dello snap. Qui possiamo vedere qual è lo stato della nostra istantanea utilizzando il comando seguente.

lvs

Come vedi, ora è stato utilizzato il 51% del volume dell'istantanea, nessun problema per ulteriori modifiche ai tuoi file. Per informazioni più dettagliate utilizzare il comando.

lvdisplay vg_tecmint_extra/tecmint_data_snap

Ancora una volta, ecco una chiara spiegazione di ciascun punto evidenziato nell'immagine sopra.

  1. Nome del volume logico dell'istantanea.
  2. Nome del gruppo di volumi attualmente in uso.
  3. Volume snapshot in modalità lettura e scrittura, possiamo persino montare il volume e utilizzarlo.
  4. L'ora in cui è stata creata l'istantanea. Questo è molto importante perché uno snapshot cercherà ogni modifica dopo questo periodo.
  5. Questa istantanea appartiene al volume logico tecmint_datas.
  6. Un volume logico è in linea e disponibile per l'uso.
  7. Dimensioni del volume di origine di cui abbiamo acquisito un'istantanea.
  8. Dimensione cow-table=copia in scrittura, il che significa che qualsiasi modifica apportata al volume tecmint_data verrà scritta in questo snapshot.
  9. Attualmente, la dimensione dell'istantanea utilizzata, il nostro tecmint_datas era 10G ma la dimensione della nostra istantanea era 1GB, il che significa che il nostro file è di circa 650 MB. Quindi, quello che ora è nel 51% se il file raggiunge la dimensione di 2 GB in tecmint_datas, la dimensione aumenterà più della dimensione allocata nello snapshot, sicuramente avremo problemi con uno snapshot. Ciò significa che dobbiamo estendere la dimensione del volume logico (volume snapshot).
  10. Fornisce la dimensione del blocco per uno snapshot.

Ora copiamo più di 1 GB di file in tecmint_datas, vediamo cosa succederà. In tal caso, riceverai un messaggio di errore che dice "Errore di input/output", che significa spazio esaurito nell'istantanea.

Se il volume logico si riempie, verrà eliminato automaticamente e non potremo più utilizzarlo, anche se estendiamo la dimensione del volume snapshot. È l'idea migliore avere le stesse dimensioni dell'Origine durante la creazione di un'istantanea, la dimensione di tecmint_datas era 10G, se creo una dimensione di istantanea di 10GB non traboccherà mai come sopra perché ha abbastanza spazio da occupare scatti del tuo volume.

Passaggio 2: estendere l'istantanea in LVM

Se abbiamo bisogno di estendere la dimensione dell'istantanea prima dell'overflow, possiamo farlo utilizzando.

lvextend -L +1G /dev/vg_tecmint_extra/tecmint_data_snap

Ora c'era una dimensione totale di 2 GB per uno snapshot.

Successivamente, verifica la nuova dimensione e la tabella COW utilizzando il comando seguente.

lvdisplay /dev/vg_tecmint_extra/tecmint_data_snap

Per conoscere la dimensione del volume dello snap e l'utilizzo %.

lvs

Ma se disponi di un volume snapshot delle stesse dimensioni del volume di origine non dobbiamo preoccuparci di questi problemi.

Passaggio 3: ripristino dell'istantanea o unione

Per ripristinare l'istantanea, dobbiamo prima smontare il file system.

unmount /mnt/tecmint_datas/

Controlla semplicemente il punto di montaggio per verificare se è smontato o meno.

df -h

Ecco che la montatura è stata smontata, quindi possiamo continuare a ripristinare l'istantanea. Per ripristinare lo snap utilizzare il comando lvconvert.

lvconvert --merge /dev/vg_tecmint_extra/tecmint_data_snap

Una volta completata l'unione, il volume dello snapshot verrà rimosso automaticamente. Ora possiamo vedere lo spazio della nostra partizione usando il comando df.

df -Th

Dopo che il volume dello snapshot viene rimosso automaticamente. Puoi vedere la dimensione del volume logico.

lvs

Importante: per estendere automaticamente le istantanee, possiamo farlo utilizzando alcune modifiche nel file conf. Per il manuale, possiamo estendere utilizzando lvextend.

Apri il file di configurazione lvm utilizzando l'editor che preferisci.

vim /etc/lvm/lvm.conf

Cerca la parola estensione automatica. Per impostazione predefinita, il valore sarà simile al seguente.

Cambia qui 100 in 75, in tal caso la soglia di estensione automatica è 75 e la percentuale di estensione automatica è 20 , le dimensioni verranno ampliate del 20%

Se il volume dello snapshot raggiunge il 75%, la dimensione del volume dello snap verrà automaticamente ampliata del 20% in più. Pertanto, possiamo espanderci automaticamente. Salva ed esci dal file usando wq!.

Ciò salverà le istantanee dalla caduta di overflow. Questo ti aiuterà anche a risparmiare più tempo. LVM è l'unico metodo di partizione in cui possiamo espanderci maggiormente e avere molte funzionalità come thin provisioning, striping, volume virtuale e altro ancora utilizzando il thin-pool, vediamole nell'argomento successivo.