Oude troep is erg negatief; ik heb zelf ook een Areca gehad en dat zijn mooie producten! Maar toch is Hardware RAID nu niet erg sexy meer als je vergelijkt met de software RAID alternatieven die je veel goedkoper kunt krijgen:
- Je hebt een dure RAID controller nodig met eigen RAID logic en onboard geheugen (Write-back engine)
- Je hebt dure TLER-schijven nodig; schandalig duur voor een softwarefeature. Bij veel RAID controllers is het maar de vraag of ze ook CCTL/ERC ondersteunen, want alleen TLER werkt automatisch; bij CCTL/ERC moet er elke boot opnieuw CCTL/ERC op 7 seconden ingesteld worden.
- Je hebt ook nog een Battery Backup Unit (BBU) nodig om write-back modus veilig te kunnen gebruiken. Zonder write-back zijn RAID5 en RAID6 enorm traag met writes.
- Hardware RAID gaat niet goed om met bad sectors. Het is meer een zwart-wit concept. Of de schijf is perfect en doet mee, maar als één sector onleesbaar is knallen we hem eruit. In het huidige tijdperk met schijven met steeds hogere datadichtheid waarbij bad sectors door simpele mathematica (uBER=10^-14) steeds vaker voorkomen, biedt hardware RAID dus een oplossing die enigszins verouderd is. Niet lager zijn schijven stuk of werkend, maar steeds vaker kunnen in principe gezonde schijven een paar sectoren niet lezen.
- Je kunt schijnveiligheid creëren. Een RAID5 lijkt veilig maar als je tijdens een rebuild nog op bad sectors stuit op de resterende schijven, zit je al in de moeilijkheden. Veel RAID engines gaan over de zeik als tijdens dit soort operaties de resterende schijven niet goed functioneren. Je kunt dataverlies hebben terwijl al je schijven in principe nog functioneren; dus de gedachte 'RAID5 biedt bescherming totdat twee schijven helemaal stuk zijn' is een utopie. Vroeger was RAID5 veel meer nuttig dan tegenwoordig; wat alles met de hardeschijven zelf te maken heeft, en de trend van meer onleesbare bad sectors naarmate de datadichtheid toeneemt.
- Traditionele filesystems bieden ook absoluut geen bescherming voor je metadata en bestanden zelf. De gevoelige metadata kan corrupt raken door tal van oorzaken, met name in combinatie met RAID5 en RAID6. Als dat gebeurt kun je grote delen van je filesystem kwijt raken.
Kortom, ik wil aangeven dat de combinatie Hardware RAID + traditioneel filesystem zoals nog steeds veel wordt gebruikt hedendaags, eigenlijk niet meer van deze tijd is. Door de trend die al langer zichtbaar en gedocumenteerd is, zal de betrouwbaarheid van dergelijke systemen ook blijven afnemen. Het is niet voor niets dat Microsoft al langer bezig is de nadelen van het ouderwetse NTFS op te vangen. Bij WHS 2 was de DriveExtender 2.0 - die uiteindelijk was gecancelled - wel ontworpen met een redundancy overhead ingebouwd om bad sectors op te kunnen vangen. Bij het recent aangekondigde ReFS is ook sprake van filesystem redundancy (evenals checksums). De noodzaak voor 'slimmere' technologie in plaats van een 'domme RAID controller' die alleen met RAID bezig houdt en een 'dom filesystem' wat denkt dat hij op een enkele schijf geïnstalleerd staat, is wat mij betreft dan ook zeker duidelijk.
Wat betreft redundante filesystems is ZFS zeker op dit moment gewoon de koning. Het is volwassen, biedt veel features en is beschikbaar op diverse platforms (tegenwoordig doet Linux ook al redelijk mee). Dus het is niet zo gek dat de traditionele oplossingen die we vroeger allemaal hebben gebruikt, nu onder vuur komen te liggen, nu alternatieven zeker voor handen zijn. Appliances als ZFSguru, FreeNAS, Nexenta moeten deze technologie ook toegankelijk maken aan minder technische gebruikers, die gewoon snel een servertje willen opzetten met veilige opslag, en die met hun Windows/Linux/Mac desktop kunnen aanspreken.
Nuanceren ben ik helemaal voor; en niet al mijn uitspraken zijn even genuanceerd. Maar een sterke opinie is niets mis mee; ik ben iemand die op vele vlakken ver vooruit kijkt en zoekt naar
betere of
slimmere oplossingen in plaats van wat gemeengoed is. Dat gezegd, ieder moet kijken naar zijn eigen situatie en prioriteiten, waarbij er genoeg situaties denkbaar zijn waarbij iemand nog steeds voor Hardware RAID moet kiezen. Maar die afweging dient wel grondig gemaakt te worden, door de voordelen die ZFS en andere opkomende moderne filesystems.
Dutch3men schreef op donderdag 08 maart 2012 @ 16:24:
[...]
Dus als ik ZFS zou willen gebruiken zou ik telkens als er een disk vrij komt een nieuw volume moeten aanmaken, maar aangezien ik RAID5/6 wil draaien moet ik telkens wachten tot ik 3 of 4 disken leeg ik voordat ik weer een nieuw volume kan aanmaken. Dus kort weg gezegd stel ik wil met mijn huidige setup ZFS draaien in RAID5, moet ik twee volumes aanmaken en verlies ik i.v.m RAID5 twee harde schijven aan opslag.
Dan lijkt MDADM een betere oplossing aangezien hierbij gewoon telkens een HDD aan een array gekoppeld kan worden, correct?
Ouderwets expanden van RAID5 is voor thuisgebruikers heerlijk, omdat ze altijd even een schijfje bij kunnen pleuren. Voor Enterprise-gebruikers is deze feature niet interessant, om meerdere redenen:
- Je server in principe offline voor 24+ uur; de lage I/O performance is onvoldoende om een enterprise server te laten draaien
- Het is niet volkomen veilig; het is een riskante operatie waarbij het de vraag is hoe goed de engine omgaat met bijvoorbeeld een crash of bad sector of andere problemen tijdens de expansion
- Het verlaagt je redundancy-niveau; je hebt meer schijven maar niet meer redundancy; je array wordt er dus onveiliger van. Meestal niet zo'n probleem.
Voor thuisgebruikers is het niet 'ouderwets' kunnen expanden van ZFS een groot nadeel. Maar wat vaak onderkend wordt, is dat ZFS ook voordelen biedt boven de 'ouderwetse' methode:
- ZFS expansion is volkomen veilig; de bestaande data blijft waar hij staat.
- ZFS expansion is in één seconde afgerond; geen downtime of lage I/O performance whatsoever.
- ZFS expansion behoudt je redundancy, doordat je steeds nieuwe arrays toevoegt in plaats van de stripe width uitbreidt.
- Je kunt vdevs van een ander type toevoegen; dus bijvoorbeeld RAID5 met mirror combineren; of RAID-Z2 met RAID-Z3 combineren.
- Je kunt grotere disks gebruiken; dus je begint nu met 2TB disks en later voeg je 3TB disks toe en in de toekomst ruimte voor 4TB disks. Bij ouderwets expanden moet je dezelfde disks gebruiken.
- ZFS doet load balancing over de verschillende vdevs; dus als je nieuwe array/vdev sneller of langzamer is dan de oude, remmen ze elkaar niet af. Bij ouderwets expansion zal een snellere schijf nauwelijks voordeel geven.
- Doordat je ook extra SATA poorten nodig hebt en dus een controller moet kopen, is het uitbreiden met meerdere disks tegelijk meestal niet zo heel erg als je dat kunt plannen.
Wat bijvoorbeeld ook kan:
- Beginnen met een degraded RAID-Z of RAID-Z2 array. Dus bijvoorbeeld een 6-disk RAID-Z2 waarbij je maar 4 echte schijven gebruikt. Je kunt dan data overkopiëren en schijven vrijmaken waar nog data op stond, en die vervolgens toevoegen aan je pool.
- Beginnen met een RAID0 en uitbreiden naar mirror; of andersom. Dus bijvoorbeeld 4 disks in RAID0 waarnaartoe je data kopiëert. En later voeg je 4 schijven toe zodat je 4 mirrors hebt van in totaal 8 schijven.
Ik wil niet zeggen dat ZFS daarmee alle nadelen voor thuisgebruikers wegneemt, maar het is ook een kwestie van perspectief. Als je op een andere manier denkt, is de methode van ZFS eigenlijk zo gek nog niet. Natuurlijk hoop ik wel dat die feature er ooit in komt, maar voorlopig zie ik dat niet gebeuren.