Miért foglalkozzunk virtualizációval? Végül is a számítógépek egyre olcsóbbak.
Másrészt pedig ott vannak a virtualizáció iránt rajongók, akik négy virtuális gépet futtatnak desktopjukon, és ugyanazt érzik a virtualizációval kapcsolatban, mint néhány éve a színes monitorral vagy a hangkártyával kapcsolatban, vagyis, hogy enélkül már nem képzelhetik el a számítástechnikát, ugyanakkor nem igazán tudják megmagyarázni, hogy másoknak miért kellene a virtualizációval foglalkozniuk. Ez a cikk azt járja körül, hogy egyesek miért akarják a virtualizációt alkalmazni, és másoknak miért van mindenféleképpen szüksége rá.
Konszolidáció
A virtualizáció leggyakoribb alkalmazása a konszolidáció, vagyis több teher egy fizikai gépre való összpontosítása. Ez lehetővé teszi, hogy több virtuális gép kevesebb fizikai gépen fusson.
De a számítógépek mára olcsók..
Lehet, hogy a számítógépek olcsók, de a sok számítógép ára és költségei összeadódnak. Ha megnézünk egy mai adatközpontot, akkor ott annyi számítógép van, hogy szó szerint nincs hely további gépekkel való bővítéshez, és a futtatáshoz szükséges áram, illetve a légkondicionálás is a határain van. Azonban, mivel a többmagos processzorok és az 1 GB-os RAM modulok olyan alacsony költségűek, a legtöbb szerver a kapacitásának csak 10-20%-át használja ki.
Tehát az adatközpontban már nincs hely, de a szerverek szinte üresjáratban működnek. Ha egy IT részleg jobban terhelni akarja a szervereit, akkor új adatközpontot építenek, vagy pedig a létező szerverek kapacitását használják ki?
Amíg van szabad hely az adatközpontban, addig könnyű az új gépek hozzáadása. Azonban, ha már nem fér több, akkor az IT menedzsmentre nehéz munka vár annak során, hogy meggyőzzék a felső vezetést az új adatközpont építéséről.Ezt még az is nehezíti, hogy nem is biztos, hogy az áramellátás elegendő. Nem tehetjük meg ugyanis, hogy egyszerűen csak ráterhelünk egy 5MW-os adatközpontot az áramhálózatra. A virtualizáció egy viszonylag egyszerű megoldást kínál. Ha megtelik az adatközpont, akkor el lehet kezdeni a szerverek kihasználását.
Hardverizoláció
A hardverek egyre gyorsabbak. Azonban a teher új szerverre való mozgatása megkívánja egy operációs rendszer az új szerverre való telepítését és az alkalmazás futtatásához szükséges konfigurálását. Azután az alkalmazás adatainak másolása történik, és csak reménykedhetünk, hogy minden változatlan formában továbbra is működik.
A virtuális gépeknek nem kell ezzel foglalkozniuk, mivel nem lépnek interakcióba a tényleges fizikai hardverrel. A gazda operációs rendszert telepítjük az új szerverre, aztán pedig átmásoljuk a virtuális gépet teljes egészében. Nincs szükség az alkalmazásokat futtató operációs rendszer konfigurálására, mivel az a virtuális gépen belül van.
Régebbi operációs rendszerek
A probléma sokkal nagyobb, ha régebbi operációs rendszerről van szó. Igen, pont arról, ami a kritikus adatbázist futtatja. Ha nincs szerencsénk, akkor ez a régebbi operációs rendszer nem indul el a négymagos processzoron. Ha bármilyen adatközpontot megnézünk, akkor láthatjuk, hogy mindig van egy olyan kritikus alkalmazás, ami régi hardverhez van kötve, mivel régi operációs rendszeren fut.
Nem lenne jó, ha varázslatos módon futna ez a régi operációs rendszer az új hardveren?
Ez lehetséges a teljes virtualizációval, mint például a VMware bináris újraírás módszerével vagy a Xennel illetve a KVM-mel Intel VT vagy AMD-V processzorok esetén. Ez működik, mivel a virtualizációs réteg emulálja az egyszerű hardvert, így az nyolcmagos processzor úgy néz ki, mint egy régebbi 8 processzoros rendszer, csak éppen gyorsabb processzorral. Már nem jelenthet problémát a többmagos ACPI eszköz felfedezése és interrupt routolása, valamint a 10 GB Ethernet vagy a SATA támogatás sem.
Igaz, hogy a virtualizáció jelentős többletterhet is eredményezhet. Azonban, mivel a virtualizációs szoftver emulálja az egyszerű hardvert, talán abban is segít a virtualizáció, hogy sokkal gyorsabb hardveren futtassuk a régi operációs rendszert, mint ami olyan hardverből elérhető lenne, amin a régi operációs rendszer natívan el tudna indulni. Ez talán még az áramszámlát is csökkenti…
Tesztelés
A teszthardverekből mindig hiány van. A virtualizáció lehetővé teszi a tesztelőknek, hogy alacsony prioritású virtualizációs gépeket hozzanak létre tesztelésre. Ez azt teszi lehetővé, hogy a fejlesztő saját desktop konfigurációjának tönkretétele helyett egy virtuális gépen futtassa a legújabb, tesztelésre váró szoftvereket. Adjunk a fejlesztőknek megfelelő mennyiségű virtuális tesztgépet, hogy ne kelljen egymásra várniuk a tesztelés megkezdéséhez.
Karbantartás
A virtuális gépek migrációjával – mint például a Vmware vmotion vagy Xen live migration – lehetséges a virtuális gépek futás közbeni, egyik rendszerről a másik rendszerre való mozgatása. Akármennyire hihetetlen,ez nem csak a barátok ámulatba ejtésére való. Sok olyan szituáció van, amikor a virtuális gépet egy másik fizikai gépre akarjuk mozgatni. Például:
Hardverhiba: például ha a processzor hűtőventilátora elromlik, a processzor lefojtja magát és nagyon lassan fut. Mozgassuk a virtuális gépeket egészséges rendszerekre és javítsuk meg a hardvert, mindezt az alkalmazások leállása nélkül!
Terhelésmegosztás: ha az ügyfelünk virtuális webszervere túlterheltté válik, távolítsunk el más ügyfelek néhány virtuális gépét ugyanarról a hosztról, így elég lesz a kapacitás a nehezebb teher kezelésére az ügyfél webszerverén.
Rugalmas karbantartási ablak: ha szeretnénk a processzorokat nappal kicserélni (pl. upgrade), de nem tudjuk az alkalmazásokat leállítani, mert éppen használják őket, akkor a live migration segítségével migráljuk a virtuális gépeket minden fizikai rendszerről mielőtt végrehajtjuk a tevékenységet.
Fogyasztásmegtakarítás
Gondoljunk csak a webszolgáltatást nyújtó gépek csoportjára! Ezek nem egész nap foglaltak. Csúcsidőben, például reggel 9-től délután 5-ig teljes kapacitással dolgoznak, de este 10-től reggel 6-ig kapacitásuk talán csak 10%-át használják ki. Az IT alkalmazottak jelentősen lecsökkenthetnék a használt áram mennyiségét, ha a virtuális gépeket migrálnák, így csúcsidőn kívül a gépek 90%-a le lehetne kapcsolva. Ha az 5 MW-os gépterem 0,5 MW-on futna a nap akár csak egyharmadában, ez is nagy megtakarítást jelentene.
Biztonság és teljesítményizoláció
A különböző alkalmazások saját virtuális gépükön való futtatása azt jelenti, hogy ha nem működik az egyik alkalmazás megfelelően, például túl sok memóriát használ, a többi alkalmazás működését ez nem befolyásolja, azaz például nem íródik ki a cserepartícióra. Vagyis ez az egy, nem megfelelően működő alkalmazás lassan fut (amúgy is lassan futna), míg a többi alkalmazás úgy működik, mintha mi sem történt volna.
Ugyanez történik, ha az alkalmazások kompromittáltak lesznek, így csak az a virtuális gép (vagy annak a része) lesz a támadó áldozata. Amíg a virtuális gépek jól el vannak szigetelve egymástól, addig a többi virtuális gép biztonságban van; ez tipikusan jellemző mindazon virtualizációs technológiára, ahol minden virtuális gép a saját rendszermagját futtatja.
Az olyan technológiák, mint például a Linux VServer, Virtuozzo/OpenVZ és Solaris Zones tipikusan alacsonyabb szintű izolációt nyújtanak, de cserébe az alacsonyabb költségekért és a sokkal rugalmasabb erőforrás-kihasználásért.