RAID software su Linux

raid1
Definizione (da Wikipedia)
“Un RAID, acronimo di Redundant Array of Inexpensive Disks, insieme ridondante di dischi economici (oppure Redundant Array of Independent Disks, in italiano insieme ridondante di dischi indipendenti), è un sistema informatico che usa un gruppo di dischi rigidi per condividere o replicare le informazioni. I benefici del RAID sono di aumentare l’integrità dei dati, la tolleranza ai guasti e le prestazioni, rispetto all’uso di un disco singolo. Nella sua implementazione originaria il fattore chiave era l’abilità di combinare parecchi dischi a basso costo ed obsoleti per rendere il sistema complessivamente migliore di un disco di ultima generazione per capacità, affidabilità e velocità.”

Scopo
Creare un mirror (raid1) di 2 dischi e usare in parallelo e contemporaneamente 2 dischi. Ciò che viene scritto sul primo disco, viene scritto anche sil secondo, così, nel caso in cui uno dei 2 si dovesse guastare, tutto continuerà a funzionare per via della ridondanza.

Questo può poi essere sostituito con un nuovo, quando inserito nel nostro “pool”, si avvierà la sincronizzazione.
I dischi del pool possono essere n, non necessariamente 2.
Questo non prevenie però la cancellazione accidendale o sovrascrizione di un file: la stessa operazione avviene istantaneamente su tutti i dischi
dell’array.
Per recuperare un file così perduto, bisongerà fare ricorso a una copia di backup.

Requisiti
2 dischi o device liberi di uguale dimensione (si possono usare sia dischi non partizionati, sia partizioni o device. Se i dischi fisici hanno dimensione diversa, creare 2 partizioni della medesima dimensione).
Per preparare le partizioni, usare fdisk da riga di comando oppure palimsest o (il suo rimpiazzo) gnome-disks da interfaccia grafica.

Installazione
mdadm è lo strumento standard di gestione del RAID disponibile su Linux.
Si trova in qualsiasi distribuzione moderna. Per installarlo sul nostro sistema si può utilizzare il comando:

sudo apt-get install mdadm

Installerà anche il pacchetto postfix per comunicare via email eventuali problemi del raid.

Creazione
Ora possiamo creare il nostro RAID, la sintassi è la seguente:

mdadm --create /dev/md0 --level=mirror --raid-devices=2 /dev/sdb1 /dev/sdc1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

Questo creerà il dispositivo virtuale /dev/md0 creato da due dispositivi a blocchi reali /dev/sdb1 e /dev/sdc1, configurandolo in modalità mirror.

Creato il raid, andrà creato sopra un filesystem, anche se i 2 device non sono ancora sincronizzati.
Per verificare lo stato della sincronizzazione lanciare il comando:

cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdc1[1] sdb1[0]
488253440 blocks super 1.2 512K chunks 2 far-copies [2/2] [UU]
[>....................] resync = 0.3% (1625024/488253440) finish=169.9min speed=47730K/sec

La ricostruzione viene fatta usando la banda di I/O non utilizzata. Quindi, il sistema dovrebbe essere ancora abbastanza reattivo.

Creazione il file di configurazione mdadm.conf
All’avvio il sistema esegue una scansione di tutti i dispositivi e attiva automaticamente i raid, quindi non è necessario avere un file mdadm.conf configurato, ma è comunque consigliabile scrivere la configurazione Raid, in Debian questo file si trova in /etc/mdadm/mdadm.conf e il modo più semplice per configurarlo è quello di utilizzare il seguente comando:

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

Ad esempio il file contiene:

ARRAY /dev/md0 level=raid1 num-devices=2 metadata=1.2 name=mint-desktop:0 UUID=048c40d4:16d71dda:1c3ba4ca:8babae51
devices=/dev/sdb1,/dev/sdc1

Creare un filesystem sul metadevice Raid
Formatteremo ora il dispositivo, mentre la ricostruzione è in esecuzione.
Inoltre è possibile montarlo e usarlo mentre la ricostruzione è in esecuzione.
E’ possiible scegliere qualunque tipo di filesystem.

sudo mkfs.ext4 /dev/md0

Tale operazione è terminata senza errori in pochi secondi anche se il mirror è ancora in ricostruzione.
Si crea il mount point e monto il nuovo filesystem su di esso con:

sudo mkdir /HOMERAID
sudo mount /dev/md0 /HOMERAID
sudo chmod 777 /HOMERAID # I want all users to be able to work there
sudo chmod +t /HOMERAID #But i want that only the owner can delete their contents.
tune2fs -m 1 /dev/md0 #reserve just 1% of the disk for maintenance

E come ultima si aggiunge una riga al file /etc/fstab, in modo che il raid venga montato automaticamente in /HOMERAID durante il processo di avvio

echo "/dev/md0 /HOMERAID/ ext4 defaults 1 2" >> /etc/fstab

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: