Come proteggere i tuoi dati usando ZFS
Una domanda spesso posta nell’industria dei server è, ‘cos’è meglio – RAID software o RAID hardware? Se si fa una ricerca su questo argomento, molte informazioni sul RAID suggeriscono che una scheda RAID hardware è preferibile all’uso di un RAID software. Ma io non sono d’accordo. La mia opinione è che, per la maggior parte delle applicazioni, il RAID software è molto meglio del RAID hardware. Il RAID hardware ha un posto in certi sistemi operativi, ma ti dirò perché il software è generalmente molto superiore.
Favorire il RAID hardware rispetto al RAID software deriva da un tempo in cui l’hardware non era abbastanza potente per gestire l’elaborazione del RAID software, insieme a tutti gli altri compiti per cui veniva usato. A quel tempo, la soluzione era usare una scheda RAID hardware con un processore integrato che gestiva i calcoli RAID ‘offline’. Si presentava al sistema operativo del computer come un singolo disco, e internamente elaborava i dati che si muovevano dentro e fuori i dispositivi di archiviazione multipli (dischi rigidi). Questo faceva sì che le cose funzionassero senza problemi, pur beneficiando della sicurezza del RAID.
Il RAID hardware è ancora popolare tra alcune persone e molte delle schede RAID hardware di oggi offrono prestazioni da urlo alleggerendo il carico sulla CPU, ma ci sono ancora alcuni seri problemi e svantaggi:
- Fatica a recuperare i dati quando si verificano guasti gravi
- Protocolli proprietari/non standard che significano che il tuo array funziona solo con la stessa scheda RAID hardware. Non puoi inserire il tuo set di dischi rigidi in qualsiasi scheda RAID e aspettarti che legga i tuoi dati.
- Hardware RAID ha la capacità di prendere un gruppo di dischi e farlo apparire come un singolo disco. Questa architettura è elegante nella sua semplicità. Tuttavia questo preclude fondamentalmente l’integrazione di funzioni nel sistema operativo e nel file system. Questa integrazione è davvero ciò che ha permesso al RAID software di superare drammaticamente il RAID hardware.
Dove credo che siamo oggi
Sono accadute due cose che hanno favorito il RAID software rispetto al RAID hardware e gli hanno permesso di prendere il comando. La potenza di calcolo è cresciuta così radicalmente che il carico di calcolo presentato dal RAID non è più significativo. In secondo luogo, la forza, le caratteristiche e l’integrazione del software RAID sono cresciute drammaticamente.
Il RAID hardware continua a offrire soluzioni architettoniche solide e semplici per combinare più unità in array RAID e presentarle al sistema operativo come un singolo dispositivo. Questo è particolarmente utile con MS Windows che ha un’implementazione dolorosamente lenta del RAID software. Tuttavia, continua ad avere un rischio per la sicurezza dei dati perché è necessario utilizzare un controller identico (o compatibile) per recuperare i dati in caso di guasto hardware.
Sul lato software, il RAID software di oggi è super-veloce (almeno con Linux e BSD), estremamente flessibile e altamente integrato nei sistemi operativi. È anche molto più capace e potente in situazioni di recupero rispetto al RAID hardware. Per recuperare i vostri dati, tutto ciò di cui avete bisogno è un altro server di archiviazione con lo stesso sistema operativo. Dopo di che i passi sono semplici, basta collegare le unità e mettersi al lavoro – si dovrebbe essere in grado di recuperare da qualsiasi situazione in cui la perdita di dati non ha superato i limiti fondamentali.
È chiaro che i computer e il software hanno fatto molta strada e sta diventando sempre più chiaro che il RAID definito dal software sarà sempre più prevalente con il passare del tempo.
File System ZFS e Volume Manager
Ora scaveremo in uno dei nostri file system e volume manager preferiti, ZFS. Parleremo di alcune delle caratteristiche che rendono ZFS unico e poi vi daremo un esempio di uno dei nostri clienti che ha risparmiato un sacco di soldi perché stava usando ZFS con RAID software.
Abbiamo amato ZFS perché può bypassare molti dei problemi che potrebbero sorgere quando si usano schede RAID tradizionali. Per esempio, invece di una scheda RAID hardware che ha la precedenza sulle unità, ZFS usa una scheda JBOD che prende le unità e le elabora con il suo volume manager e file system integrato. Questo dà a ZFS un maggiore controllo per bypassare alcune delle sfide che le schede RAID hardware di solito hanno. A causa di questo controllo e delle sue caratteristiche funzionali – ZFS può gestire gli errori estremamente bene. Queste caratteristiche, tra cui Copy on Write, Snapshots, scaling praticamente infinito, self-healing con somme di controllo, e virtualizzazione integrata per il tuo pool di storage, danno a ZFS un ulteriore livello di robustezza.
ZFS ha un suo modo di strutturare le nuove scritture chiamato Copy on Write. Questo è diverso dal modo in cui la maggior parte dei gestori di volume strutturano le nuove scritture. Normalmente quando viene scritta una modifica o nuovi dati, questi vengono scritti sopra i vecchi dati. Tuttavia, se c’è un’interruzione di corrente durante quella scrittura – i dati potrebbero essere persi. Invece di scrivere sopra i vecchi dati, ZFS scrive i dati in una nuova posizione e copia il percorso sopra. Questo significa che i dati non vanno persi se si perde l’alimentazione durante la scrittura. Dà anche a ZFS la possibilità di un’altra delle sue caratteristiche più utili; le istantanee.
Le istantanee sono essenzialmente timbri temporali che mostrano quale fosse il percorso dei dati in un punto specifico del passato, queste sono memorizzate in una propria tabella separata dai dati. Poiché ZFS non sovrascrive i dati e invece li scrive in una nuova posizione, si può tornare indietro ad un timestamp precedente, funziona quasi come un backup. Le istantanee hanno molto meno overhead di un vero e proprio backup però, in quanto un backup completo richiede la copia dei dati. Le istantanee possono essere prese rapidamente e facilmente in confronto.
ZFS ha anche un’incredibile capacità di guarire se stesso da errori di scrittura, corruzione dei dati o bit rot. Analizza i dati memorizzati in posizioni ridondanti utilizzando i checksum e ripara se stesso in base alle incongruenze. Ha anche la tradizionale funzionalità RAID – utilizzando il mirroring, lo striping e i controlli di parità. Quando si usa una scheda RAID hardware, il disk health checker viene mascherato quando i dischi sono collegati ad essa. Questo è un problema perché non puoi vedere i segni incombenti che uno dei tuoi dischi sta per tirare le cuoia. ZFS aggira questo problema perché non fa scrivere nessuna operazione sui dischi prima che siano presentati al sistema operativo.
Esempio di caso di un cliente
Tutti facciamo errori, alcuni possono essere più costosi di altri. Uno dei nostri clienti che utilizza ZFS sul suo Storinator ha dovuto spostare gli uffici e non ha rimosso i dischi rigidi prima del trasloco e in qualche modo ha danneggiato i dischi durante lo spostamento.
Quando il cliente ha tentato di avviare lo Storinator e importare il pool ZFS – alcune unità erano danneggiate e altre erano state collocate in modo errato – c’erano anche metadati corrotti. Tuttavia, poiché il cliente utilizzava ZFS, è stato in grado di ricostruire il pool abbastanza facilmente.
Il nostro team di supporto qui a 45Drives è stato in grado di importare manualmente il pool degradato. Una volta che il pool è stato inserito, siamo stati in grado di aggiungere nuove unità, ripulire il pool e le cose sono tornate alla normalità.
Siamo stati in grado di fare questo solo grazie alla resilienza di ZFS, ma questo non sarebbe stato possibile se il nostro cliente stesse usando il RAID hardware perché è molto più sensibile ai guasti dei componenti. Se avessero usato il RAID hardware c’era una buona possibilità che i loro dati sarebbero andati persi – senza un qualche tipo di recupero costoso.
Sommario
Se avete bisogno del massimo in sicurezza, caratteristiche e prestazioni, il RAID software è la risposta. Notate che dovrete usare un sistema operativo ad alte prestazioni come Linux o BSD; e se lo fate, dovreste davvero considerare ZFS. Le sue prestazioni sono eccellenti sulle macchine di oggi, porta la sicurezza dei dati ad un livello senza precedenti e come bonus, ed è davvero facile da usare una volta che si arriva alla curva di apprendimento.
- Categorie: Senza categoria
admin12:03 pm