GNU/Linux >> Linux Esercitazione >  >> Linux

RedHat / CentOS:gestione del software RAID con mdadm

Nozioni di base

mdadm (amministratore di più dispositivi) è uno strumento estremamente utile per l'esecuzione di sistemi RAID. È uno strumento per creare, gestire e monitorare i dispositivi RAID utilizzando il driver md. Può essere usato come sostituto dei raidtools o come supplemento. Puoi utilizzare dischi interi (/dev/sdb, /dev/sdc) o singole partizioni (/dev/sdb1, /dev/sdc1) come componenti di un array.

I vantaggi dell'utilizzo di mdadm sono:
1. mdadm può diagnosticare, monitorare e raccogliere informazioni dettagliate sugli array.
2. mdadm è un unico programma centralizzato e non una raccolta di programmi dispersi, quindi esiste una sintassi comune per ogni comando di gestione RAID.
3. mdadm può eseguire quasi tutte le sue funzioni senza avere un file di configurazione e non ne usa uno per impostazione predefinita.

Gli strumenti software mdadm funzionano per tutte le distribuzioni Linux, con la stessa sintassi.

Installazione di mdadm

Assicurati di eseguire un aggiornamento di sistema e quindi di installare l'ultimo programma mdadm nel tuo sistema:

# yum clean all
# yum update
# yum install mdadm -y

Il file di configurazione

– Il file /etc/mdadm.conf viene utilizzato per identificare quali dispositivi sono dispositivi RAID e a quale array appartiene un dispositivo specifico. Ciò è necessario per creare automaticamente i dispositivi RAID all'avvio.
– Per impostazione predefinita, questo file non è disponibile e deve essere creato manualmente.
– Una volta terminata la creazione dei dispositivi RAID, è possibile crea semplicemente il file mdadm.conf reindirizzando l'output del comando :

# mdadm --detail -scan
ARRAY /dev/md0 level=linear num-devices=2 metadata=1.2 name=localhost.localdomain:0 UUID=a50ac9f2:62646d92:725255bd:7f9d30e3
   devices=/dev/sdb,/dev/sdc

Come visto nell'output sopra, ho un array lineare md0 con 2 dispositivi /dev/sdb e /dev/sdc.

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

Creazione dei dispositivi RAID

Per elencare le opzioni per creare un dispositivo RAID con mdadm utilizzare l'opzione –help. Ci sono diverse opzioni durante la creazione di RAID con mdadm. Ne elencherò alcuni importanti.

# mdadm --create --help
	-C | --create /dev/mdn
	-l | --level  0|1|4|5
	-n | --raid-devices device [..]
	-x | --spare-devices device [..]

Modalità lineare
– Due o più dischi vengono combinati in un dispositivo fisico.
– I dischi vengono "aggiunti" l'uno all'altro, quindi la scrittura lineare sul dispositivo RAID riempirà prima il disco 0, quindi il disco 1 e così via acceso.
– I dischi non devono avere la stessa dimensione.
– Non c'è ridondanza in questo livello.
– Le prestazioni di lettura e scrittura non aumenteranno per singole letture/scritture . Ma se più utenti utilizzano il dispositivo, più utenti utilizzano dischi diversi contemporaneamente, vedrai un miglioramento delle prestazioni.

Per creare due dischi in modalità lineare con mdadm, basta digitare una singola riga di comando:

# mdadm --create --verbose /dev/md0 --level=linear --raid-devices=2 /dev/sdb /dev/sdc
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

Lo stesso comando può essere eseguito utilizzando la versione più breve delle opzioni :

# mdadm --Cv /dev/md0 --l linear -n2 /dev/sdb /dev/sdc

RAID 0
– Chiamata anche modalità "strisce".
– I dispositivi devono avere le stesse dimensioni.
– Non c'è ridondanza neanche a questo livello. In caso di guasto di un'unità non è possibile alcun salvataggio dei dati.
– Le prestazioni di lettura e scrittura aumenteranno, poiché le letture e le scritture vengono eseguite in parallelo sui dispositivi.

Per creare due dischi in modalità RAID 0:

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

RAID 1
– Questo livello ha ridondanza.
– RAID-1 può essere utilizzato su due o più dischi con zero o più dischi di riserva.
– Questa modalità mantiene un esatto mirror delle informazioni su uno disco sugli altri dischi.
– Naturalmente, i dischi devono avere la stessa dimensione.
– Se un disco è più grande di un altro, il dispositivo RAID avrà le dimensioni del disco più piccolo.
– Se vengono rimossi (o si arrestano in modo anomalo) fino a N-1 dischi, tutti i dati sono ancora intatti. Se sono disponibili dischi di riserva e se il sistema è sopravvissuto all'arresto anomalo, la ricostruzione del mirror verrà avviata immediatamente su uno dei dischi di riserva, dopo il rilevamento dell'errore dell'unità.
– Le prestazioni di scrittura sono spesso peggiori rispetto a un singolo disco. dispositivo in quanto gli stessi dati devono essere scritti contemporaneamente su 2 o più dispositivi.

Puoi configurare RAID 1 con due dischi e un disco di riserva:

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

RAID 4
– Questo livello RAID non viene utilizzato molto spesso.
– Può essere utilizzato su tre o più dischi.
– Invece di eseguire il mirroring completo delle informazioni, mantiene le informazioni di parità su un'unità e scrive i dati sugli altri dischi in modo simile a RAID-0.
– Poiché un disco è riservato alle informazioni sulla parità, la dimensione dell'array sarà (N-1)*S, dove S è la dimensione del unità più piccola dell'array.
– Se un'unità si guasta, le informazioni sulla parità possono essere utilizzate per ricostruire tutti i dati. Se due unità si guastano, tutti i dati vengono persi.

Per configurare RAID 4 con 4 dischi e un disco di riserva:

# mdadm --create --verbose /dev/md0 --level=4 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde  spare-devices=/dev/sdf

RAID 5
– RAID-5 può essere utilizzato su tre o più dischi, con zero o più dischi di riserva.
– La dimensione del dispositivo RAID-5 risultante sarà (N-1)*S, proprio come RAID -4.
– La grande differenza tra RAID-5 e -4 è che le informazioni sulla parità sono distribuite uniformemente tra le unità partecipanti, evitando il problema del collo di bottiglia in RAID-4.
– Se uno dei i dischi si guastano, tutti i dati sono ancora intatti, grazie alle informazioni sulla parità. Se sono disponibili dischi di riserva, la ricostruzione inizierà immediatamente dopo l'errore del dispositivo. Se due dischi si guastano contemporaneamente, tutti i dati vengono persi. RAID-5 può sopravvivere a un guasto del disco, ma non a due o più.
– Le letture sono simili alle letture RAID-0, le scritture sono generalmente costose poiché è necessario scrivere la parità che diventa l'overhead.

Per configurare RAID 5 con 3 dischi e 1 disco di riserva utilizzando mdadm:

# mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd --spare-devices=/dev/sde

Creazione di filesystem su dispositivi RAID

Per creare un filesystem ext4 sul dispositivo RAID e montarlo:

# mkfs.ext4 /dev/md0
# mkdir /data01
# mount /dev/md0 /data01

Assicurati di inserire una voce in /etc/fstab, per renderlo persistente tra i riavvii.

# vi /etc/fstab
/dev/md0	/data01		ext4	defaults	0    0

Verifica della configurazione

/proc/mdstat è un file gestito dal kernel che contiene le informazioni in tempo reale sugli array RAID e sui dispositivi.

# cat /proc/mdstat 
Personalities : [linear] 
md0 : active linear sdc[1] sdb[0]
      4194288 blocks super 1.2 0k rounding
      
unused devices: [none]

Per ottenere informazioni dettagliate su un array specifico, utilizzare :

# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Mon Nov  3 06:03:03 2014
     Raid Level : linear
     Array Size : 4194288 (4.00 GiB 4.29 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Mon Nov  3 06:03:03 2014
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

       Rounding : 0K

           Name : localhost.localdomain:0  (local to host localhost.localdomain)
           UUID : a50ac9f2:62646d92:725255bd:7f9d30e3
         Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc

Arresta/Avvia (assembla) e rimuovi l'array RAID

Per interrompere un array esistente e rimuoverlo completamente dal sistema:

# mdadm --stop /dev/md0
# mdadm --remove /dev/md0

Per avviare (assemblare) un array interrotto:

# mdadm --asemble /dev/md0
NOTA :Il comando assemble legge il file /etc/mdadm.conf per avviare l'array. Nel caso in cui non avessi salvato la configurazione in mdadm.conf prima di arrestare l'array, questo comando fallirebbe. È possibile utilizzare il comando seguente per ricreare il file mdadm.conf:
# mdadm –examine –scan> /etc/mdadm.conf

Gestione dei dispositivi nell'array

aggiunta di un dispositivo
Per aggiungere un nuovo dispositivo all'array :

# mdadm --add /dev/md0 /dev/sdd

rimozione di un dispositivo
Possiamo fallire un dispositivo (-f) da un array e quindi rimuoverlo (-r):

# mdadm --manage /dev/md0 -f /dev/sdd
# mdadm --manage /dev/mdadm -r /dev/sdd
Sostituzione di un disco mirror guasto in un array RAID software (mdadm)


Linux
  1. Sostituzione di un'unità RAID 6 difettosa con mdadm

  2. Implementazione Mdadm Raid con partizionamento Gpt?

  3. Procedura:CentOS 7 – Creazione di partizioni più grandi di 2 TB con PARTED

  4. CentOS / RHEL:come assemblare un software RAID in modalità Rescue

  5. CentOS / RHEL:come rimuovere uno specchio con mdadm

Protezione di SSH su Redhat/Centos con l'autenticazione a due fattori WiKID

Gestire cgroup con systemd

Configura RAID esterno su Ubuntu/Centos/RedHat

Centos vs RedHat:15 fatti interessanti da sapere

Come configurare il cluster Linux con 2 nodi su RedHat e CentOS

Linux mdadm software RAID 6 - supporta il ripristino del danneggiamento dei bit?