A konténerkezelő platformháború nyertese a Kubernetes

Most induló cikksorozatunkban arra vállalkozunk, hogy egy egyszerű, háromrétegű, mikroszolgáltatásokon alapuló alkalmazás segítségével bemutatjuk, hogyan juthatunk el egy “hagyományos” alkalmazás konténerekbe szervezéssétől annak Kubernetes clusterben történő üzemeltetéséig.

Az informatikában szerzett közel két évtizedes tapasztalatunk alapján úgy látjuk, hogy agilis szervezetként működve hiába készülünk el gyorsan egy fejlesztéssel, valódi üzleti érték akkor keletkezik, ha az elkészült terméket rövid idő alatt kis csomagokba tudjuk szervezni, majd ezeket a csomagokat élesíteni, skálázni, frissíteni és üzemeltetni.

Szerencsére az IT világ – hasonló indíttatásoktól vezérelve – a 2010-es évek elejétől elkezdte elkészíteni azokat az eszközöket, amelyek megoldást nyújtanak a fenti problémákra, az értékteremtés folyamata így nem lassul le.

Az első nagy mérföldkő a szoftverkomponensek konténerekbe szervezése volt. Ennek élén a Docker technológia áll. (Lásd erről szóló korábbi cikksorozatunkat.) Konténerek segítségével egységesíthetőek az egyes elemek, ezek könnyen tárolhatóak, verziózhatóak és mozgathatóak.

A szoftverek és az alattuk felépített infrastruktúra komplexitása napról napra egyre nő. A konténerekbe szervezés ugyan sokat segít, ez azonban újabb kihívásokat jelent: konténerek tömegeit kell gyorsan, biztonságosan kezelni.

Ezt angolul “orchestration”-nak hívjuk, vagyis ahogyan egy karmester vezényli az egyes hangszereket a hangversenyen, ugyanúgy egy konténerek tömegeit kezelő szoftver központi “karmesterként” vezérli, hogy melyik konténer hány példányban hova kerüljön, hogyan skálázódjon.

Mint megszoktuk, az IT világ erre a problémára is nem egy, hanem egyszerre több megoldást nyújt, így a konténereket központilag kezelő megoldásra is több eszköz létezik.

A platformháború azonban eldőlni látszik. Az egyik legnépszerűbb és legjobban támogatott multicloud megoldás a Kubernetes.

A K8s-nek is rövidített megoldás egy nyílt forráskódú, szabadon elérhető és felhasználható rendszer, mely a konténerek tömeges kezelését, skálázását és automatikus szállítását oldja meg.

Ahogyan a Wikipedia oldalán is olvashatjuk: A Kubernetes egy automatikus csomagmozgatást segítő platform, amely a konténerekbe szervezett szoftverek skálázását, telepítését és felügyeletét oldja meg tömeges hoszt-okon.

Most induló cikksorozatunkban arra vállalkozunk, hogy egy egyszerű, háromrétegű, mikroszolgáltatásokon alapuló alkalmazás segítségével bemutatjuk, hogyan juthatunk el egy “hagyományos” alkalmazás konténerekbe szervezéssétől annak Kubernetes clusterben történő üzemeltetéséig.

Mindezt úgy, hogy minden lépést a saját PC-den is kipróbálhatsz a helyben futtatható Minikube alkalmazás segítségével.

Ha azt hiszed, hogy ez nagyon időigényes és túl bonyolult feladat, azt már most elárulom, hogy nagyjából három óra alatt elsajátíthatóak a Kubernetes használatának alapjai. Tarts velünk!