Konténerek és DevOps | ULX
Ahogy a virtualizáció alakította át a nagyvállalati IT infrastruktúrák működését az ezredfordulót követően, úgy alakítja át a felhő és a konténerizáció a teljes vállalati IT működést napjainkban. A konténerizáció napjaink egyik legizgalmasabb és leginkább fókuszban lévő IT technológiája, ami nem véletlen. Számos előnnyel jár, nagy mértékben képes a meglévő erőforrások kihasználását hatékonyabbá tenni, illetve támogatja, elősegíti az egyre szélesebb körben használt vagy használni tervezett DevOps módszertanokat és működést. A konténerizáció, a konténer technológia igen távolról nézve egyfajta virtualizációs technológiának is tekinthető, azonban annál lényegesen könnyűsúlyúbb, kevésbé mereven izolált, aminek számos gyakorlati előnye van, többek között az erőforrások lényegesen hatékonyabb kihasználására (az alkalmazás sűrűség a konténerek használata esetén legalább egy nagyságrenddel magasabb, mint a klasszikus virtuális gépek esetén) vagy platformok és környezetek közötti hordozhatóság, ami napjaink egyre inkább felhő alapú környezetei esetén egy meghatározó tényezővé válik.
A konténerek használata az informatika világában nem új keletű, alkalmazásuk már a 70-es évek végén elkezdődött (a unix chroot bevezetésével), habár kezdetben a konténerek használatának legfőbb szempontja a az izoláció és a rendszerszintű folyamok elhatárolása volt (elsősorban biztonsági szempontok alapján).
A modern értelemben vett, nyílt konténerizációs megoldásokat a Docker technológia 2013-as megjelenése hozta el. A Docker alapjaiban nem jelent lényegesen mást, mint a korábban megjelent konténertechnológiák, azonban a konténer-technológia időközben olyan kiegészítésekkel bővült, amelyek a működését függetlenebbé és teljesebbé tették, ezáltal a konténerek használata széles körben elterjedt és gyakorlatilag ipari szabvánnyá vált. A Docker köré létrejött egy olyan ökorendszer, például a DockerHub vagy a Kubernetes alapú konténer orkesztrációs megoldás, amelyekkel a Docker használata immár nem csak a fejlesztői közösség, hanem a nagyvállalati igényeket is képes volt kiszolgálni, így a Docker áttörte azokat a határokat, amelyek a nagyvállalati alkalmazását esetlegesen gátolták.
A Kubernetes (és természetesen az abból származtatott más megoldások, így az OpenShift) létrejöttét és elterjedését az indokolta, hogy az egyszerű Docker alapú konténerek ugyan választ adtak számos technológiai kérdésre (pl. hatékonyság, hordozhatóság), azonban a vállalati alkalmazás egyéb fontos szempontjait az egyszerű konténer nem kezeli. Ezekre a kérdésekre (magas rendelkezésre állás, orkesztráció, felhasználókezelés, terheléselosztás, kifinomult hálózatkezelés, integráció) egy olyan eszköz szükséges, ami a konténereket, mint technológiát vállalati platformmá alakítja és ezt a platformot (konténer platform) technológiai szinten a Kubernetes teremtette meg. Nem véletlen, hogy a Kubernetes létrehozása a Google nevéhez fűződik, ahol idejekorán rájöttek arra, hogy az elosztott, nagy számú konténerre épülő Google (konténer)infrastruktúra kezelése nem valósítható meg hatékonyan olyan eszköz nélkül, ami képes ezen konténerek létrehozásának és életciklusának teljes kezelésére, a konténerekre épülő szolgáltatások felépítésére (konténer orkesztráció) és a teljes konténer alapú infrastruktúra működésének támogatására (hálózat, storage stb.)
A Kubernetes, azon túlmenően, hogy igen széles körben elterjedt és ipari szabványnak tekintett konténer-orkesztrációs platform, rendelkezik néhány olyan hiányossággal, amelyeket egy vállalati implementáció során pótolni kell. A Kubernetes egy csupasz konténer-orkesztrációs eszközként fogható fel, amelyet tényleges használat során legalább a következő komponensekkel még ki kell egészíteni:
Szükséges operációs rendszer (jellemzően Linux) a komponensek és környezetet futtatásához
Konténerek futtatására szolgáló engine (például Docker)
Hálózatkezelés (software defined network)
Terheléselosztó (load balancer) és forgalomirányító (routing) komponens
Monitorozás és dashboard funkciók
A Kubernetes fenti hiányosságainak kiegészítésére hozta létre a Red Hat (a Kubernetes technológia Google-t követő legjelentősebb fejlesztője és kontribúrora) a Red Hat OpenShift Container Platform szoftvermegoldását, ami teljeskörű választ ad a Kubernetes technológia vállalati alkalmazására, piacvezető pozícióba helyezi a Red Hat OpenShift-et a nagyvállalati alkalmazásplatform és konténet-menedzsment terchnológiák területén.
Amennyiben érdekli a Red Hat OpenShift Container Platform techológia, a platform biztosította képességek és szolgáltatások, további információkat talál a termék rövid ismertetőjében.