Istruttore: In questa
lezione discuteremo dell'uso dei RAID
per garantire la ridondanza dei dati.
Un RAID è un Redundant Array of Independent disks, che
consente essenzialmente
di combinare più dischi rigidi fisici
in un unico disco rigido logico all'interno
del sistema operativo.
Esistono molti tipi di RAID,
ma per l'esame ne verranno
citati solo un paio.
Si vedranno cose come RAID 0, RAID 1, RAID
5, talvolta RAID 6 e RAID 10.
Tutti gli altri RAID in circolazione,
e ce ne sono molti, possono
essere ignorati,
ma questi sono quelli coperti specificamente
dagli obiettivi dell'esame e li vedrete comparire
nelle scelte multiple e nelle simulazioni.
Innanzitutto, abbiamo un RAID 0.
In un RAID 0 abbiamo
una parola chiave chiamata striping.
Voglio che ricordiate "striping" ogni volta che sentite parlare di RAID 0.
Con RAID 0, abbiamo due dischi che lavorano insieme e ciascuno
di essi contiene metà dei dati.
Quindi, come si può vedere qui sullo schermo,
una parte del file, A1, e una parte del file, A2, vengono inserite
in ciascuna unità.
Supponiamo di avere un RAID 0 nel sistema operativo, di
averlo installato e configurato.
Cosa vede il sistema operativo?
Vede il disco 1 e il disco 0?
No. Vedono solo un RAID.
Lo vedono come unità D, o unità M, o qualunque
sia la lettera che
gli ho assegnato.
Quindi, se la mia macchina Windows la vede
come unità D, ad esempio, è lì che
memorizzo tutti i miei file di editing video.
Ora, mentre sto facendo
questo e copio il video sull'unità D, cosa sta
succedendo?
Mette il primo pezzo sul disco 0, e
il secondo pezzo sul disco 1,
e il terzo pezzo sul disco 0, e poi
il quarto pezzo sul disco 1, e continua
a farlo, dove le parti
pari e le parti dispari sono
divise su due dischi diversi.
Questo è il cosiddetto striping, perché
sto mettendo un pezzo su ognuno di questi.
E se lo guardate, sembra una striscia di caramelle,
come un bastoncino
di menta, mentre gira intorno ai due RAID
con i pari da un lato e i dispari dall'altro.
Ora, quando si ha a che fare con RAID 0,
questo è ottimo per la velocità, è davvero veloce.
Ma non c'è alcuna ridondanza.
Se uno di questi due dischi si guasta, perdo metà del file, e se perdo metà
del file, beh, indovinate un po'?
Il computer non riesce a leggere
il file e quindi è come se avessi perso l'intero file.
Ora, l'aspetto positivo dell'utilizzo di un disco
a strisce o di un array RAID 0 è che si ottiene
un aumento della velocità, giusto?
Quindi, se sto facendo cose come giochi ad alta velocità
o editing video ad alta velocità, questa
è una buona configurazione,
perché posso accedere a due dischi molto più velocemente
di un solo disco, perché ognuno di essi può
fornirmi metà delle informazioni allo stesso tempo.
L'altro aspetto positivo dell'utilizzo di
un RAID 0 è che non c'è perdita di spazio sui dischi.
Cosa intendo dire con questo?
Come vedrete nella demo, userò
dischi rigidi da 800 megabyte e ognuno di questi dischi
rigidi da 800 megabyte sarà installato
nel computer e verrà utilizzato
come parte del nostro RAID.
Se prendo due dischi rigidi da 800 megabyte
e li collego tra loro come RAID 0, in realtà
ne otterrò uno. 5 gigabyte, ovvero circa
1.600 megabyte di spazio come unità singola da utilizzare
per il sistema operativo.
Quindi, potrei prendere due unità più piccole, metterle
insieme e farle sembrare un'unica unità grande se uso un RAID 0.
Ora, il prossimo argomento di cui vogliamo parlare è un RAID 1.
E quando sentite parlare
di RAID 1, voglio che pensiate a due parole:
"specchio" e "ridondanza". Quando si dispone di un RAID
1, si ha un array di dischi in mirroring.
Ciò significa che ogni singola cosa
messa sul disco 0 viene messa anche sul disco 1, come
si può vedere qui.
Quindi, ad esempio,
se prendo un file chiamato
A e lo divido in quattro parti,
sia il disco 0 che il disco 1 avranno
tutte queste parti del file A.
Come si può vedere, 1, 2, 3 e 4
sono sul disco
0, 1, 2, 3 e 4 sul disco 1.
Quindi se cancello tutto quello che c'è sul disco 1, indovinate un po'?
Posso ancora accedervi sul disco 0, e questo
è ciò di cui parlo quando si
tratta di un array di dischi in mirroring,
il fatto che entrambi i dischi hanno una copia esattamente identica.
Questo ci offre una grande ridondanza, anzi, una ridondanza
completa, perché un
intero disco può andare via e io posso
continuare a operare senza problemi.
Ma c'è un aspetto negativo,
ed è la perdita di spazio su uno dei dischi, perché
se prendo questi due dischi da 800 megabyte,
non ne ottengo più 1. 5 gigabyte o 1.600 megabyte,
io ottengo 800 megabyte.
Perché?
Perché ho una copia speculare di ogni singolo dato
e quindi devo fare due copie complete e ci vuole
il doppio dello spazio per ottenere ciò che si vuole.
In questo modo, metà dello spazio di archiviazione totale
viene utilizzato semplicemente per la ridondanza,
il che significa che si paga molto di più per i costi di archiviazione
rispetto a quanto si pagherebbe se si utilizzasse qualcosa come un RAID 0.
Vediamo quindi un'opzione che ci permette di ottenere
il meglio di entrambi i mondi.
È qui che si inserisce il RAID 5.
Il RAID 5 offre ridondanza attraverso la parità.
Quindi, quando sentite parlare
di RAID 5, voglio che pensiate a "ridondanza", "parità". Ciò significa che non
avrò una copia
completa di tutto.
Quando usavo il RAID 1, avevo
un mirror completo e quindi occupavo tutto lo spazio su entrambe
le unità, mentre con il RAID 5 userò tre dischi.
È possibile utilizzare tre o più dischi,
ma per RAID 5 è necessario utilizzare almeno tre dischi.
Quindi, qui sullo schermo, ho
tre dischi, Disco 0, Disco 1 e Disco
2, e ho quattro file diversi che vengono
inseriti in tutti questi file,
con pezzi di A, B, C e D.
Si noti che B, C e D hanno questa cosa chiamata
Bp, o Cp, o Dp, e questo significa
parità.
Quindi ho questo file, B, e ne prendo
metà e lo metto sul disco 0, ne prendo metà
e lo metto sul disco 1.
Poi eseguo un calcolo e inserisco
i risultati del calcolo nel disco 2.
Quindi, se perdo uno dei dischi,
usando la parte che ho e la parità delle due parti, posso ricalcolare
la parità e recuperare
il file.
Ora, so che sembra un
po' complicato, ma vedetela
in questo modo: se vi do due numeri
e vi do la risposta, due più tre fa cinque.
Ora, se tolgo uno di questi tre numeri
e vi do gli altri due, riuscite
comunque a capire qual è l'altro?
Beh, certo.
Se vi do due e tre, potete
capire che due più tre fa cinque.
Se vi dessi due più cosa uguale a cinque, potreste dire:
beh, cinque meno due fa tre, quindi
la risposta è tre.
Oppure, se vi ho dato vuoto più tre fa cinque, potete dire
che cinque meno tre fa due.
E quindi, come potete vedere, questo è ciò che
accade qui, possiamo essere in grado di calcolare il risultato.
Questo è ciò che facciamo all'interno di un RAID 5,
che ci fornisce ridondanza attraverso la parità.
L'aspetto positivo è che
anche se aggiungo altre unità, ad esempio
se ho cinque unità disco e solo una viene usata
per la parità, significa che se perdo
un quinto dello spazio per quel bit di parità, sto usando molto
meno di quanto farei con
un mirror completo.
Nel caso qui sullo schermo, ho tre unità, un terzo
delle quali viene utilizzato per la parità.
Utilizzando un terzo di essi
per la parità, si perde il 33% dello spazio
su disco invece del 50% che si perdeva con il RAID 1.
Il RAID 5 è in realtà uno dei RAID più comuni, molto utilizzato
nella maggior parte degli ambienti server
e nella maggior parte delle piccole
imprese.
Bene, parliamo di RAID 6.
Che cos'è il RAID 6?
È una soluzione migliore di RAID 5.
Ogni volta che sentite parlare
di RAID 6, pensate a cinque più uno.
Quindi, tutto ciò che era vero per il RAID 5,
è vero anche per il RAID 6, tranne per
il fatto che avremo una doppia parità e
quindi ora mi servono quattro dischi invece di tre.
Perché lo faccio?
In RAID 5, posso perdere
solo un disco e continuare a funzionare.
In RAID 6, posso effettivamente perdere due dischi e continuare a operare.
Quindi, se ho forse 5 o 10 unità disco, usarne due
per la parità mi dà un valore
di ridondanza molto migliore di quello che avrei
se avessi un RAID 5 con una sola
ridondanza, con una sola parità.
E questa è davvero l'unica differenza tra un 5 e un 6.
Con RAID 5 si ha una sola parità, mentre
con RAID 6 si ha una doppia parità, come
si può vedere qui sullo schermo.
Ora, il prossimo argomento di cui vogliamo parlare è un RAID 10.
Ora RAID 10 è in realtà un RAID di RAID, e ciò che intendo
dire è che in realtà ho
due RAID 1, che sono posizionati all'interno
di una configurazione RAID 0.
Se torniamo al RAID
0, ricordiamo che si trattava di velocità e striping,
e quindi, quando il file arriva,
lo stripperò per metà sul lato sinistro e per metà
sul lato destro.
Ma poiché ogni lato destro e sinistro è in
realtà un array RAID con un mirror, ho tutte
le cose dispari sul lato sinistro e tutte
le cose pari sul lato destro, e ho
due copie complete.
Quindi occuperà quattro dischi, ma utilizzerà
comunque la configurazione RAID 1 al suo interno.
Giusto?
Quindi perderò metà del mio
spazio su disco, perché ho due mirror completamente ridondanti del RAID 0.
Quindi, questo è davvero ottimo dal punto di vista
della ridondanza e offre una
buona velocità, perché si effettua
lo striping, quindi si ottengono
i vantaggi del RAID 1 e i vantaggi
del RAID 0, ma si devono usare quattro dischi per farlo, e quindi
è una delle cose a cui bisogna pensare:
preferirei farlo con un RAID 6 o con un RAID 10?
E le scelte si fanno in base alla situazione.
Per l'esame, non vi chiederanno di scegliere
quale sia il RAID migliore in base
a circostanze davvero approfondite.
In genere, si dice: "Sto
cercando la velocità, qual è il RAID migliore? La risposta?
RAID 0.
"Sto cercando un esubero, qual è il migliore? Tecnicamente, per la ridondanza,
il RAID 1 sarebbe il migliore,
giusto?
O RAID 10, se è disponibile come opzione.
Se si chiede qualcosa del tipo:
"Sto cercando di ottenere una ridondanza utilizzando la parità",
in questo caso si dovrebbe
considerare qualcosa di simile a un RAID 5.
Di solito le risposte a queste
domande sono: RAID 0, RAID 1 o RAID 5.
Pertanto, quando si pensa ai RAID, questi
possono essere classificati come resistenti ai guasti, tolleranti
ai guasti e tolleranti
ai disastri.
Queste sono le tre categorie di RAID.
Ora, se si dispone di un RAID resistente
ai guasti, sarà qualcosa come un RAID 1 o un RAID 5, perché
proteggerà dalla perdita dei dati dell'array
in caso di guasto di
un singolo disco al suo interno.
Ora, quando si parla di sistemi di dischi a
tolleranza d'errore, si tratta di qualcosa come un RAID
1 o un RAID 5, o anche un RAID 6, perché
anche se un singolo componente si guasta, una
delle unità o persino una delle schede al suo interno, il RAID
può continuare a funzionare correttamente.
Ora, la nostra categoria finale è nota come tolleranza alle catastrofi,
e quindi se chiamiamo un RAID tolleranza alle catastrofi,
significa che il RAID ha due zone indipendenti con accesso
completo ai dati in ogni momento.
Un RAID 10 è un buon esempio di RAID con tolleranza ai disastri.
In questo modo, potrei perdere una delle due metà dell'array
e uno dei due RAID 1 continuerebbe a funzionare, il che significa
che il sistema continuerà a funzionare e che sarà
tollerante ai disastri, perché ho
una copia completa dei dati pronta per
l'uso in qualsiasi momento.
I RAID sono un ottimo strumento da utilizzare
quando si vuole garantire
una buona ridondanza dei dati online e disponibili
in qualsiasi momento, e ci aiutano a progettare un
sistema ad alta disponibilità.