Dit is een vervolgpost op een eerdere post – Shared Storage.
SAN – Storage Area Network – is de meest pure vorm van storage die je kan verkrijgen. In de volksmond zegt men “SAN” tegen de shared storage omgeving wanneer men spreekt over een “block-based” storage oplossing. Om uit te leggen wat daarmee bedoeld wordt, spoelen we terug naar onze computer thuis.
Als je een harde schijf in je computer installeert, dan kan je daar op zich weinig mee doen. Die schijf moet geformateerd worden zodat het besturingsysteem (oftewel OS van Operation System) ze herkent als opslagmedium, waarna er een bestandsysteem op gemaakt kan worden (vanaf nu file-system).
Op het moment dat de harde schijf in de computer zit en geformateerd is, is het een “block-device”. Het OS ziet een opslagmedium, maar het kan er niet van lezen of naar schrijven omdat er geen file-system op zit.
Een file-system is praktisch altijd gelinkt aan het OS: Windows gebruikt vandaag NTFS (NT File System en NT verwijst naar Windows NT, het allereerste “professioneel” OS van Microsoft).
Vroeger had je op Windows ook FAT16/32, wat je nog kan tegenkomen als je bv. een USB-stick wil formatteren. Apple gebruikt dan weer MAC OS Extended op hedendaagse systemen. En zo heeft elk OS zijn eigen variant van een file-system, die zo goed als nooit compatibel zijn onderling.
Hieruit kan je concluderen dat een applicatie of zelfs een OS nooit “rechtstreeks” naar een SAN kan schrijven. Er moet eerst een file-system aangemaakt worden alvorens er bestanden weggeschreven / gelezen kunnen worden van de SAN.
De SAN bestaat dus uit X aantal harde schijven + controllers die de intelligentie van het systeem uitmaken. Met die controllers (en de bijhorende management software) gaan we een aantal van die harde schijven bundelen in een groep die ervoor zorgt dat wanneer er een harde schijf stuk gaat, er automatisch een reserve exemplaar in de plaats komt zonder dat er data verloren gaat.
Deze configuratie noemen we een RAID-groep (Redundant Array for Independent Disks) en er bestaan verschillende varianten met elk zijn voor- en nadelen. Op dit moment is dat echter onbelangrijk en ga ik daar niet verder op in.
Nu hebben we dus een RAID-groep met daarin X aantal harde schijven. Op die groep gaan we een “virtuele” harde schijf maken en dat noemen we een Logical Unit (LU). Soms wordt dat ook een LUN (Logical Unit Number) genoemd, maar technisch gezien wordt een LU pas een LUN wanneer ze aangeboden wordt aan een server.
Ook dat maakt weinig uit op dit moment, zo lang het duidelijk is dat we op die “fysische” groep van schijven (RAID-groep) een “virtuele” schijf gemaakt hebben die even groot is als de som van de fysische schijven in de RAID-groep.
Kanttekening:

  • De “virtuele” schijf moet niet even groot zijn als de totale som, maar is maximaal even groot + best practise zegt dat je 1 “virtuele” schijf maakt per RAID-groep (waarom leg ik later wel uit)
  • De “virtuele” schijf is eigenlijk niet gelijk aan de totale som van de fysische schijven in de RAID-groep omdat je 1 of meerdere schijven niet kan gebruiken omdat die er voor zorgen dat je data niet verloren is wanneer er een schijf stuk gaat. Voor nu is dat echter niet belangrijk en gaan we gewoon van een simpele 1-op-1 stelling uit om alles high-level te kaderen

Het is de “virtuele” schijf oftewel LU(N) die we via een storage-netwerk (SAN, remember?) aan de server aanbieden. De server ziet die LU(N) dan alsof er in de server zelf een harde schijf is toegevoegd. Met andere woorden – het OS moet die LU(N) formatteren en er een file-system op plaatsen alvorens de applicaties er iets mee kunnen doen. En dat is in essentie wat een SAN is / doet en waarom we dat een “block-based” storage platform noemen.
Nog interessant om weten: dat “netwerk” waarmee de SAN aan de servers gekoppeld is, is meestal een glasvezel netwerk (FC – Fibre Channel) dat vandaag tot 8Gb/s aankan. Anderzijds is er ook de mogelijkheid om over het IP-protocol te werken en dan spreken we van een iSCSI SAN in plaats van een FC-SAN. iSCSI kan in 1Gb/s of 10Gb/s aangeboden worden.
Typisch zie je iSCSI in kleinere omgevingen of omgevingen waar men al zwaar geΓ―nvesteerd heeft in een IP-netwerk. Een FC-SAN vereist een FC-netwerk met speciale switches, waardoor de kostprijs ook hoger ligt.
Hopelijk is de term SAN als variant van Shared Storage nu duidelijker? Zoals gewoonlijk zijn vragen of feedback welgekomen in de comments hieronder! Next up: NAS oftewel Network Attached Storage.