RAID: Redundant Array of Indipendent Disks: differenze tra le versioni

m
nessun oggetto della modifica
mNessun oggetto della modifica
 
(36 versioni intermedie di 3 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni_compatibili}}
{{File_System
 
|precedente=LVM:_Logical_Volume_Manager
|successivo=Nfs-kernel-server:_condividere_risorse_tra_macchine_GNU/Linux
}}{{Versioni_compatibili|Squeeze|Wheezy|Jessie}}{{Template:RAID}}
= Introduzione =
= Introduzione =


Riga 20: Riga 22:
Per chi intendess approfondire maggiormente l'argomento può iniziare consultando [[#Approfondimenti | wikipedia]].<br />
Per chi intendess approfondire maggiormente l'argomento può iniziare consultando [[#Approfondimenti | wikipedia]].<br />


=== RAID Hardware e RAID Software ===
=== RAID Hardware, Software e Fake ===


Esistono due modi per creare e gestire un volume raid: attraverso la mediazione di controller hardware dedicati oppure via software direttamente dal sistema operativo.<br />
Esistono due modi per creare e gestire un volume raid: attraverso la mediazione di controller hardware dedicati oppure via software direttamente dal sistema operativo.<br />
La prima soluzione è più costosa e richiede attenzione nello scegliere prodotti che siano effettivamente compatibili con linux, ma comporta un minor consumo di risorse macchina (per esempio un ridotto impegno della CPU).<br />
La prima soluzione è più costosa e richiede attenzione nello scegliere prodotti che siano effettivamente compatibili con linux, ma comporta un minor consumo di risorse macchina (per esempio un ridotto impegno della CPU).<br />
La seconda non richiede hardware dedicato e quindi non presenta costi aggiuntivi, ma come già detto comporta un maggior consumo di risorse macchina. In debian il programma deputato a creare e gestire i volumi raid si chiama ''mdadm''.
La seconda non richiede hardware dedicato e quindi non presenta costi aggiuntivi, ma come già detto comporta un maggior consumo di risorse macchina. In debian il programma deputato a creare e gestire i volumi raid si chiama ''mdadm''.<br/>
{{
Esiste una terza via, molto simile come concetto al raid software, ovvero i "fake raid" (falsi raid hardware). Tipico esempio di questa classe sono i controller RAID integrati nelle schede madri che non essendo di norma veri controller hardware si devono appoggiare completamente alla capacità di calcolo della macchina proprio come un raid software, garantendo quindi gli stessi (s)vantaggi prestazionali. Data questa premessa è pratica comune ignorare in linux eventuali controller integrati ed implementare tutto via software evitando in tal modo possibili problemi di compatibilità.<br/>
Box|Nota| Si badi bene che i controller RAID integrati nelle schede madri non sono di norma veri controller hardware, infatti si appoggiano completamente alla capacità di calcolo della macchina proprio come un raid software (non a caso sono chiamati "fake raid") e quindi non garantiscono vantaggi prestazionali. Data questa premessa è pratica comune ignorare in linux eventuali controller integrati ed implementare tutto via software evitando in tal modo possibili problemi di compatibilità.
Si noti che purtroppo il raid software linux non è supportato da windows (e probabilmente anche da altri SO non linux), quindi in caso di dual boot tale soluzione è assolutamente da scartare; in tale circostanza se non si vuole rinunciare al raid e a windows, oppure a linux, è possibile usare <code>dmraid</code> per implementare anche sotto linux soluzioni fake raid.
}}
 
= Installare debian su RAID software =
 
Si  veda [[Installare Debian: configurazione RAID | questa pagina]] per un  esempio di come utilizzare lo strumento di partizionamento predefinito.


= mdadm =
= Creare RAID software dopo l'installazione (mdadm) =


== Installazione ==
== Installazione ==
Riga 53: Riga 58:


=== Creazione dei volumi RAID ===
=== Creazione dei volumi RAID ===
Posto di volere creare un volume raid1 di nome ''md0'' comprendente le partizioni '''sde1''' ed '''sdf1''' digitare da terminale:
<pre># mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sde1 /dev/sdf1</pre>
Per verificare che il volume sia correttamente inizializzato digitare
<pre># cat /proc/mdstat</pre>
Dovrebbe comparire qualcosa di simile a
<pre>
Personalities: [raid1]
md0 : active raid1 sde1[0] sdf1[1]
      XXXXXXXX blocks super 1.2 [2/2] [UU]
unused devices: <none>
</pre>
A questo punto il volume raid può essere formattato secondo la procedura canonica; ad esempio per creare un filesystem ext4:
<pre># mkfs.ext4 /dev/md0</pre>
Ripetere la procedura per tutti gli eventuali altri volumi raid che si desidera creare.
=== Rendere permanenti i volumi RAID ===
I volumi appena creati non sopravviverebbero ad un riavvio del sistema, pertanto è necessario modificare o creare un apposito file di configurazione <code>/etc/mdadm/mdadm.conf</code> che ne memorizzi la struttura.<br />
Se tale file esiste già è sufficiente aggiungere manualmente al suddetto file l'output del seguente comando:
<pre># mdadm --detail --scan</pre>
oppure ridurre il tutto ad un solo comando digitando:
<pre># mdadm --detail --scan >> /etc/mdadm/mdadm.conf</pre>
Che provvede anche a creare direttamente il file ''.conf'' se questo non esisteva.
Qualora ci si dimenticasse di (o non si volesse) creare/modificare il file <code>/etc/mdadm/mdadm.conf</code>, dopo un riavvio è possibile riassemblare un volume dando un comando del tipo:
<pre>mdadm -A /dev/md0 /dev/sde1 /dev/sdf1</pre>
posto naturalmente che il suddetto volume non contenesse informazioni essenziali per l'avvio del sistema, nel qual caso non ripartirebbe proprio il sistema operativo.
=== Rendere utilizzabili i volumi RAID ===
Per poter materialmente memorizzare dati all'interno di un volume raid è necessario montarlo come una qualsiasi altra partizione, pertanto creare in primis un punto di mount, ad esempio:
<pre># mkdir /mnt/mio_volume_raid/</pre>
Successivamente, posto di voler montare il volume 0, digitare:
<pre># mount /dev/md0 /mnt/mio_volume_raid/</pre>
A questo punto il volume raid risulterà molto probabilmente accessibile in sola lettura a tutte le utenze eccetto root, pertanto ove richiesto sarà necessario cambiare proprietario e/o permessi sul volume raid montato.<br />
Per smontare il volume raid, come sempre è sufficiente digitare:
<pre># umount /mnt/mio_volume_raid/</pre>
==== Montare automaticamente un volume all'avvio ====
Perché un certo volume venga montato automaticamente all'avvio è necessario editare <code>/etc/fstab/</code> aggiungendo una riga del tipo:
<pre>UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX    /mnt/mio_volume_raid    ext4    defaults    0    2</pre>
Dove UUID si ottiene digitando da terminale <code>blkid /dev/dispositivo</code>, ad esempio:
<pre>blkid /dev/md0</pre>
= Principali comandi =
Avviare un Array (se ESISTE il file mdadm.conf):
<pre>
# mdadm -As /dev/md0
</pre>
Avviare un Array (se NON esiste il file mdadm.conf):
<pre>
# mdadm -A /dev/md0
</pre>
Stoppare un Array:
<pre>
# mdadm -S /dev/md0
</pre>
Aggiungere un disco all'array md0:
<pre>
# mdadm /dev/md0 --add /dev/sdh1
</pre>
Rimuovere un disco dall'array md0:
<pre>
# mdadm /dev/md0 --fail /dev/sdc1 --remove /dev/sdc1
</pre>
Esaminare un array:
<pre>
# mdadm -E /dev/sdb1
</pre>
Monitorare un array:
<pre>
# mdadm --monitor --delay=300 /dev/md0
</pre>
Ottenere informazioni sugli array in esecuzione:
<pre>
# cat /proc/mdstat
</pre>
Risincronizzare un array. Se il comando precedente restituisce:
<pre>
md0 : active (auto-read-only) raid1 sda1[0] sdb1[1]
2000000 blocks [2/2] [UU]
resync=PENDING</pre>
occorre dare il comando:
<pre>
# mdadm --readwrite /dev/mdX
</pre>e la sincronizzazione ripartirà:<pre>
[===>...] resync = 16.2% (324736/2000000) finish=0.6min speed=46390K/sec
</pre>


= Approfondimenti =
= Approfondimenti =


== Sitografia ==
=== Debianizzati ===
[[Software Raid 1: configurazione e verifiche | Guida]] dettagliata per Debian Sarge dedicata a varie casistiche di RAID 1.
 
=== Manpages ===
 
<code>man mdadm</code><br />
<code>man mdadm.conf</code><br />
 
=== Sitografia ===
* [http://en.wikipedia.org/wiki/RAID RAID], pagina inglese di wikipedia
* [http://en.wikipedia.org/wiki/RAID RAID], pagina inglese di wikipedia
{{Autori
|Autore = [[Utente:Wtf|Wtf]]
| Estesa_da =
:[[Utente:Robiz|Robiz]] (RAID 1)
:[[Utente:Wtf|wtf]] (configurazione RAID)
| Verificata_da =
: [[Utente:Ferdybassi|Ferdybassi]]
| Numero_revisori= 1
}}
[[Categoria:Filesystem]]
3 581

contributi