LVM: De Stripe a Linear

Tenim un escenari de dos disc SSD amb un volum lógic que fan stripping entre ells. O sigui un LV stripe 2. Ara volem recuperar un disc per fer un altre prova i utilitzar només un SSD reduint el FS. Això és pot fer sense gaires problemes però a més a més ens agradaria treure l’stripping perquè no té sentit en un sol disc. I aquí comença el “calvari”.

No es pot convertir directament.

Aquí els passos que he seguit.

# LV amb 2 stripes un a /dev/sdb i l'altre a /dev/sdc

e2fsck -f /dev/mapper/ssd-ssd
resize2fs /dev/mapper/ssd-ssd 90G

pvmove --alloc anywhere /dev/sdc
vgreduce ssd /dev/sdc

dmsetup table # Veurem que el LV contés 2 stripes a /dev/sdb

vgextend ssd /dev/sdc # Ara afegirem el disc net per afegir el mirror

lvconvert --type mirror -m 1  ssd/ssd
vgs -a -o +devices
lvs -a -o +devices

lvconvert -m0 ssd/ssd /dev/sdb # Per eliminar el mirror amb els 2 stripes

vgreduce ssd /dev/sdb # Eliminem el disc que conté els 2 stripes
dmsetup table # verifiquem que sigui Linear el LV
vgs -a -o +devices
lvs -a -o +devices

lvresize -l +100%FREE ssd/ssd
resize2fs /dev/ssd/ssd

# Si volem crear un stripe exemple 2 disk a 4k el sector stripe

pvcreate /devsdb /dev/sdc
vgcreate ssd /dev/sdb /dev/sdc
lvcreate -i2 -I4 -l 100%FREE -nssd ssd

dmsetup table
ssd-ssd: 0 468877312 striped 2 8 8:16 2048 8:32 2048