Creació de RAID 5 (Striping amb paritat distribuïda) a Linux - Part 4


A RAID 5, tires de dades en diverses unitats amb paritat distribuïda. El striping amb paritat distribuïda significa que dividirà la informació de paritat i les dades de stripe en diversos discs, que tindran una bona redundància de dades.

Per al nivell RAID hauria de tenir almenys tres discs durs o més. RAID 5 s'utilitza en l'entorn de producció a gran escala on és rendible i ofereix rendiment i redundància.

La paritat és el mètode comú més senzill per detectar errors en l'emmagatzematge de dades. La paritat emmagatzema informació a cada disc, suposem que tenim 4 discos, en 4 discos es dividirà un espai de disc en tots els discos per emmagatzemar la informació de paritat. Si algun dels discs falla encara, podem obtenir les dades reconstruint-les a partir de la informació de paritat després de substituir el disc fallat.

  1. Ofereix un millor rendiment
  2. Admet redundància i tolerància a errors.
  3. Admet opcions de recanvi en calent.
  4. Perdrà un sol disc de capacitat per utilitzar la informació de paritat.
  5. No hi ha pèrdua de dades si falla un sol disc. Podem reconstruir des de la paritat després de substituir el disc fallat.
  6. S'adapta a un entorn orientat a transaccions, ja que la lectura serà més ràpida.
  7. A causa de la sobrecàrrega de la paritat, l'escriptura serà lenta.
  8. La reconstrucció triga molt de temps.

Es requereixen un mínim de 3 discs durs per crear Raid 5, però podeu afegir més discs, només si teniu un controlador de raid de maquinari dedicat amb diversos ports. Aquí, estem utilitzant el programari RAID i el paquet mdadm per crear un raid.

mdadm és un paquet que ens permet configurar i gestionar dispositius RAID a Linux. Per defecte no hi ha cap fitxer de configuració disponible per a RAID, hem de desar el fitxer de configuració després de crear i configurar la configuració de RAID en un fitxer separat anomenat mdadm.conf.

Abans d'avançar, us suggereixo que llegiu els articles següents per entendre els fonaments bàsics de RAID a Linux.

  1. Conceptes bàsics de RAID a Linux - Part 1
  2. Creació de RAID 0 (Stripe) a Linux - Part 2
  3. Configuració de RAID 1 (mirall) a Linux - Part 3

Operating System :	CentOS 6.5 Final
IP Address	 :	192.168.0.227
Hostname	 :	rd5.tecmintlocal.com
Disk 1 [20GB]	 :	/dev/sdb
Disk 2 [20GB]	 :	/dev/sdc
Disk 3 [20GB]	 :	/dev/sdd

Aquest article és la part 4 d'una sèrie de 9 tutorials RAID, aquí configurarem un programari RAID 5 amb paritat distribuïda en sistemes o servidors Linux amb tres discos de 20 GB anomenats /dev/sdb, /dev/sdc i /dev. /sdd.

Pas 1: instal·lar mdadm i verificar unitats

1. Com hem dit anteriorment, estem utilitzant la versió final de CentOS 6.5 per a aquesta configuració de raid, però es poden seguir els mateixos passos per a la configuració de RAID en qualsevol distribució basada en Linux.

# lsb_release -a
# ifconfig | grep inet

2. Si seguiu la nostra sèrie de raid, suposem que ja heu instal·lat el paquet 'mdadm', si no, utilitzeu l'ordre següent segons la vostra distribució de Linux per instal·lar el paquet.

# yum install mdadm		[on RedHat systems]
# apt-get install mdadm 	[on Debain systems]

3. Després de la instal·lació del paquet 'mdadm', enumerem els tres discs de 20 GB que hem afegit al nostre sistema mitjançant l'ordre 'fdisk'.

# fdisk -l | grep sd

4. Ara és el moment d'examinar les tres unitats connectades per a qualsevol bloc RAID existent en aquestes unitats mitjançant l'ordre següent.

# mdadm -E /dev/sd[b-d]
# mdadm --examine /dev/sdb /dev/sdc /dev/sdd

Nota: a partir de la imatge de dalt es mostra que encara no s'ha detectat cap superbloc. Per tant, no hi ha cap RAID definit a les tres unitats. Comencem a crear-ne un ara.

Pas 2: particionar els discs per a RAID

5. En primer lloc, hem de particionar els discs (/dev/sdb, /dev/sdc i /dev/sdd) abans d'afegir-los a un RAID, així que anem a definir la partició utilitzant l'ordre 'fdisk', abans de reenviar passa als següents passos.

# fdisk /dev/sdb
# fdisk /dev/sdc
# fdisk /dev/sdd

Si us plau, seguiu les instruccions següents per crear una partició a la unitat /dev/sdb.

  1. Premeu ‘n’ per crear una partició nova.
  2. A continuació, trieu P per a la partició primària. Aquí estem escollint Primària perquè encara no hi ha particions definides.
  3. A continuació, trieu 1 perquè sigui la primera partició. Per defecte, serà 1.
  4. Aquí per a la mida del cilindre, no hem de triar la mida especificada perquè necessitem tota la partició per a RAID, així que premeu Retorn dues vegades per triar la mida completa predeterminada.
  5. A continuació, premeu p per imprimir la partició creada.
  6. Canvieu el tipus, si necessitem conèixer tots els tipus disponibles, premeu L.
  7. Aquí, estem seleccionant fd perquè el meu tipus és RAID.
  8. A continuació, premeu p per imprimir la partició definida.
  9. A continuació, torneu a utilitzar p per imprimir els canvis que hem fet.
  10. Utilitzeu 'w' per escriure els canvis.

Nota: hem de seguir els passos esmentats anteriorment per crear particions també per a les unitats sdc i sdd.

Ara particioneu les unitats sdc i sdd seguint els passos que es donen a la captura de pantalla o podeu seguir els passos anteriors.

# fdisk /dev/sdc
# fdisk /dev/sdd

6. Després de crear particions, comproveu si hi ha canvis a les tres unitats sdb, sdc i sdd.

# mdadm --examine /dev/sdb /dev/sdc /dev/sdd

or

# mdadm -E /dev/sd[b-d]

Nota: a la imatge de dalt. representeu el tipus és fd, és a dir, per a RAID.

7. Ara comproveu els blocs RAID a les particions acabades de crear. Si no es detecten superblocs, podem avançar per crear una nova configuració RAID 5 en aquestes unitats.

Pas 3: Creació del dispositiu md md0

8. Ara creeu un dispositiu Raid 'md0' (és a dir, /dev/md0) i incloeu el nivell de raid a totes les particions de nova creació (sdb1, sdc1 i sdd1) mitjançant l'ordre següent.

# mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

or

# mdadm -C /dev/md0 -l=5 -n=3 /dev/sd[b-d]1

9. Després de crear el dispositiu RAID, comproveu i verifiqueu el RAID, els dispositius inclosos i el nivell RAID de la sortida mdstat.

# cat /proc/mdstat

Si voleu controlar el procés de construcció actual, podeu utilitzar l'ordre 'watch', només cal que passeu el 'cat /proc/mdstat' amb l'ordre watch que actualitzarà la pantalla cada 1 segon.

# watch -n1 cat /proc/mdstat

10. Després de la creació del raid, verifiqueu els dispositius del raid mitjançant l'ordre següent.

# mdadm -E /dev/sd[b-d]1

Nota: La sortida de l'ordre anterior serà una mica llarga ja que imprimeix la informació de les tres unitats.

11. A continuació, verifiqueu la matriu RAID per suposar que els dispositius que hem inclòs al nivell RAID s'estan executant i comencen a tornar-se a sincronitzar.

# mdadm --detail /dev/md0

Pas 4: creació del sistema de fitxers per a md0

12. Creeu un sistema de fitxers per al dispositiu 'md0' utilitzant ext4 abans de muntar-lo.

# mkfs.ext4 /dev/md0

13. Ara creeu un directori a '/mnt' i després munteu el sistema de fitxers creat a /mnt/raid5 i comproveu els fitxers sota el punt de muntatge, veureu el directori perdut+trobat.

# mkdir /mnt/raid5
# mount /dev/md0 /mnt/raid5/
# ls -l /mnt/raid5/

14. Creeu alguns fitxers sota el punt de muntatge /mnt/raid5 i afegiu text a qualsevol dels fitxers per verificar el contingut.

# touch /mnt/raid5/raid5_tecmint_{1..5}
# ls -l /mnt/raid5/
# echo "tecmint raid setups" > /mnt/raid5/raid5_tecmint_1
# cat /mnt/raid5/raid5_tecmint_1
# cat /proc/mdstat

15. Hem d'afegir una entrada a fstab, en cas contrari no mostrarà el nostre punt de muntatge després de reiniciar el sistema. Per afegir una entrada, hauríem d'editar el fitxer fstab i afegir la línia següent tal com es mostra a continuació. El punt de muntatge variarà segons el vostre entorn.

# vim /etc/fstab

/dev/md0                /mnt/raid5              ext4    defaults        0 0

16. A continuació, executeu l'ordre 'mount -av' per comprovar si hi ha errors a l'entrada fstab.

# mount -av

Pas 5: deseu la configuració de Raid 5

17. Com s'ha esmentat anteriorment a la secció de requisits, per defecte RAID no té un fitxer de configuració. L'hem de guardar manualment. Si no se segueix aquest pas, el dispositiu RAID no estarà a md0, serà en algun altre número aleatori.

Per tant, hem d'haver de desar la configuració abans de reiniciar el sistema. Si es desa la configuració, es carregarà al nucli durant el reinici del sistema i també es carregarà RAID.

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

Nota: Desar la configuració mantindrà estable el nivell RAID al dispositiu md0.

Pas 6: afegir unitats de recanvi

18. De què serveix afegir una unitat de recanvi? és molt útil si tenim una unitat de recanvi, si algun dels discs falla a la nostra matriu, aquesta unitat de recanvi s'activarà i reconstruirà el procés i sincronitzarà les dades d'altres discs, de manera que podem veure una redundància aquí.

Per obtenir més instruccions sobre com afegir una unitat de recanvi i comprovar la tolerància a errors de Raid 5, llegiu #Pas 6 i #Pas 7 a l'article següent.

  1. Afegiu una unitat de recanvi a la configuració de Raid 5

Conclusió

Aquí, en aquest article, hem vist com configurar un RAID 5 amb tres discs. Més endavant en els meus propers articles, veurem com resoldre problemes quan falla un disc a RAID 5 i com substituir-lo per a la recuperació.