Raid per soft amb Linux

Última actualització: setembre de 2015

Haurem d'instal·lar mdadm i hdparm per poder treballar amb Raid. Normalment voldrem fer:

-Raid-1 (mirall), format per 2 discos. Un serà una rèplica de l'altre.

-Raid-5. Format per 3 o més discos. Sempre perdem la capacitat d'un d'ells.

A tenir en compte que la partició /boot només pot residir a un Raid-1

Crear un raid-1:

mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc

Consultar estat del raid:

mdadm --detail /dev/md0

Afegir un disc al raid (per exemple ha petat un disc i l'hem canviat per un de nou que hem afegit):

mdadm /dev/md0 -a /dev/sdc

Si volem afegir un disc que abans ja formava part d'un raid, el tindrem que "netejar":

mdadm --zero-superblock /dev/sdc

Si tenim que "engegar" un array (per què durant l'arranc no s'ha pogut inicialitzar, p.e.):

mdadm -A /dev/md0 /dev/sdb /dev/sdc

Si agafem els discos d'un raid i els portem a un altre màquina:

Fem servir la instrucció de crear un raid nou. El tornarà a muntar correctament sense destruir les dades existents:

mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc

Si agafem els discos d'un raid i els portem a un altre màquina i a més ens falta un disc per què ha petat:

Diem de crear un raid nou, i li diem que un disc no hi és:

mdadm --create --verbose /dev/md5 --level=5 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc missing

En teoria no fa falta ficar cap configuració al fitxer mdadm.conf, però és molt recomanable. Sobre tot, si tenim problemes serà molt agraït el tenir els arrays ben configurats a aquest fitxer:

mdadm --detail --scan >> /etc/mdadm/mdadm.conf

Un exemple pràctic: tenim 2 discs en RAID1 i se'ns ha petat un disc:

Imaginem que tenim un RAID1 amb dos discs: /dev/sda i /dev/sdb. L'últim està espatllat i l'hem de substituir per un de nou.

Mirem l'estat del RAID:

cat /proc/mdstat

Identifiquem (comprovar número de sèrie per a treure el disc correcte) el disc petat:

hdparm -i /dev/sdb

Eliminem el disc petat del RAID:

mdadm --manage /dev/md0 --fail /dev/sdb

mdadm --manage /dev/md0 --remove /dev/sdb

Apaguem l'equip, treiem el disc petat i afegim un de nou. Quan tenim l'equip un altre cop en marxa:

sfdisk -d /dev/sda | sfdisk /dev/sdb

Això és si els dos discs son exactament iguals en capacitat i ens serveix per a establir el particionat del segon disc idèntic a l'existent al primer disc. Si no, podem particionar manualment el segon disc amb parted, p.e.

Afegim el nou disc al RAID:

mdadm --manage /dev/md0 --add /dev/sdb

El RAID començarà a recomposarse. Podem comprovar com va el procés:

cat /proc/mdstat

*****

Managing RAID and LVM with Linux és un bon tutorial sobre Raid i LVM.

Aquest article de Jackie Rosemberguer també és bó.