Szerver virtualizáció: Xen és DRBD

A virtualizáció ma már nem újdonság, sokkal inkább kikerülhetetlen, szükséges technológia. Kezdvea kisvállalati rendszerektől egészen a nagy felhő megoldásokig mindenhol jelen van. Az előnyei nyilvánvalóak: optimálisabb hardver kihasználás és jobb menedzselhetőség, magasabb rendelkezésre állás. Persze csak ha jól tervezett és jól kivitelezett rendszerről van szó.

Számos virtualizációs környezetből választhatsz. Megmaradva a szerver virtualizációnál is komoly a választék, legyen szó nyílt forrású, ingyenes vagy kereskedelmi megoldásokról. Linux környezetbenkét közismert szereplője van ennek a “piacnak”: a KVM és a Xen. Az utóbbi sokkal komolyabb múltra tekint vissza és igen népszerű. Az első olyan megoldás volt, mely még a processzorok virtualizációs támogatása előtt “paravirtualizációs” technikát nyújtva lehetővé tette a szerver virtualizációt.

A Xen rendszernek ugyan van kereskedelmi változata (mely ma már ingyenes) XenServer néven, az eredeti, nyílt forrású változata is rendületlenül fejlődik. Ez a Xen Project és a XenServer alapját is ez adja. A Xen Project által készített nyílt forrású megoldás megtalálható mindenvalamire való Linux disztribúcióban.

Az oktató videóból Ubuntu 14.04 LTS szerver környezetben tanulod meg a nyílt forrású Xen telepítését, a környezet beállítását és a virtuális gépek létrehozásának és menedzsmentjének alapjait. A képzés végére egy stabil, gyakorlati tudást szerzel és te magad is könnyedén fogsz tudni profi virtualizációs környezetet készíteni.

Amit kapsz 100% gyakorlat: az oktató megosztott képernyőjét látod, ahol lépésről lépésre megmutat mindent, amit el kell végezned. Mindezekhez részletes magyarázatot és a valós életből vett tapasztalatok alapján tippeket kapsz, hogy a buktatókat elkerülhesd.

A Xen Hypervisor nyújtotta lehetőségek tárháza hatalmas. Ahhoz viszont, hogy pár virtuális szervert működtess vele elég ennek egy kis részét ismerned. A szerver virtualizáció alapjai képzésen megtanultad az abszolút minimumot, ami ahhoz kell, hogy paravirtualizált Linux szervereket működtess, melyek a meglévő hálózatodhoz kapcsolódnak (“bridge mód”).

A folytatásban további alapvető, a valós életben gyakori feladatok megvalósítását tanulod meg. Egyrészt a HVM, tehát a hardveresen támogatott virtuális gépek létrehozását egyWindows Szerver telepítésén keresztül, másrészt a virtuális gépek védelmének alapjait egyszerű tűzfal szabályokkal. És ha már tűzfal szabályokról esik szó, akkor megtanulod acímfordítást is, hogy nyilvános IP címen működő szervernél egy címmel több szervert üzemeltethess (MASQUERADE és DNAT).

Végül, de nem utolsó sorban a legfontosabb: hogyan mentsd a virtuális gépeidet? Persze mentheted úgy, mint bármely fizikai hardveren futó szervered, de itt kézenfekvően adódik egy jobb lehetőség: mivel a virtuális gépek LVM kötetekre kerültek, a Linux LVM pillanatkép (snapshot) funkciójával könnyedén tudsz konzisztens mentéseket készíteni. Ennek egy egyszerű módját is megtanulod.

Közben persze újabb menedzsment lehetőségekkel és parancsokkal ismerkedsz meg, melyek segítenek a fentiek elvégzésében.

A magas rendelkezésre állás megvalósításához az adatok rendundáns tárolására is szükség van. Ennek egyszerű és olcsó megoldása a szoftveres RAID1-hez hasonló megoldás, a DRBD, mely ugyan azt végzi, csak két szerver között hálózaton: megadott partíciókon tárol adatok szinkronizálása. Az eredmény: bármely szerver működik, az adatok elérhetőek lesznek.

A megoldás felhasználható pl. redundáns fájlszerver készítésére: ha a fő szerver elromlik, a HA rendszer automatikusan elindítja a szolgáltatást a tartalék szerveren, ahol a DRBD-nek köszönhetően valós, aktuális adatok vannak.
Hasonlóan jól alkalmazhat virtuális környezetek magas rendelkezésre állásának kialakításához is (pl. Xen segítségével valós failover megoldás hozható vele létre).

A virtualizáció kiváló eszköz arra, hogy egy szerver erőforrásait okosan feloszd, a menedzsmentet egyszerűsítsd. Amit korábban több szerveren futtattál, az így biztonságosan megy egyen.

Ha viszont ez az egy szerver áll le, akkor a több szerveres megoldással szemben minden megáll. Ha pedig valami nagyobb gond miatt adatvesztés van, akkor minden adatnak “annyi”. Ez pedig komoly probléma és komoly érv a virtualizáció ellen.

Pedig a virtualizáció a rendelkezsére állásban is sokkal jobb, csak kell egy fürtözött rendszer (cluster), ami biztosítja, hogy egy gép kisése ne okozzon tartós szolgáltatás kisést, egy szerveren az adatok elvesztése ne okozzon valós adatvesztést (még mentésből se kelljen visszaállni).

A fürtözött rendszerekkel viszont az a gond, hogy a szükséges hardver nagyon drága: egy jó storage messze meghaladja egy egyszerű szerver árát. Tehát marad a több szerveres módszer? Nem. A jó hírem az, hogy van olcsó és megbízható megoldás!

A storage kiváltására kiváló eszköz a DRBD. A virtualizációra a Xen Hypervisor. A kettő pedig szuperül összehangolható: egy DRBD alapú hálózati “RAID-1 tükörre” téve a virtuális gépet, az könnyedén mozgatható a két szerver között: minden adat megtalálható mindkét gépen. Ha az egyik leáll, a másikon elindíthatod a virtuális gépet. Ha tervezetten állítod le, a virtuális gép futás közben migrálható a másik vasra.

Ebből az oktatóvideóból ennek a magas rendelkezésre állású környezetnek a kialakítását tanulod meg.

A magas rendelkezésre állású környezet akkor ér igazán sokat, ha az automatizált: hiba eseténnem neked kell a kiesett szolgáltatásokat kézzel indítanod a tartalék rendszeren, hanem az automatikusan megy.

Különösen igaz ez virtualizációs környezetekre, ahol a szolgáltatások a virtuális gépek. Ha már van egy Xen Hypervisor és DRBD alapú magas rendelkezésre álló környezeted, akkor ebből már könnyen készíthetsz clustert, ahol ha valamelyik szerverrel gond van, az addig ott működő virtuális gépek automatikusan elindulnak a másikon.

Az oktatóvideóból a Xen alapok, a DRBD alapok és a magas rendelkezésre állású virtualizációs környezet oktatóvideókban megtanultakra alapozva megismered a Corosync és Pacemaker cluster rendszerrel megvalósított HA-Cluster megoldást, melyben a Xen virtuális gépeid automatikusan “helyrejönnek”. Mivel a videóban a libvirt rendszeren keresztül kezeljük a Xen virtuális gépeket, az itt elhangzottak könnyedén átültethetőek más támogatott virtualizációs környezetre is (pl. KVM).

Course Instructor

Czakó Krisztián Czakó Krisztián oktató