Hardware: La gestione dei dischi su sistemi server
La gestione dei dischi è un argomento molto
importante per l’affidabilità, le prestazioni e la
sicurezza di un server.
Parlando di dischi si parla normalmente di
tecniche RAID cioè Redundant Array of Inexpensive
Disks, tradotto in array ridondante di dischi economici.
Ecco cosa significa:
Inexpensive Disks
L’economicità dei dischi è un fattore
storico-teorico in quanto si contrappone alla brillante idea
di utilizzare un solo disco comprando il più bello
performante e costoso in commercio e affidare tutta la rete ad
esso…
Array
L’array è un raggruppamento di dischi fisici
che viene diviso in uno o più dischi logici.
Se avete 3 dischi da 9 GB potete creare un
array e successivamente dividerlo in 2 dischi logici, che
verranno distribuiti equamente tra i dischi.
Attenzione a non confondere i dischi logici
con le partizioni! I dischi logici infatti vengono visti dal
sistema operativo come dei drive separati.
Il vantaggio di avere un array consiste
nell’aumento delle prestazioni dato dall’accesso
contemporaneo ai dischi dove sono distribuiti i dati.
Redundant
La ridondanza è l’aspetto fondamentale dei
sistemi RAID, perché è il fattore che permette di introdurre
la fault tolerance, cioè il contenuto dell’array non
viene perso in caso di guasti a uno o più dischi a seconda
della configurazione (alla sfiga non c’è mai limite…).
La ridondanza consiste nel replicare in
qualche modo l’informazione contenuta nei dischi.
Ora dovreste sapere cos’è il RAID, ci sono
varie tecniche RAID identificate da un numero, eccole:
RAID 0 : Stripe Set
RAID 1 : Mirror
RAID 2 : Bit Striping con Parità distribuita
RAID 3 : Bit Striping con Parità
RAID 4 : Stripe Set con Parità
RAID 5 : Stripe Set con Parità Distribuita
RAID 10 : Stripe Set con Mirror
RAID 0
Partiamo dall’eccezione, questa tecnica non
è fault tolerant ma consiste nel distribuire i dati fra i
dischi dell’array consentendo migliori prestazioni senza
aggiungere carico al sistema.
Può essere usata in caso di grosse quantità
di dati non critici che in caso di guasto si possono
recuperare da un backup senza problemi di tempo.
RAID 1
E’ la tecnica del mirror, si applica quando
si hanno 2 dischi ed è la più performante tecnica fault
tolerant.
Il contenuto dei dischi viene mantenuto
identico e le operazioni di scrittura vengono riportate su
entrambe i dischi.
Lo svantaggio principale è che lo spazio a
disposizione è il 50% del totale, cioè se avete 2 dischi da
18 GB per un totale di 36 GB e li mettete in RAID 0 avrete a
disposizione solo 18 GB, mentre gli altri sono dedicati alla
ridondanza.
In caso di guasto l’altro disco continuerà
a funzionare senza problemi, finché non viene ristabilito il
mirror.
Fate presente che non è una tecnica di backup,
perché se viene scritto un file errato viene riportato sul
disco mirror!
RAID 2
Questo RAID ha come obbiettivo il garantire
l'integrità dei dati implementando l'algoritmo di Hamming per
il controllo degli errori dei dischi. I BIT che compongono i
dati vengono memorizzati su dischi diversi ed insieme ad essi
le informazioni di parità. Questo sistema che richiede molto
spazio 'addizionale' per memorizzare i bit di parità è
assolutamente inutile su dischi SCSI i quali hanno un sistema
di controllo degli errori sui bit nativo.
RAID 3
Funziona esattamente come il RAID 2 tranne per
il fatto che questo tipo di RAID usa un disco dedicato per la
memorizzazione dei bit di parità. Anche questo e' molto
svantaggioso come RAID per il fatto che l'elettronica di
controllo deve fare in modo che i dischi girino all'unisono
per poter avere un veloce accesso ai dati, e questo comporta
un costo addizionale, inoltre se il disco a rompersi è il
disco contenente i bit di parità viene a mancare la garanzia
della bontà dei dati contenuti negli altri dischi.
RAID 4
E’ la tecnica dello stripe set con parità.
Le informazioni della parità vengono
mantenute su un disco esterno allo stripe set.
La parità è in pratica il risultato di
un’operazione di AND logico tra i dati dei dischi, cioè se
la somma dei BIT alla posizione X dei dischi è pari allora
sul disco della parità alla posizione X viene scritto uno 0,
se è dispari un 1.
In caso di guasto il sistema recupera i dati
persi leggendo la parità!
Necessita di minimo 3 dischi, e lo spazio da
dedicare alla ridondanza in questo caso si calcola con la
formula:
(n-1)/n = % di spazio utilizzabile
con n=numero di drive.
Avendo 3 dischi da 9 GB lo spazio disponibile
sarebbe di 18 GB, con un 33% dedicato alla parità.
E’ chiaro che più dischi si usano e minore
è lo spazio che sarà usato per la ridondanza, ma il sistema
sarà caricato dai calcoli più pesanti all’aumentare dei
drive.
Questa tecnica viene mantenuta solo per la
compatibilità con sistemi che già la adottavano, perché è
superata dal RAID 5.
RAID 5
Stripe set con parità distribuita.
E’ l’evoluzione del RAID 4, con la
variante che le informazioni di parità non sono memorizzate
su un drive apposta ma vengono distribuite sui dischi dell’array,
consentendo un aumento di prestazioni.
Il disco dedicato della tecnica RAID 4 veniva
infatti sovraccaricato di lavoro perché per ogni operazione
di scrittura il sistema doveva accedere ad esso.
Le altre valutazioni sono uguali alle
precedenti.
RAID 10 (1+0)
Questo tipo di RAID e' l'unione del RAID 0 e
1. Consiste nel replicare su due controller differenti due
array di dishi in mirroring fra loro. Se i dati contenuti nei
dischi sono particolarmente delicati da permettere una spesa
MOLTO elevata si puo' abbinare al posto del RAID 0 i RAID 4 o
5. In questo modo con 6 dischi se ne possono rompere QUATTRO e
i dati sono ancora recuperabili, solo un'incendio può far
paura ai vostri dati. Purtroppo questo RAID necessita del
triplo dei dischi che ci vorrebbero normalmente in un sistema
senza RAID.
Ora che si è vista la teoria delle tecniche
RAID, vediamo praticamente come si può implementare.
Il RAID si può implementare via SOFTWARE
o in HARDWARE.
HARDWARE
E’ la scelta migliore ma anche la più
costosa (come al solito) in quando necessita di un controller
SCSI con funzioni apposite.
Non appesantisce il sistema operativo e
nasconde completamente ad esso la tecnica usata, cioè
dall’OS si vedono dei dischi "normali".
Si configura con le utility fornite insieme
alla scheda e a seconda del controller si hanno a disposizione
funzioni di controllo e sicurezza varie.
Una di queste funzioni è la possibilità di
aggiungere all’array un disco di Hot-Spare (o
Online-Spare) che entra in funzione in caso di guasto e va
a sostituire il disco rotto, garantendo la fault tolerance
anche in caso di un secondo guasto!
SOFTWARE
Il RAID è completamente a carico del sistema
operativo e per questo viene usato in piccoli sistemi dove
l’acquisto di un controller dedicato è un problema.
Tutti i sistemi operativi server forniscono la
possibilità di fare un RAID 0, 1 e 5, ecco una piccola
carrellata:
· NT 4.0 : la gestione dei dischi è
configurabile dall’utility Disk Administrator che si
trova sotto start->programs->administrative tools.
Le informazioni sulle partizioni e sui dischi vengono
salvate nel registry, da qui la necessità di aggiornare
il disco di ripristino ogni volta che viene fatta una
modifica.
· WINDOWS 2000 : i drive si controllano
da Pannello di Controllo->Strumenti di
Amministrazione->Gestione Computer sotto
Archiviazione->Gestione Disco.
A differenza del predecessore utilizzando i cosiddetti
"dischi dinamici" le informazioni di
configurazione vengono scritte direttamente sui dischi
nell’ultimo mega disponibile, la tabella delle
partizioni inoltre viene replicata su ogni disco dinamico
offrendo una maggiore sicurezza in caso di crash.
· LINUX : non lo so (scusate)
SCENARI
In piccole realtà un server con mirror
software è la soluzione più semplice e economica, dove i
budget si fanno più elevati in controller che implementa in
hardware un RAID 5 è la soluzione migliore, mentre se avete
per le mani un grosso affare aggiungendo un disco di hot-spare
al RAID 5 dormirete sonni tranquilli!
Testo prelevato da itvirtualcommunity
inserito da Besa