Distributeur Terach publiceert een document over de architectuur van storage leverancier Isilon.
DAS, NAS, SAN of Clustered Storage System?
De laatste jaren heeft een explosieve groei van ongestructureerde data plaatsgevonden. Tot dusver bestond de IT-omgeving voor het merendeel uit gestructureerde data, bijvoorbeeld SQL databases, e-mail- en file servers op basis van tekstgebaseerde informatie. De samenstelling van het type data-opslag binnen enterprise-ondernemingen is snel aan het veranderen. De nieuwe type ongestructureerde data bezit, in de vorm van digital images en digital content, een hoger informatiegehalte dan de gestructureerde. Nieuwe applicaties, op ondermeer het gebied van computer modellering en simulatie, amusement, ruimte- en luchtvaart onderzoek, Internet diensten en business analysis, vragen om een netwerk met een hoge bandbreedte. Dit is een vereiste voor het creëren van een totaal nieuwe infrastructuur die gebaseerd is op digitale content. Naar mate meer ondernemingen en gebruikers deze nieuwe data typen creëren en gebruiken, zal de vraag toenemen om data op een andere manier op te slaan en te verwerken dan tot dusver gebruikelijk was. Want, de architectuur van onze huidige computersystemen is niet ontworpen voor de verwerking van grote hoeveelheden digital content. Het zijn systemen die oorspronkelijk zijn ontworpen voor gestructureerde data op basis van kleine bestanden en hoge transactiesnelheden. Bovendien zijn de traditionele opslagsystemen, SAN en NAS, voor digitale content te weinig schaalbaar in zowel opslag- als doorvoer capaciteit. Ongestructureerde data heeft echter unieke eigenschappen die hoge eisen stellen aan de doorvoer: leesintensieve toegangspatronen, in combinatie met gelijktijdige gebruikerstoegang. Een mogelijke oplossing is de toepassing van clustertechnologie bij opslagsystemen. Dat biedt niet alleen een hogere schaalbaarheid in prestaties en doorvoer maar ook een hogere beschikbaarheid. Het is aan het IT-management om nu en in de toekomst de juiste en lastige keus te maken uit de diverse soorten opslagsystemen. Te kiezen valt uit de diverse bestaande traditionele opslagsystemen, zoals SAN en NAS, of voor een moderne architectuur, een Clustered Storage System dat meer geschikt is voor ongestructureerde data.
Keuze voor bepaald type opslagsysteem
De behoefte aan steeds meer opslagcapaciteit zal de komende jaren onverminderd blijven bestaan. Bij een uitbreiding van de opslagcapaciteit is het voor de IT-manager niet altijd duidelijk welke oplossing de beste is voor de onderneming of organisatie. Zoals hiervoor beschreven, er zijn verschillende opties beschikbaar. De meeste bekende zijn DAS, SAN en NAS. Welke daarvan de juiste opslagoplossing is, kan een persoonlijke en individuele beslissing zijn. Er is ook geen enkel eenduidig antwoord voor een bepaalde oplossing te geven. Het is daarom van belang om de aandacht te besteden aan de specifieke behoeften en de zakelijke doelstellingen op lange termijn. Verschillende sleutelcriteria die bij het nemen van een beslissing belangrijk zijn:
• Capaciteit: welke hoeveelheid en type data (block- of file I/O) moet worden opgeslagen en mogelijk gedeeld?
• Prestaties: wat zijn de vereiste prestaties, met betrekking tot de groei van de data op lange termijn?
• Beschikbaarheid en betrouwbaarheid: hoe ‘mission-critical’ zijn de enterprise applicaties?
• Bescherming van data: welke eisen worden gesteld ten aanzien van backup en recovery?
• IT-beheerpersoneel en bronnen: zijn deze binnen de onderneming beschikbaar of moeten deze worden ingehuurd?
• Budget: wat zijn de gestelde eisen en limieten ten aanzien van de beschikbare gelden?
Bij de aanschaf van een opslagsysteem komt het IT-management voor een lastige keuze te staan. Te kiezen valt uit verschillend type opslagsystemen die elk hun eigen toepassingsgebied hebben. Naast de traditionele Direct Acces Storage (DAS) systemen kennen we thans de op Fibre Channel- of iSCSI-gebaseerde Storage Area Network (SAN) opslagsystemen. Daarnaast zijn de, vanuit de oorspronkelijk DAS-gebaseerde file ontwikkelde serversystemen, de Network Attached Storage (NAS) systemen populair. In navolging van de Cluster Server architectuur is echter een nieuwe architectuur in opkomst: de Clustered Storage architectuur. Afhankelijk van de toepassing kan het IT-management nu een keuze maken uit een van de vier opslagarchitecturen. Exact te weten welk opslagsysteem voor een bepaalde toepassing het best kan worden toegepast is van primair belang voor een succesvolle implementatie. De traditionele leveranciers van opslagsystemen, met name Fibre Channel, zullen gebruikers adviseren om altijd te kiezen voor FC-gebaseerd systeem. Het alternatief voor Fibre Channel, iSCSI, is hun ogen nog steeds niet de meeste geschikte oplossing voor een enterprise applicatie. Een product op basis van een Cluster Storage architectuur ontbreekt zo goed als in hun bestaande productenpakket.
Om een beter begrip te krijgen welke specifieke voor- en nadelen aan de vier verschillende opslagsystemen ten grondslag liggen, volgt hierna eerst in het kort een overzicht van de drie traditionele opslagarchitecturen.
DAS
De eerste opslagsystemen (SCSI, ATA) waren direct gekoppeld aan de server waarbij alleen één server toegang had tot het opslagsysteem. Afhankelijk van de applicatie werd het opslagsysteem via het serververbindingskanaal op basis van block I/O of File I/O benaderd. Zoals bekent, een file bestaat uit een verzameling disk data blocken. Alleen het operating system (en daarboven gelegen file system) kan overweg met een file en weet precies uit welke disk blocken een file bestaat. De meeste applicaties zijn echter gebaseerd op files en weten niets van het bestaan van disk blocken. De allereerste DAS-systemen met hun enkel gekoppelde opslagsystemen werden overwegend toegepast voor file I/O, men noemde ze daarom ook file servers.
Bij block-gebaseerde I/O worden alleen disk blocken tussen de applicatie en het opslagsysteem uitgewisseld. Ondermeer databases en transactie gebaseerde systemen maken van disk blocken gebruik en omzeilen daarmee het file systeem door rechtstreeks met het opslagsysteem te communiceren. Voordeel hiervan is dat snel toegang mogelijk is tot het opslagsysteem omdat de tussen het operating system en opslagsysteem liggende file system kan worden overgeslagen. Dit biedt betere toegangsprestaties, waardoor gebruikers van databases en transactie gebaseerde systemen een goed response tijd kan worden gegarandeerd. Leveranciers van databases ontwikkelen hun producten dan in de regel op basis van block I/O. Voordeel van het DAS systeem is de snelle toegang tot het opslagsysteem, nadeel is het inefficiënt gebruik daarvan. Let wel, een DAS systeem hoeft niet per se op SCSI, ATA (nu SAS/SATA) gebaseerd te zijn, maar kan ook op basis van Fibre Channel. Ten slotte, DAS systemen maken nog vandaag de dag het merendeel van alle bestaande opslagsystemen uit!
SAN
Door de komst destijds van het Fibre Channel netwerk werd het mogelijk om meerdere servers van hetzelfde opslagsysteem gebruik te laten maken. Aan de kant van de gebruiker (lees applicatie) veranderde er echter niets. Want, voor de applicatie en het operating system ziet de via het FC-netwerk gekoppelde opslagsysteem er hetzelfde uit als een DAS-gebaseerd opslagsysteem. Het voordeel van een SAN-gebaseerde omgeving is dat efficiënter gebruik kan worden gemaakt van de beschikbare opslagcapaciteit. Doordat het beheer vanuit een enkele beheerapplicatie kan worden uitgevoerd, betekend het voor het IT-beheer een efficiënter en minder arbeidsintensieve beheeromgeving. Wel is het zo dat de complexiteit ten aanzien van het beheer van een grootschalige SAN-gebaseerde omgeving sterk toeneemt, in vergelijking met een omgeving met afzonderlijke DAS-systemen. Bovendien vormt het opslagsysteem en het SAN-netwerk een zogenaamde single point of failure (spof), want de uitval van het gedeelde opslagsysteem heeft tot gevolg dat alle aangesloten servers uitvallen. Het risico op uitval is voor een deel wel op te lossen door het opslagsysteem en netwerkcomponenten dubbel of driedubbel uit te voeren maar dit brengt wel aanzienlijk meer kosten met zich mee.
Net zoals een DAS-systeem is een via SAN gekoppelde server te gebruiken als file server voor file I/O en/of als database server op basis van block I/O.
De afgelopen jaren heeft een ander type block I/O gebaseerd opslagsysteem zijn intrede gedaan, de iSCSI architectuur. In plaats dat disk blocken via het Fibre Channel netwerk worden verstuurd, gebeurd dat bij iSCSI via een Ethernet-netwerk en met behulp van het TCP/IP-protocol. Net zoals bij het FC-baseerde netwerk werkt iSCSI op basis van block I/O zodat voor het operating system en de gebruiker er ook geen verschil tussen een Fibre Channel of iSCSI gebaseerd opslagsysteem is, voor beide geldt dat het in principe een direct gekoppeld DAS opslagsysteem is. Voordeel van de iSCSI-architectuur, in vergelijking met Fibre Channel, is de lage instapdrempel ten aanzien van de infrastructurele kosten en op termijn de lagere beheerkosten. Een grootschalig Fibre Channel gebaseerd SAN is nog steeds vele malen duurder dan een iSCSI-gebaseerde. Daarbij komt, netwerkbeheerders zijn al bekend met Ethernet en TCP/IP, wat een besparing oplevert in de IT-beheerkosten. Tevens zijn alle bestaande netwerkbeheerapplicaties zonder aanpassing direct te gebruiken voor iSCSI.
NAS
In het begintijd van de ‘open systemen’ werden voor Ethernet-netwerken diverse protocollen ontwikkeld waarmee files tussen servers konden worden uitgewisseld; de meest gebruikte protocollen zijn thans CIFS (Windows-omgeving) en NFS (UNIX-omgeving). De uitwisseling van files gebeurt, net zoals bij een DAS-systeem, op basis van file I/O. Door allerlei functies die niet nodig waren voor de file serving functionaliteit uit de server te halen, waaronder communicatie en printen, en door file serving functies te optimaliseren ontstond een ‘gestripte’ file server die speciaal toegespitst was voor file serving via een Ethernet-netwerk. We noemen dit vandaag de dag een ‘NAS systeem’. Leveranciers van NAS-systemen hebben allerlei technieken geïmplementeerd om de NAS server zo snel mogelijk te maken voor de functie van file serving. Voordeel van de NAS server is dat, in tegenstelling tot DAS, er verschillende type operating systems (Windows, Linux en UNIX) zonder extra software van hetzelfde opslagsysteem gebruik kunnen maken. NAS is een daarom een ideaal systeem voor de kleine en middelgrootte onderneming om op een eenvoudige en kosteneffectieve manier meerdere clients toegang tot data te geven op file niveau. Kleine ondernemingen ervaren NAS als een ‘plug and play’ oplossing dat makkelijk is te installeren, toe te passen en onderhouden. Voordeel van NAS is de eenvoud van beheer, in vergelijking tot het beheren van meerdere DAS-systemen waarbij elk opslagsysteem op elke DAS server afzonderlijk moet worden beheerd.
Nadeel van de NAS server is dat het in de regel alleen geschikt is voor file serving en niet voor databases en transactiegebaseerde systemen op basis van block I/O; alhoewel de high-end NAS systemen steeds vaker geschikt worden gemaakt voor databases. Maar de werkelijke tekortkomingen van NAS komen toch aan het licht wanneer het NAS systeem, bij gebrek aan opslagcapaciteit, moet worden uitgebreid. Omdat een NAS systeem in feite een DAS-systeem is met een direct gekoppeld opslagsysteem blijft de uitbreiding beperkt tot de fysieke- en technische capaciteiten van de NAS server zelf. Wanneer de NAS server maximaal is uitgebreid (hoeveelheid disken en controllers) dan rest de beheerder slechts één mogelijkheid: het bijplaatsen van een extra NAS server. Op dat moment staat de beheerder voor de lastige taak om de bestaande gebruikers, toegangsbevoegdheden, files en directories te verdelen over meerdere NAS servers. Dit valt op zich bij enkele systemen nog wel mee maar voor enterprise-omgevingen met honderden of zelfs duizenden NAS servers wordt dit een zeer arbeidsintensieve en complexe beheertaak, nog afgezien van de risico’s en vertragingen die men oploopt om gebruikers van nieuwe bevoegdheden en locaties te voorzien. Weliswaar neemt de totaal beschikbare opslagcapaciteit bij toevoeging van een NAS server toe, maar op zich blijven het toch geïsoleerde opslageilanden. Slechts enkele firma’s bieden voor een grootschalige NAS-omgeving een clusteroplossing maar dit zijn echter complexe en dure oplossingen om een NAS-omgeving schaalbaar te maken in zowel opslagcapaciteit als prestaties.
Net zoals bij DAS-systemen blijft het inefficiënt gebruik van de afzonderlijke NAS-opslagsystemen bestaan doordat de ‘restcapaciteit’ op elk systeem ongebruikt blijft; de schattingen lopen uiteen, maar gemiddeld wordt minder dan de helft van elk opslagsysteem inefficiënt gebruikt. Een ander nadeel is dat bij toevoeging van een NAS server de schaalbaarheid ten aanzien van doorvoerprestaties niet toeneemt. Want bij het opvragen van bijvoorbeeld een file wordt slechts de I/O capaciteit van één NAS server aangewend omdat via deze server de toegang plaatsvindt tot de opgevraagde file. Tenslotte is er het nadeel van de complexe backup- en beheeromgeving. Want, elke NAS-server moet worden opgenomen in een backup/restore procedure. Daarvoor zijn complexe en dure backup-applicaties nodig waarbij vaak op elke NAS server aparte zogenaamde ‘agents’ moeten worden geïnstalleerd. Bij toevoeging van een NAS-server moet bovendien de gebruikte backup-scripts worden aangepast.
Toepassing unstructured data
IT-omgevingen die worden geconfronteerd met een, in zowel grootte als complexiteit, toenemende hoeveelheid ongestructureerde data zullen de komende jaren in ondervinden dat hun traditionele opslagsystemen overbelast raken, met als gevolg afnemende response tijden voor gebruikers. Zoals gezegd, de oorzaak is dat deze systemen primair ontworpen zijn voor toepassing van gestructureerde data met kleine bestanden en applicaties met hoge transactiesnelheden; bijvoorbeeld databases en e-mail servers. Bij gebrek aan een beter alternatief hebben veel ondernemingen getracht hun behoefte aan meer capaciteit te stillen door de toegenomen hoeveelheid ongestructureerde data op te slaan door middel van uitbreiding van hun bestaande traditionele opslagsystemen. Maar zelfs de nieuwste NAS- en SAN-systemen zijn nog steeds gebaseerd op een architectuur met de hiervoor genoemde inherente beperkingen. Het gevolg is de creatie van zogenaamde ‘opslageilanden’ en een complex te beheren infrastructuur. Deze systemen zijn voor de toepassing van grote hoeveelheden ongestructureeerde data maar beperkt schaalbaar in capaciteit en prestaties. Bij toenemende belasting komen er bovendien allerlei prestatieflessenhalzen aan het licht die in het verleden niet optraden. Met betrekking tot het bieden van een hoge beschikbaarheid brengen deze systemen hoge kosten met zich mee wanneer ze voor ongestructureerde data gaan worden gebruikt. Kortom al deze beperkingen hebben geleid tot de vraag naar een nieuwe opslagarchitectuur, clustered storage architectuur genaamd, een architectuur die speciaal vanaf de basis ontworpen is voor het opslaan van ongestructureerde data en digitale content in combinatie met een hoge schaalbaarheid en prestaties.
Bij dit type opslagarchitectuur zijn een aantal basiskarakteristieken te onderscheiden: symmetrische clusterarchitectuur, schaalbaar gedistribueerd file system, beheer vanuit één niveau, lineaire prestaties, en toepasbaar in de enterprise-omgeving. In het kort lichten we deze eigenschappen toe.
Eigenschappen Clustered Storage System
De kern van een gedistribueerd clustered storage system ontwerp wordt gevormd door de symmetrie tussen de clusternodes, gelijke zelfstandige units die bestaan uit een storage controller, cpu, geheugen en een of meer netwerk-interfaces. De taken die een cluster moet uitvoeren worden gelijkmatig over alle nodes verdeeld, wat een cluster niet alleen schaalbaar maakt maar ook snellere toegang tot de data biedt, verbeterde prestaties en beschikbaarheid. Dit in tegenstelling tot de traditionele architecturen die gebaseerd zijn op de ‘master server’ gebaseerde benadering waarbij opslagnodes niet symmetrisch zijn en beperkt zijn in schaalbaarheid en prestaties. Onafhankelijk van het aantal toegevoegde nodes blijft het clustersysteem zich als één logische eenheid gedragen. Een volledig symmetrische clustered storage architectuur kan zonder beperkingen worden uitgebreid en ondersteunt een modulaire groei. Dat wil zeggen, wanneer meer geheugen, bandbreedte, capaciteit of disk drives nodig is dan kan de cluster eenvoudig worden uitgebreid door extra nodes (wel of niet met een daaraan gekoppeld opslagsysteem) bij te plaatsen. Tijdens en na de uitbreiding blijft de cluster zich gedragen als een coherent, logisch en dynamisch uitbreidbaar systeem. De uitbreidingen zijn voor de gebruiker niet merkbaar, dit vaak in tegenstelling tot de traditionele opslagsystemen.
De techniek die een schaalbare cluster mogelijk maakt wordt gevormd door een gedistribueerd file system die opslag schaalbaar maakt door alle afzonderlijke opslagcapaciteit van een node op te nemen in een grote opslagpool. Een gedistribueerd file system bestuurt en controleert daarbij alle bestanden en data van de nodes en maakt van metadata en file locking technieken gebruik voor gelijktijdige toegang tot de data, dit om de cohesie en volledige distributie tussen de clusternodes te waarboren. Daarmee kan een enkele gebruikers netwerk drive en enkel file system uitgroeien tot honderden terabytes of zelfs petabytes (duizend terabytes). Op basis van deze eigenschappen onderscheid de clustered storage system zich duidelijk van een NAS-systeem; zie bij voorbeeld de prestaties van een Isilon 1920i vs een traditioneel NAS systeem van NetApp.
De gedistribueerde clustered storage oplossingen hebben de unieke eigenschap van een lineaire schaalbaarheid in prestaties. Bij toevoeging van meer clusternodes wordt niet alleen meer opslagcapaciteit toegevoegd maar ook neemt het aantal disk controllers, hoeveelheid geheugen, disk spindles en netwerk I/O capaciteit toe. De cluster is in staat om al deze bronnen te bundelen waardoor bij toevoeging van een node een lineaire schaalbaarheid in prestaties kan worden bereikt. Het is daarom van uiterst belang dat de nodes onderling gesynchroniseerd blijven. Voor de onderlinge verbinding tussen de clusternodes is daarom een snel en low latency netwerk nodig. Sommige oplossingen, waaronder Isilon, bieden naast een 1 Gigabit netwerk de mogelijkheid om van een Infiniband netwerk gebruik te maken (dit heeft voor veel gebruikers de voorkeur).
Bij definitie biedt een gedistribueerde clusterarchitectuur een hoge beschikbaarheid omdat elke node een volledige ‘peer’ is van de andere nodes. Dat houdt in de praktijk in dat als een van de nodes uitvalt, de data nog steeds toegankelijk is voor de andere nodes (en dus de gebruikers). Er is daarom geen single point of failure omdat de ‘state’ van het file system door het clustersysteem blijft gewaarborgd. In feite kan een volledige gedistribueerde clusterarchitectuur de gelijktijdig uitval van meerdere disk drives en clusternodes opvangen. Mocht er onverhoopt toch een of meer disks zijn uitgevallen dan is de gedistribueerde architectuur snel in staat om zich daarvan te herstellen. Immers, clustered storage maakt van alle aanwezige disk spindles en hardware maximaal gebruik en is niet gebonden aan de snelheid van een bepaalde disk. Afhankelijk van de drive densiteit kan een disk ‘rebuild’ maximaal binnen enkele uren plaatsvinden, dit in tegenstelling tot de traditionele NAS- en SAN systemen waarbij dit tot wel 24 uur kan oplopen. In tegenstelling tot de disken in traditionele opslagsystemen waarbij de IT-beheerder extra additionele software en dure redundante hardware moet aanschaffen om een hogere beschikbaarheid te bereiken is dit bij een storage cluster niet nodig.
Conclusie
Met de enorme variëteit aan beschikbare opslagtechnologieën, wordt het voor de IT-manager steeds lastiger om te beslissen welke oplossing voor de onderneming de juiste is. DAS, NAS en SAN bieden allemaal voor- en nadelen, maar elk daarvan is slechts geschikt voor een bepaalde toepassing en niet voor allemaal. Elke leverancier van opslagsytemen zal uiteraard zijn type opslagsyteem als de beste voor de desbetreffende applicatie van gebruiker aanprijzen. Een methode echter om te bepalen welke type opslagsysteem de beste keus is, is door de aard van de type data en de applicatie vast te stellen. Vragen die men daarbij ondermeer kan stellen zijn: hoe kritisch en verwerkingsintensief zijn deze? Wat zijn de minimum acceptabele niveaus ten aanzien van prestaties en beschikbaarheid. Moet de informatie worden gedeeld binnen de onderneming of blijft deze alleen locaal beschikbaar.
Net zoals alle andere industrieën is storage netwerking constant aan veranderingen onderhevig. Het is eenvoudig om in de val te lopen door op dat moment te kiezen voor een opkomende of ‘disruptive’ technologie. De meeste kans op succes is door te kiezen voor een oplossing die ten aanzien van de kosten gerechtvaardigd is en op lange termijn de garantie biedt dat de juiste investeringen zijn gedaan. Storage Networking is gebaseerd op in het verleden bewezen clustertechnologie en gedistribueerde file systemen. Deze technologien hebbn de afgelopen tien jaar al bewezen uiterst betrouwbaar en kosteneffectief te zijn. Tot voor kort werden op basis van deze technologien geavanceerde clustersystemen alleen in de wetenschappelijke wereld gebruikt vanwege hun rekenkracht en benodigde expertise bij het onderhoud en installatie. De tijd lijkt nu aangekomen dat commerciële storage clustered systemen ook in de commerciële omgevingen voor bepaalde toepassingen, met name digital content en de opslag van ongestructureerde data, voor een doorbraak zullen zorgen in opslagland.