Technology

Vmw_Tanzu.jpg
Forrás: VMware
A sokoldalú konténer

Egyenes út vezet a virtuális gépektől a konténerekig

A világ adatközponti munkaterhelésének jelentős hányada virtuális gépeken fut. A következő 5-10 évben a helyüket egyre nagyobb arányban veszik majd át a konténerek és a konténerekben futó alkalmazások. A jó hír az, hogy a két világ között zökkenőmentesen megvalósítható az átállás.

Ha ismerkedni akarsz a konténerekkel


A VMware egy ingyenes változatban is elérhetővé tette Tanzu termékét: ez a Tanzu Community Edition, a TCE. Ez mindazokat a nyílt forráskódú szoftvereket tartalmazza, mint a kereskedelmi kiadások, funkcionalitásában pedig megegyezik a TKGm verzióval.

Ugyanakkor teljesen szabadon hozzáférhető, ingyen, rejtett költségek nélkül letölthető, nem tartalmaz időbeli vagy a felhasználási módra vonatkozó korlátozásokat. Egyedül professzionális támogatás nem jár hozzá, de a Kubernetes közösségen keresztül az is elérhető. A szoftver percek alatt letölthető és használatba vehető (néhány szoftverkomponens, például Docker futtató, kell hozzá). A VMware elsősorban azoknak ajánlja, akik ismerkedni szeretnének a technológiával, vagy csak ki akarják próbálni lehetőségeit. A TCE futtatható saját munkaállomáson, a vSphere-ben, illetve az AWS-en és az Azure-ban is.

A konténerizáció az utóbbi évek egyik nagy slágere az alkalmazások telepítése és működtetése terén. Nem véletlenül, hiszen mindazokat az előnyöket kínálják a hagyományos alkalmazásfuttatással szemben, mint amelyeket a konténeres áruszállítás a hagyományos szállítással szemben.

Felrobbantott monolitok

A klasszikus vállalati alkalmazások monolitikus megközelítéssel készültek. Minden funkció, az üzleti logikától az adatbázis-elérésen át a kezelőfelületig egyetlen nagy alkalmazástömbbe lett belekódolva. Az igények egyre gyorsuló változása azonban rugalmasabb működést, gyorsabb, egyszerűbb fejlesztést követel meg az alkalmazásoktól. A nagy szoftvermonolitokat szétrobbantják, a helyükbe pedig kisebb, önálló, de egymással összekapcsoltan működő alkalmazásdarabkák lépnek – ez lesz a mikroszervíz alapú megközelítés. Az egyes mikroszervizek külön (akár más-más nyelven) fejleszthetők, egymástól függetlenül tesztelhetők, állíthatók üzembe, méretezhetőek vagy akár lecserélhetőek, hangzott el a VMware e témában rendezett webinárján.

Az architektúra legfőbb előnye a nagyfokú rugalmasság: egyetlen funkció módosításához, továbbfejlesztéséhez nem kell a teljes alkalmazást lecserélni, elég az adott mikroszervízhez hozzányúlni, akár működés közben is. Így sokkal gyorsabban adhatók ki új verziók, könnyebb a funkcionalitás megújítása vagy az esetleges hibák kijavítása.

Takarékosabb, mint a virtuális gép

A mikroszervíz architektúrájú alkalmazások önmagukban is működőképes csomagként készülnek el – ezek a már említett konténerek. A konténer voltaképpen egy teljes alkalmazás, annak minden paraméterével és szükséges kiegészítőjével, egyetlen futtatható állományban. Használatához nincs szükség telepítésre, a telepítés során konfigurációra, csupán el kell indítani.

A szoftveres konténer számos tekintetben hasonlít az áruszállításnál használt konténerre. Szabványos csomagot képez, amelybe bármilyen áru elhelyezhető, majd költséghatékony módon szállítható, akár hajón, akár vonaton, akár teherautón. A konténerizált alkalmazások is könnyen egymás mellé pakolhatók (megszűnik az egymástól való függőségük), és bármilyen eszközön futtathatók, a laptoptól a saját adatközponton át a nyilvános felhőig.

A virtualizáció is függetlenedést ígért a hardvertől, de a konténerek egy lépéssel még tovább mennek. Minden virtuális gép saját operációs rendszert igényel, ez pedig komoly többletterhet jelent mind informatikai erőforrásokban (CPU, RAM), mind a menedzsment terén. Egyetlen operációs rendszer több konténert is ki tud szolgálni, és ez ráadásul lehet egy külön erre a célra kialakított, speciális OS is. Ahogy a VMware szakértője a webináron elmondta, azon a hardveren, amelyen 60 virtuális gép működtethető, akár 250 konténer is futtatható.

Egy karmester két zenekarhoz

A megszokás persze nagy úr: amíg a virtualizáció (és azon belül a VMware technológiája) már évtizedes múltra tekint vissza, így a vállalatoknál is rendelkezésre áll a szükséges szakértelem, a konténerekkel még kevesen és keveset foglalkoztak. Ezért is tartja fontosnak a VMware, hogy minél inkább megkönnyítse az átjárást a két megközelítés között.

Erre azt a megoldást választotta, hogy az egyik legnépszerűbb nyílt forráskódú konténermenedzsment rendszert, a Kubernetest, integrálta saját vSphere virtualizációs megoldásával. A Kubernetes amolyan karmesterként végzi a konténerek létrehozását, összekapcsolását és felügyeletét, miközben képes az automatikus méretezésre (terhelés függvényében újabb és újabb, ugyanolyan funkciójú konténerek üzembe állítására) és a terhelés megosztására.

A Kubernetes azonban még csak egy váz, amelyet számos egyéb elemmel kell kiegészíteni: ki kell találni, hogy milyen platformon, hálózaton használják, miként lesz a tárolás, a mentés. Minderre szó szerint ezernyi megoldás érhető el a neten, és informatikus legyen a talpán, aki közülük ki tudja választani a megfelelőt. Ezt a feladatot végezte el a VMware, amikor megalkotta a Tanzut: ez egy teljes, működőképes Kubernetes-környezet, benne kipróbált, már sokszor bevált elemekkel.

Integráltság és testre szabhatóság

A különféle igényekhez a VMware többféle változatban is elérhetővé tett a Tanzut, illetve azon keresztül a Kubernetes-ökoszisztémát.

vSphere with Tanzu Ez a legegyszerűbb megoldás azok számára, akik már rendelkeznek vSphere-rel, és szeretnének gyors megoldást a Kubernetes futtatására. Az adminisztrátorok a VMware-ből már jól ismert eszközt és felületet használva tudják bekapcsolni a beépített Kubernetes szolgáltatást és ugyanitt definiálhatják a felhasználás kereteit, így a betanulási idő minimálisra csökkenthető.

Kétféle üzemmódja van ennek a verziónak. Amennyiben a felhasználó rendelkezik NSX-szel, úgy tud natív (az ESX szervereken közvetlenül futó) pod-okat indítani. Itt szorosan integrálva lett a virtualizáció és a konténerizáció; emiatt viszont némileg korlátozottak a felhasználási lehetőségek: ott hasznos, ahol nagy teljesítményre vagy menedzsment funkciók ellátására van szükség.

A másik üzemmód a Tanzu Kubernetes Grid Services (TKGs) névre hallgat. Ennek működéséhez nincs szükség NSX-re (de ha van, akkor a felhasználó élvezheti annak előnyeit). Felépítése, működése nagyjából megegyezik az előző verzióéval; a legnagyobb különbség, hogy teljes értékű Kubernetes clustereket tud indítani, és a konténerek vezérlésére (control plane-ként) teljes értékű virtuális gépeket használ. Így közelebb áll a szokványos Kubernetes környezetekhez, és a konténerek telepítését sem kell manuálisan végezni, azt megoldja a vSphere.

Nem csak az adminisztrátorok járnak jól a vSphere with Tanzu-val. A DevOps-os kollégák a már megszokott Kubernetes API-k és parancsok használatával alakíthatják ki a natív pod-okat (ha van NSX) vagy a teljes értékű Kubernetes clustereket (TKGs), és fogyaszthatják a környezetet önkiszolgáló módon.

A vSphere with Tanzu-val létrehozott és futtatott Kubernetes környezetek teljes mértékben igazodnak a nyílt forráskódú változathoz. Ennek megfelelően a bennük futó konténerek könnyedén átrakhatóak és indíthatóak más open-source, vagy azzal kompatibilis, de fizetős Kubernetes rendszeren.

Tanzu Kubernetes Grid Multicloud (TKGm) A nevében benne van, hogy elsősorban miben tér el az előző két verziótól: nem csak on-premise, hanem felhőben is futtathatók vele a Kubernetes clusterek. A működtetésre használható a VMware cloud on AWS, az Azure VMware Solution, valamint a natív AWS és Azure (és hamarosan a Google felhője is). Nemcsak ebben kínál mást, többet, mint a TKGs, hanem abban is, hogy teljesebb kontrollt biztosít a Kubernetes környezet felett. Ezzel az iparági sztenderdekkel mindenben kompatibilis clusterek hozhatók létre, így megfelelőbb választás lehet, ha külső kiegészítőket akarunk használni vagy jobban ki akarjuk használni a testreszabási lehetőségeket. A TKGm emellett a Windows konténerek és az IPv6 használatát is támogatja.