6.3. Processo di recupero da un LVM Mirror Failure
6.3. Processo di recupero da un LVM Mirror Failure
Questa sezione fornisce un esempio sul ripristino da un fallimento di una sezione del volume speculare LVM a causa del fallimento del dispositivo sottostante per un volume fisico, con il parametro mirror_log_fault_policy impostato su remove rendendo necessaria una compilazione manuale del mirror. Per maggiori informazioni su come impostare il parametro mirror_log_fault_policy consultare Sezione 6.3, «Processo di recupero da un LVM Mirror Failure».
Quando una sezione del mirror fallisce LVM converte il volume speculare in volume lineare il quale a sua volta continua ad operare senza però avere una ridondanza speculare. A questo punto è possibile aggiungere un nuovo dispositivo a disco sul sistema da utilizzare come dispositivo fisico di sostituzione e successivamente ricompilare il mirror.
Il seguente comando crea i volumi fisici che verranno utilizzati per il mirror.
pvcreate /dev/sd[abcdefgh][12]
Physical volume "/dev/sda1" successfully created
Physical volume "/dev/sda2" successfully created
Physical volume "/dev/sdb1" successfully created
Physical volume "/dev/sdb2" successfully created
Physical volume "/dev/sdc1" successfully created
Physical volume "/dev/sdc2" successfully created
Physical volume "/dev/sdd1" successfully created
Physical volume "/dev/sdd2" successfully created
Physical volume "/dev/sde1" successfully created
Physical volume "/dev/sde2" successfully created
Physical volume "/dev/sdf1" successfully created
Physical volume "/dev/sdf2" successfully created
Physical volume "/dev/sdg1" successfully created
Physical volume "/dev/sdg2" successfully created
Physical volume "/dev/sdh1" successfully created
Physical volume "/dev/sdh2" successfully created
[root@link-08 ~]# pvcreate /dev/sd[abcdefgh][12]
Physical volume "/dev/sda1" successfully created
Physical volume "/dev/sda2" successfully created
Physical volume "/dev/sdb1" successfully created
Physical volume "/dev/sdb2" successfully created
Physical volume "/dev/sdc1" successfully created
Physical volume "/dev/sdc2" successfully created
Physical volume "/dev/sdd1" successfully created
Physical volume "/dev/sdd2" successfully created
Physical volume "/dev/sde1" successfully created
Physical volume "/dev/sde2" successfully created
Physical volume "/dev/sdf1" successfully created
Physical volume "/dev/sdf2" successfully created
Physical volume "/dev/sdg1" successfully created
Physical volume "/dev/sdg2" successfully created
Physical volume "/dev/sdh1" successfully created
Physical volume "/dev/sdh2" successfully created
Copy to ClipboardCopied!Toggle word wrapToggle overflow
I seguenti comandi creano il gruppo di volumi 'volume group' vg ed i volumi speculari groupfs.
vgcreate vg /dev/sd[abcdefgh][12]
Volume group "vg" successfully created
lvcreate -L 750M -n groupfs -m 1 vg /dev/sda1 /dev/sdb1 /dev/sdc1
Rounding up size to full physical extent 752.00 MB
Logical volume "groupfs" created
[root@link-08 ~]# vgcreate vg /dev/sd[abcdefgh][12]
Volume group "vg" successfully created
[root@link-08 ~]# lvcreate -L 750M -n groupfs -m 1 vg /dev/sda1 /dev/sdb1 /dev/sdc1
Rounding up size to full physical extent 752.00 MB
Logical volume "groupfs" created
Copy to ClipboardCopied!Toggle word wrapToggle overflow
È possibile utilizzare il comando lvs per verificare la disposizione del volume speculare e dei dispositivi relativi alla sezione del mirror e del log. Da notare che nel primo esempio il mirror non è ancora completamente sincronizzato; dovreste attendere fino a quando il campo Copy% mostra il valore 100.00 prima di continuare.
Copy to ClipboardCopied!Toggle word wrapToggle overflow
In questo esempio la sezione primaria del mirror /dev/sda1 fallisce. Ogni attività di scrittura sul volume speculare causa il rilevamento da parte di LVM del mirror fallito. Quando ciò accade, LVM converte il mirror in un volume lineare singolo. In questo caso per attivare la conversione, verrà eseguito un comando dd
dd if=/dev/zero of=/dev/vg/groupfs count=10
10+0 records in
10+0 records out
[root@link-08 ~]# dd if=/dev/zero of=/dev/vg/groupfs count=10
10+0 records in
10+0 records out
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Usare il comando lvs per verificare se il dispositivo è un dispositivo lineare. A causa del fallimento del disco si verificheranno errori I/O.
lvs -a -o +devices
/dev/sda1: read failed after 0 of 2048 at 0: Input/output error
/dev/sda2: read failed after 0 of 2048 at 0: Input/output error
LV VG Attr LSize Origin Snap% Move Log Copy% Devices
groupfs vg -wi-a- 752.00M /dev/sdb1(0)
[root@link-08 ~]# lvs -a -o +devices
/dev/sda1: read failed after 0 of 2048 at 0: Input/output error
/dev/sda2: read failed after 0 of 2048 at 0: Input/output error
LV VG Attr LSize Origin Snap% Move Log Copy% Devices
groupfs vg -wi-a- 752.00M /dev/sdb1(0)
Copy to ClipboardCopied!Toggle word wrapToggle overflow
A questo punto dovreste essere in grado di usare il volume logico senza però avere una ridondanza del mirror.
Per ricompilare il volume speculare sostituite l'unità non funzionante e ricreate il volume fisico. Se utilizzate lo stesso disco invece di sostituirlo con un disco nuovo visualizzerete alcuni avvertimenti "inconsistenti" quando eseguirete il comando pvcreate. Per non visualizzare questo messaggio eseguire vgreduce --removemissing.
Aiutiamo gli utenti Red Hat a innovarsi e raggiungere i propri obiettivi con i nostri prodotti e servizi grazie a contenuti di cui possono fidarsi. Esplora i nostri ultimi aggiornamenti.
Rendiamo l’open source più inclusivo
Red Hat si impegna a sostituire il linguaggio problematico nel codice, nella documentazione e nelle proprietà web. Per maggiori dettagli, visita il Blog di Red Hat.
Informazioni su Red Hat
Forniamo soluzioni consolidate che rendono più semplice per le aziende lavorare su piattaforme e ambienti diversi, dal datacenter centrale all'edge della rete.