Archivio

Posts Tagged ‘linux software raid’

Linux RAID Software – Parte II

26 gennaio 2008 5 commenti

linux-cp1.png

Nello scorso articolo abbiamo visto come preparare i nostri dischi/partizioni per essere pronte da usare in un raid software . Oggi , vedremo come creare il nostro il primo raid con le partizioni create in predenza .

Il nostro primo Raid sarà un mirror (raid 1) composto da 2 dischi/partzioni :

#mdadm -C /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1

Con questo comando , andiamo a creare un devie raid che si chiama /dev/md0 ( -C /dev/md0 ) , configurato in raid 1 ( -l1 ) composto da due device/partizioni ( -n2 ) e di seguito vengono specificati i due device .

Se volgiamo vedere lo stato del raid , basta che da console diamo il comando :

#mdadm -D /dev/md0

A questo punto , il nostro radi è configurato e funzionante , ma non possiamo ancora utilizzarlo in quanto non è presente un file system che ci permetta di scrivere dei file , quindi andiamo subito a crearlo :

#mkfs -t ext3 -L DATI /dev/md0 20M

Abbiamo cosi creato un file system ext3 ( -t ext3 ) la label del nostro disco sarà “DATI” ( -L DATI ) sul device /dev/md0 che ha come dimensioni 20 Mega . Creiamo adesso la directory in cui andremo a montare il nostro raid :

#cd /mnt

#mkdir dati

Se volgiamo che il volume venga montato automaticamente al boot , possiamo editare il /etc/fstab , ed inserire una entry che monti il nostro volume :

#gedit /etc/fstab

alla fine del file aggiungente la seguente voce :

/dev/md0 /mnt/dati ext3 defaults 0 0

Se la cartella che avete creato ha un’altro nome o si trova in un’altra posizione modificate la voce ” /mnt/dati “ .

Annunci

Linux RAID Software – Parte 1

21 gennaio 2008 1 commento

linux-cp1.png

L’idea che stà alla base del RAID è di combinare diversi dischi in un’unico array in modo da ottenere performance migliori o per ridondanza dei dati . Questo può essere ottenuto in due modi ; utilizzando RAID Hardware , cioè schede pci/pciE ecc.. dedicate alla gestione dei raid oppure usando RAID Software gestiti dal sistema operativo.

Esistono diversi livelli di RAID , quelli maggiormente utilizzati sono :

  • RAID 0 (Striping) : Non vi è nessun tipi di ridondanza , i dati vengono spalmati su più dischi , questo aumenta lo spazzio a disposizione , ma nel caso si guasti un disco, tutti i dati saranno persi .
  • RAID 1 (Mirroring) : Con questo tipo di raid , i dati vengono scritti nello stesso modo su tutti i device che fanno parte del raid , questo comporta che anche se si rompe un disco , i dati saranno comunque accessibili , in quanto è presente una copia speculare di essi . L’unico svantaggio è che non incrementiamo lo spazio a disposizione . Infatti se mettiamo in RAID 1 due dischi da 40 GB , lo spazio utilizzabile per scrivere dei dati sarà di 40 GB.
  • RAID 5 : Questo tipo di raid chiamato anche “Striping with Parity” , possiamo vederlo come una via di mezzo tra i primi due , in quanto i dati vengono spalmati su tutti i dischi ma oltre a questi vengono scritte anche delle informazzioni di parità . Quest’ultime , vengono usate durante la fase di ricostruzzione dei dati , dopo la rottura di un disco . Per utilizzare un RAID 5 occorrono almeno 3 dischi , e la perdita di spazio utilizzabile per la scrittura di dati è nettamente inferiore rispetto ad un mirror .

Su Linux il RAID Software è implementato nel Kernel ed è gestito dai dirver MD che permette alla soluzione raid di essere indipendente dal hardware. La gestione e la creazione dei raid , viene gestita attravero un tool che si chiama mdadm .

Vediamo ora in dettaglio , come fare ad implementare un RAID 1 Software :

  1. Prima di tutto servono 2 partizioni vuote che dovremmo definire di tipo Raid Linux . Nel nostro caso abbimo due dischi il primo /dev/sdb da 20GB ed il secondo /dev/sdc da 20 GB.
  2. Creiamo le partizioni con fdsik:
    • [root@srvmail ~]# fdisk /dev/sdb
      The number of cylinders for this disk is set to 1958.
      There is nothing wrong with that, but this is larger than 1024,
      and could in certain setups cause problems with:
      1) software that runs at boot time (e.g., old versions of LILO)
      2) booting and partitioning software from other OSs
      (e.g., DOS FDISK, OS/2 FDISK)
      Comando (m per richiamare la guida):
    • Ci troviamo davanti al prompt di fdisk , digitando “n” creiamo una nuova partizione :

    Comando (m per richiamare la guida): n
    Azione comando
    e estesa
    p partizione primaria (1-4)

Dobbiamo scegliere se si tratta di una partizione estesa o primaria , nel nostro caso sarà primaria quindi “p”.

Il passaggio sucessivo ci chiederà il numero della partizione , se è la prima partizione che creiamo scriviamo “1” . Premendo invio vi chiederà qual è il primo cilindro , potete affidarvi a quello che vi propone lui quindi premete invio . L’ultima cosa che vi chiederà riguarda l’ultimo cilindro , per semplificare le cose scrivete le dimensioni in Megabyte della partizione che volete creare nel seguente formato , +20000M . Non farà altro che creare una partizione da 20 GB .

A questo punto dobbiamo specificare il tipo di partizione , per fare ciò digitate “t” e succesivamente “fd” ( setta la partizione come Linux Raid ) . Se tutto è andato bene digitando “p” dovreste vedere una cosa del genere :

Comando (m per richiamare la guida): p
Disco /dev/sdb: 16.1 GB, 16106127360 byte
255 heads, 63 sectors/track, 1958 cylinders
Unità = cilindri di 16065 * 512 = 8225280 byte

Dispositivo Boot Start End Blocks Id System
/dev/sdb1 1 2 16033+ fd Autorilevamento raid di Linux
(Non fate caso alle dimensioni!!!!)

Se tutto è ok digitate “w” , questo comando scriverà le informazioni sulla tabella delle partizioni è uscirà dal programma . Eseguite le stesse operazioni per l’altro disco , è fondamentale che le partizioni abbiano le stesse dimensioni , altrimenti non potrete configurare il RAID in seguito .

Una volta terminate le operazioni di partizionamento diamo il comando partprobe , che andrà a rileggere le tabelle delle partizioni .

Per questa puntata e tutto , nella seconda parte di questo mini-howto vedremo come creare il nostro primo RAID e come gestirlo .