Az aktuális cégemnél gyakran szoktam minden féle “bevezető” oktatásokat tartani olyan újdonsült kollégáknak, akik nem IT-s területről származnak. Többnyire ezek a bölcsész hölgyek-urak olyan feladatkörben kell hogy dolgozzanak, hogy ne keljen IT-s dolgokat adminisztrálniuk, cserébe azzal kapcsolatos papírozó adminisztrációt keljen elvégezniük. Ilyenkor viszont jó tudni, hogy mi is állhat a sok rövidítés és misztikus angol szavak mögött ténylegesen. Az oktatás mára olyan rendszeressé vállt, az egyre több kolléga miatt, hogy úgy éreztem egy rövid jegyzetet is érdemes lenne készíteni hozzá.

Ezt a jegyzetet osztanám meg az olvasóimmal. A jegyzet alapvetően laikusoknak készült. Nem akar nagyon technikai mélységekbe belemenni, olyan “konyhanyelven” íródott, azért, hogy a lehető legtöbb hasznos és praktikus tudást átadhassa.

MI AZ A STORAGE?

A storage, egyszerűen kifejezve egy „doboz ,amiben diszkek vannak.” Ez konyhanyelven tökéletesen azonosítja a storage-t. A storage feladata, hogy egy teljesen szeparált módon, és esetekben centralizált módon biztosítsa más szervereknek, vagy klienseknek a tárterületet.

MILYEN STORAGE TÍPUSOK VANNAK?

Tehát eljutottunk, hogy van a storage dobozunk, amit össze kell kötnünk a server/client dobozzal. A kérdés csak az milyen kábellel, és milyen közvetítő közeggel fogjuk ezt megtenni.
Mi a következő három kategóriáról fogunk beszélni:

    DAS
    NAS
    SAN

Minden egyes kategóriánál a technikai bemutatón túl a következő kérdésekre keressük a választ.
• Milyen előnyei vannak ennek a tárolási technológiának?
• Milyen hátrányai vannak ennek a tárolási technológiának?
• Mi a közvetítő közeg a storage és a server/client között?
• Milyen típusú tárolási kapacitást szolgáltat ez a megoldás?

DAS (DIRECT ATTACHED STORAGE)

Ez, ahogy a nevéből is kivehető, egy közvetlenül kapcsolt tároló megoldást jelent. Közvetlenül kapcsolódik, ez azt akarja jelenteni, hogy ugyan azt a technológiát, és kábelezést használjuk a két doboz (storage – server/client) összekötésére, mint a gépen belül a disk-ek csatolására. Tehát ugyan az típusú kábel fogja csatlakoztatni a különálló storage dobozt is (amiben ugye több disk is található), mint a belső diskeket.

A kábel hossza elég rövid 3-4 méter hosszú lehet átlagosan (speciális esetekben 8 méter is ), tehát nem éppen hosszúnak mondható. A sebessége a kábeleknek átlagosan megegyezik a belső diskek összekötésére használt kábelekével.

Ebben az esetben a server/client a storage boxban lévő diskeket látja, vagy LUNokat (a LUNokról majd később). Tehát magát a nyers disk területeket.

Így ebben az esetben elmondható, hogy olyan, mintha a serverünknek küldő diskeket toldanánk rá.
Otthoni kategóriában ilyenek a kis teljesítményű USB-s diskek. Igen, azok is DAS-ok.

MOST PEDIG NÉZZÜK A KÉRDÉSEKRE A VÁLASZOKAT

• Előnyök: Egyszerű a bevezetése, olcsó, különösebb konfigurációt nem igényel, csak össze kell kötnünk a megfelelő kábeleket.
• Hátrányok: Nem lehet nagy távolságokra elhelyezni a server/client-et és magát a storage-t, nem nyerünk nagyobb disk sebességet, tehát lassúnak kategorizálható.
• Közvetítő közeg: SCSI kábel tipikusan, de lényegében, ugyan az a kábel, ami a server/client-en belül a belső diskeket is összeköti.
• Szolgáltatott tárhely típusa: Nyers diskeket vagy LUNokat látathatunk a server/client felé.

NAS (NETWORK ATTACHED STORAGE)

Ahogy a nevéből is látszik ez a storage nem más, mint az a diskekkel teli doboz, ami egyszerű ethernet alapú hálózaton keresztül kapcsolódhat. Ez azt jelenti, hogy a gépünk számára elég csak hálózati csatlakozást biztosítanunk. Ezek után a forgalom TCP/IP alapon fog menni, tehát mind a NAS-nak, mind pedig a server/client-nek szüksége van egy-egy IP címre (azt már csak zárójelesen jegyezném meg, hogy természetesen ezen IP címeknek el is kell érnie egymást). Mivel a világ már be van hálózva ethernet hálózattal, ezért ez az otthoni pár kábeles hálózattól, akár az internetet is jelentheti.

Ha hálózatról beszélünk, akkor persze kérdéses az, hogy lesznek adataink, hisz mindenki tudja, hogy kell pingelni, vagy behozni egy weboldalt, de tárhely hogyan is lesz ebből? A válasz pedig arra, hogy a NAS fajtájától függően támogat majd úgynevezett file átviteli protokollokat. Ha úgy tetszik, olyan programokat, amik file megosztásra képesek a hálózaton.

Ilyen elterjedt protokollok a NAS-ok esetén a következőek:

• FTP
• SAMBA/Windows megosztás
• NFS
• AFS
• WebDAV

Ilyenkor természetesen az ehhez a protokollhoz szükséges klienssel kell rendelkeznünk a rendszerünkön, és ezáltal fogjuk elérni az adatokat a távoli storage-n.
A NAS tehát igazából egy olyan tárhellyel teli gép, ami minden féle hálózati megosztásra képes kiszolgálni a szintén hálózatban lévő más gépeket. Természetesen erre céges környezetben speciális eszközök is állnak rendelkezésre. Viszont egyszerű asztali gépünkből is csinálhatunk NAS-t, amennyiben megosztunk egy mappát, és azt egy másik gépen a kollégánk eléri.

AKKOR NÉZZÜK A KÉRDÉSEKRE A VÁLASZOKAT:
• Előnyök: A hálózati kapcsolat miatt egyszerűen és olcsón tudjuk a hálózatba kapcsolni és bevezetni, a kezelése is egyszerű, hisz csak egy számunkra kedvező technológiával megosztásokat kell.
• Hátrányok: Mivel a forgalmat a hálózaton bonyolítjuk, az könnyedén kieshet, vagy belassulhat, tehát átlagosan egy nem túl biztos közvetítő közeg (hacsak nem használunk dedikált vonalat), illetve a megosztások miatt nem kezelhetünk diskeket.
• Közvetítő közeg egyszerű ethernet hálózat, TCP/IP alapokon. Olcsó, egy szegmens hossza 178 méter hosszú lehet, de mivel elterjedt, könnyen csatlakozhatunk már meglévő hálózatokba.
• Szolgáltatott tárhely típusa: Megosztásokat kapunk, tehát a távoli NAS-unk file és mappa struktúrájába láthatunk be, nyers diskeket nem kezelhetünk.

SAN (STORAGE AREA NETWORK)

Ellentétbe az előző két megoldással, ahol a rövidítés ténylegesen magára a storage box-ra vonatkozott, a SAN-t illetően a SAN nem csak egy doboz, teli diskekkel. A SAN egy topológia, tehát egy teljes rendszer.

A tárolásban szükséges volt egy gyors biztonságos, és nagy távolságokat átölelő megoldásra. Ezért ezen igények szerint a mérnökök létrehozták a SAN-t, mint topológiát a következők szerint.

Először is egy gyors és hosszú szegmensű közvetítő közegre volt szükség. Ez lett az üvegszálas technológia a FiberChannel (FC).

FIBER CHANNEL – ÜVEGSZÁLAS KÁBEL

Az üveg nagyon jól közvetíti a fényt, a fény pedig irányított formában viszonylag hosszan tud veszteségmentesen terjedni. Természetesen ahhoz, hogy az üvegszálban irányított formában tudjon haladni a sugár valamilyen visszatükröződő anyaggal kell azt körbevenni, ami majd visszatereli a fénysugarunkat az eredeti közegébe. Ezért fénykábel esetén mindig beszélünk egy magról, és egy burkolatról. A mag és a burkolat anyaga úgy választódik, hogy a két közeg törésmutatója minél nagyobb legyen, tehát minden esetben a lehető legnagyobb hatékonysággal verjen vissza minden fényt a mag közvetítő közegébe. Erre jön még persze több köpeny is, ami már a külső sérülésektől véd és némi árnyékolást is biztosít.

• 62.5 micron core/125 micron cladding multimode
• 50 micron core/125 micron cladding multimode
• 8.3 micron core/125 micron cladding single mode

A szerint, hogy egy fénysugarat vagy több fénysugarat használunk a közvetítő közegben beszélünk monomódosú vagy multimódusú kábelekről és felhasználásról. Értelemszerűen multimódus esetén nagyobb lesz a sávszélesség, de rövidebb lesz a közvetíthető táv, míg monomódusnál nagyobb távon kevesebb adatot tudunk átvinni.
Természetesen a computerek nem tudnak mit kezdeni a fény adatokkal, ezért szükséges egy konverzió. Ezt egy HBA (host bus adapter) fogja végezni.

HBA – HOST BUS ADAPTER

Tehát a HBA nem más, mint egy olyan opcionális kiegészítő kártya, amely az adott gép alaplapján kialakított csatlakozóba csúsztatható. Ezen a kártyán opcionálisan minden féle port elhelyezhető. A mostani témával kapcsolatban feltételezzük, hogy FC port vagy portok találhatóak ezen a HBA-n.

Ez az eszköz tartalmaz tehát portokat, ahova a megfelelő FC kábelt vagy kábeleket (attól függően a kártya hány portot tartalmaz) tartalmaz.

Ezek után a kártya elektronikája fogja a megfelelő fény alapú jeleket értelmezni, és a gép számára digitális, elektronikus jelekké alakítani. Természetesen ennek vissza fele is működnie kell, a gép által kezelt elektronikus, digitális adatokat fény adatokká kell tudnia alakítani és a megfelelő vonalon elküldenie.

FABRIC ÉS SAN SWITCH

Most már a gépek és a storagek összeköttetése adott, viszont az ábrán jól látszik, hogy van valami középen is. Ezek a switchek, csomópontok. Ezek olyan útvonalválasztó szerepet töltenek be, amik képesek kiesés nélkül elhárítani, ha a több vonal közül valamelyikkel probléma adódna.

Teljesen egyenértékűek az ETHERNET hálózati switchekkel, csak nekik természetesen a fénykábelekhez illő portjaik vannak. Egy egyszerű eszköz, amibe a megfelelő kábeleket lehet beledugdosni. Természetesen az eszköz célja, hogy az egyes portokon lévő forgalmat a megfelelő portokra közvetítse.

Amennyiben több SAN switch-et kapcsolunk logikailag össze, akkor beszélünk Fabric-okról. A Fabric tehát egy olyan LOGIKAI switch aminek az össz portszámát az egy Fabricban összefogott fizikai SAN switczek össz port száma határozza meg.

CÍMZÉSEK FIBER CHANNEL ESETÉBEN

Ahhoz, hogy az eszközök tudjanak kommunikálniuk egymással, egy bonyolultabb hálózatban mindig használni kell címzést. A Fiber Channel esetében WWN címzést használunk. Ez a World Wide Number rövidítése és körülbelül így kell elképzelni:

Ilyen számokkal lehet azonosítani portokat egy FC hálózatban.

SAN STORAGE

A SAN storage a SAN struktúrában a tényleges doboz amiben diskek vannak, csak kiegészítve azzal, hogy van neki egy HBA kártyája, aminek FC portjai vannak. Ebből is minimum kettőt érdemes tartani, hogy a teljes SAN infrastruktúránk hibatűrő legyen szintenként.
A SAN esetében mivel egy struktúrát jelent, ezért ezt a hálózatot könnyen skálázhatjuk, bővíthetjük végpontokkal, és switchekkel is. Természetesen ilyen struktúránál már nincs értelme tényleges fizikai diskeket kiajánlani Storage részről, ezért jön majd képbe a fizikai diskek tömbbe szervezése és logikai felosztása. Viszont előtte válaszoljuk meg a kérdéseket.

AKKOR NÉZZÜK A KÉRDÉSEKRE A VÁLASZOKAT

• Előnyök: Hihetetlen gyors, nagy távolságok is kialakíthatóak végpontok között, és teljesen hibatűrő struktúrát kínál. Elektromos hatások nem befolyásolják az adatáramlást.
• Hátrányok: Drága, speciális kártyát és kábeleket kíván. Sérülékeny, és sokszor komoly szakértelem kell a bevezetéséhez.
• Közvetítő közeg: Üvegszál.
• Szolgáltatott tárhely típusa: Nyers diskeket vagy LUNokat látathatunk a server/client felé.

RAID

Megbeszéltük már, hogy mind három féle Storage esetén dobozok a Storagek, amikben Diskek vannak. Viszont sokszor nincs értelme egy teljes Disket odaadni egy másik gépnek. Biztos nem pont akkor disk területre van szüksége. Pláne, hogyha azzal az a diskkel történik valami, akkor adatvesztésünk is lesz.
Úgyhogy valamit ki kell arra találni, hogy tetszőleges méretű tárterületeket tudjunk kiszelni a diskekből, plusz, hogy diskek sérülése esetén se veszítsünk adatot.

Erre találták ki a RAID technológiát. Ez a Redundant Array of Independent Disks rövidítése, azaz redundáns tömb különálló diskekből. Ebből a RAID-ből is van persze több fajta, nézzük mi is ez.

RAID0

Diskek összefűzése. Ezen belül is két fajta van:

Stripe

Diskeket csíkozzuk, úgy írunk rá adatokat. Ilyenkor fontos, hogy ugyan akkora méretű diskeket használjunk, különben a legkisebb méretű lesz a szűk keresztmetszet.

• Előnye: Gyorsabb, mindegyik disket kvázi egyszerre tudja használni
• Hátránya: Ugyan akkora méretű diskek kellenek.

Concat

Diskek egymás után kötése. Ilyenkor vegyesen használhatunk, különböző méretű diskeket.

• Előnye: Vegyesen fűzhetünk össze diskeket és az össz méretet tudjuk kezelni.
• Hátránya: Lassabb, mert folyamatosan írja tele először az első disket, majd a következőt, és így tovább.

Globálisan a következőket mondhatjuk el a RAID0-ról:

• Több disket kapcsol össze, ezáltal gyorsítva vagy az írási/olvasási sebességet és egyesítve a tárhely kihasználtságot.
• Minimálisan egy disk szükségeltetik hozzá. Maximálisan pedig csak gyakorlati limite lehet, elméleti nem.

RAID1

Köznapibb neve a tükrözés. Ezáltal egész jól lehet definiálni mi is ez. Gyakorlatilag egyik disket tükrözi a másikra, és folyamatosan figyel arra, hogyha a változik valami az egyik disken azt a másikra is érvényesítse.

Minimálisan két disk szükségeltetik, maximálisan akármennyi lehet, de kettőnél több esetén a többit már SPARE diskként fogja kezelni. (Tradicionálisan csak a két utas tükrözésekről beszélünk, de gyakorlati megoldások már támogatják a három vagy több utas tükrözéseket).
Globálisan elmondható:

• Kétszer annyi tárterületre van szükség a tükrözés miatt, ami csak költség.
• Ha egyik disk meghal, a másikról akkor is elérhetőek az adatok.

SPARE DISK

RAID tömbökhöz tudunk SPARE (tartalék) diskeket hozzárendelni. Ezek a diskek nem lesznek használva, csak üresen, használatlanul fognak állni. Egészen addig, amíg egy hibatűrő RAID tömbben egy disk meghibásodik. Ekkor a RAID tömb automatikusan és azonnal kicseréli a SPARE diskként lévő tartalék lemezt a meghibásodotra, és elindítja a visszaépítést.
Tehát ezzel azt az időt nyerjük meg, amíg az adminisztrátor felfedezi azt, hogy a hibatűrő rendszerből kiesett egy tag és a következő kiesés már adatvesztéssel járhat. Ezek után az adminisztrátornak ki kell cserélni a hibás lemezt és elindítani a visszaszinkronizálást. Ha viszont SPARE disket használunk, akkor mire az adminisztrátor észleli a hibát a rendszer már vissza is állította magát újra hibatűrőre, és csak az inaktív hibás tagot kell kicserélni.

Ezzel nagyobb biztonságot nyerhetünk.

RAID5

A RAID5 egy újragondolása a RAID1 és RAID0-nek. Gyors, és takarékos megoldást akarunk, viszont hibatűréssel.
Minimálisan három disket kell használnunk, és megjelenik egy új fogalom a Paritás.
A paritás nem más, mint egy ellenőrző összeg. Nem más, mint olyan érték, amit úgy kapunk, meg, hogy az egy csíkon helyezkedő adatok értékét összegezzük. Ezáltal az összeg miatt kapunk egy hasonló egyenletet:

Disk1_csik1+Dis2_csik1+Disk3_csik1=Disk4_csik1

Hogy egy kicsit gyakorlatibbá tegyem, helyettesítsük be értékekkel:

10+23+12=35

Most, ha a fenti négy szám közül bármelyiket elveszem, akkor mindenki meg tudja mondani, hogy mi szerepelt ott, mert csak átrendezi az egyenletet. Mondjuk, kitakarom a 2. Disket, és annak az értékét tehát:
10+??+12=35

Ebből a RAID5 tömb ügyesen ki tudja számolni, hogy: 35-10-12=?? Azaz 23.
Ez az elve a RAID5-nek is.

A RAID5 egyetlen paritás bitet használ csíkonként, viszont minden csík esetében másik disken tárolja a paritást.

• Előnye: Gyors, és csupán egy disknyi területet vesztünk csak a redundancia miatt, cserébe egy tetszőleges disk kiesését tűri el.
• Hátránya: csíkozással dolgozik, tehát ugyan akkora méretű diskek kellenek.

RAID0+1 ÉS RAID1+0

Természetesen a RAID5 előtt kitalálták a RAID 0 és RAID 1 ötvözését. Mindkettőhöz négy-négy disk kell.

RAID0+1

RAID1+0

LUN

Tehát már ismerjük a azt, hogy milyen Storagek vannak, és azt is, hogy Storageken belül a nyers diskekből tetszőleges RAID tömböket tudunk kialakítani. Természetesen ezt mindhárom típusú Storage típus tudja. Ezzel viszont még mindig nem oldottuk meg azt, hogy nekünk az adott elérhető pool-ból (zsákból), csak egy tetszőleges méretű részt lehessen elkülöníteni.

Természetesen van rá lehetőség. A storagek mindegyike támogatja (természetesen a nyers disk odaadása mellett) azt, hogy lehessen csak egy szeletet kivágni és azt a Logikai UNIT-ot egy valóságos disknek láttatni kifelé.

A gazdaságosabb kihasználtság esetén szinte mindig LUN-okat osztunk ki a Storagekből. Ezek a LUN-ok csak egy Logikai részek, aminek van nevük, számuk, és méretük. Mivel csak logikaiak, ezért ha a pool-ban van még hely, nyugodtan bővíthetjük.
Természetesen egy LUN nem csak kisebb lehet mint az őt alkotó fizikai disk, hanem nagyobb is, akkor már a RAID tömb által kínált tárterületből fog táplálkozni.

HIBRID TECHNOLÓGIÁK

Ez, amit elmondtam mind-mind nagyon szép, de sok esetben nem fog senki ennyire szépen szétbontott technológiákkal találkozni.
Legtöbb esetben már kombinálják ezeket a technológiákat. Lesz egy doboz, amiben diskek lesznek, de annak lesz több féle csatlakozási pontja. Lesz rajta SCSI vagy USB (DAS), lesz rajta Hálózati port (NAS), és akár Fiber Channel port is (SAN).
Ilyenkor a Storage minden féle infrastruktúrába illeszthető természetesen akár egy időben, és több típusú tárhely szolgáltatást is el tud látni egy időben. Ez az, amit persze mindenki akar, minél költséghatékonyabban, egyszerűbben, és kevesebb adminisztrációval üzemeltetni.

iSCSI

Már megbeszéltük, hogy az SAN mennyire jó, csak ugye nagyon drága és speciális eszközök kellenek hozzá.
Kifejlesztettek egy költséghatékony protokollt is, ami a NAS-hoz hasonlóan, csak és kizárólag ethernet hálózatot és IP címeket igényel.
Ilyenkor a megfelelő TCP/IP csomagokba ágyazódnak a DISK utasítások.

Ahhoz, hogy iSCSI-t tudjunk beüzemelni tehát, kell két „gép”. Az egyik lesz a Storage, az iSCSI target, a másik a kliens, aki a tárterületet kapja iSCSI initiator.

Ahogy már beszéltük szükség van valamilyen címzésre. Sajnos a TCP/IP ethernet hálózat magát a fénykábelt szimulálja csak, ezért valahogy ezen a vonalon tudniuk kell, hogy ki kihez tartozik. Ezért kellett bevezetni az IQN neveket.

Ezek már egy kicsit bonyolultabb, de barátságosabb címzést vázolnak fel:

NÉZZÜNK TEHÁT PÁR TÉNYT, ELŐNYT, HÁTRÁNYT AZ ISCSI-VEL KAPCSOLATBAN

• NAS-okkal ellentétben DISK alapú tárhely kiajánlást tesz lehetővé, a NAS-oknál megszokott ethernet alapú, TCP/IP hálózaton.
• Az iSCSI egy softwares megoldás, nem szükségeltetik hozzá külön speciális hardware, habát léteznek iSCSI HBA-k. Ilyenkor az átviteli számítási teljesítményt nem a rendszert terheli, hanem ez a külön egység végzi.
• A hálózat terheltsége és vonal megbízhatósága sajnos könnyen befolyásolhatja a disk elérést