Kubernetes: Első lépések

Tárolóalapú alkalmazások üzembe helyezése és felügyelete – első lépések

A tárolók ismertetője

A Kubernetes használatba vétele előtt fontos megismerkednie a tárolókra bontás működését.

Ugyanúgy, ahogy a szállítási iparágak fizikai tárolókkal különítenek el különböző szállítmányokat egymástól a hajókon, vonatokon, kamionokon és repülőgépeken, a szoftverfejlesztési technológiák is egyre szélesebb körben alkalmazzák az úgynevezett tárolókra bontási stratégiát.

Egy szoftvercsomag – más néven tároló – egy alkalmazás kódját egyesíti a kapcsolódó konfigurációs fájlokkal, címtárakkal és az alkalmazás futtatásához szükséges függőségekkel. A fejlesztők és informatikai szakemberek így gyorsabban és biztonságosabban hozhatnak létre és helyezhetnek üzembe alkalmazásokat.

A tárolókra bontás elkülönítést, hordozhatóságot, rugalmasságot, méretezhetőséget és könnyebb vezérlést nyújt egy alkalmazás teljes életciklusának munkafolyamatában. Az üzemeltető operációs rendszertől elvolt tárolók önállóan is működnek, és hordozhatóbbá válnak, így bármilyen platformon vagy felhőben futtathatók, infrastruktúrától függetlenül egységes és konzisztens módon.

Kubernetes-összetevők és -fogalmak

A fürt

A Kubernetes a legmagasabb szinten virtuális vagy helyszíni gépek fürtjeinek összessége. Ezek a gépek (más néven csomópontok) számítási, hálózati és tárolási erőforrásokon osztoznak. Minden fürt rendelkezik egy főcsomóponttal, amely egy vagy több munkavégző csomóponthoz csatlakozik. A munkavégző csomópontok felelnek a tárolóalapú alkalmazások és számítási feladatok (más néven podok) csoportjainak futtatásáért, a főcsomópont pedig azt kezeli, hogy mely podok mely munkavégző csomópontokon futnak.

A Kubernetes áttekintése

A vezérlősík

Ahhoz, hogy a főcsomópont kommunikálhasson a munkavégző csomópontokkal – illetve a felhasználók kommunikálhassanak a főcsomóponttal –, a Kubernetesnek bizonyos objektumokkal kell rendelkeznie, amelyek együtt kiteszik a vezérlősíkot.

A fejlesztők és az operátorok elsődlegesen a főcsomóponton keresztül, a kubectl, a helyi operációs rendszert telepítő parancssori felület segítségével használják a fürtöt. A kubectl-lel a fürtnek kiadott parancsok a kube-apiserverhez érkeznek, amely a főcsomóponton található Kubernetes API. A kube-apiserver ezután a főcsomópontban található kube-controller-managernek továbbítja a kéréseket, amely a munkavégző csomópontok műveleteinek kezeléséért felel. A főcsomópont parancsait a munkavégző csomópontok kubeletje fogadja.

Alkalmazások és számítási feladatok üzembe helyezése

A Kubernetes használatba vételének következő lépése az alkalmazások és számítási feladatok üzembe helyezése. A főcsomópont mindig az etcd-ben tartja fenn a Kubernetes-fürt aktuális állapotát és konfigurációját, amely egy kulcsértéktároló adatbázis. Podok tárolóalapú alkalmazásokkal és számítási feladatokkal való futtatásához új kívánt fürtállapotot kell megadnia egy YAML-fájlban. A kube-controller-manager a YAML-fájl alapján megbízza a kube-schedulert azzal, hogy döntse el, az előre meghatározott korlátozások alapján az alkalmazás vagy számítási feladat mely munkavégző csomópontokat futtassa. A kube-scheduler az egyes munkavégző csomópontok kubeletjével együttműködve elindítja a podokat, figyeli a gépek állapotát, és általánosan felelős az erőforrás-kezelésért.

A kube-scheduler működésének megtekintése

Kubernetes-környezetben az Önáltal megadott kívánt állapot az etcd aktuális állapota. Ez azonban nem jelenti azt, hogy a korábbi állapot elvész. A Kubernetes támogatja a visszaállításokat, a működés közbeni frissítéseket és a kibocsátások szüneteltetését. Az üzembe helyezések emellett ReplicaSeteket használnak a háttérben, és ezekkel gondoskodnak arról, hogy az azonos módon konfigurált podok megfelelő számban futnak. Ha egy vagy több pod leáll, a ReplicaSet lecseréli. A Kubernetes tehát ilyen formában önjavító.

Kubernetes-környezetek strukturálása és biztonságossá tétele

Az alkalmazás vagy számítási feladat üzembe helyezése után a Kubernetes használatba vételének utolsó lépésé ezek rendszerezése, valamint annak megállapítása, hogy kik és mik férhetnek hozzájuk. Névtér (a Kubernetes egy csoportosítási módszere) létrehozásával szolgáltatások, podok, vezérlők és kötetek számára teheti lehetővé, hogy könnyen együttműködjenek, miközben elkülönítve tartja őket a fürt többi részétől. A Kubertnetes névtereivel emellett konzisztens konfigurációkat alkalmazhat az erőforrásokra.

A konfigurációkezelés működésének megtekintése

Minden munkavégző csomópont tartalmaz egy kube-proxyt, amely meghatározza, hogy a fürt különböző elemei hogyan érhetők el kívülről. Bizalmas, nem nyilvános adatokat – például tokeneket, tanúsítványokat és jelszavakat – tárolhat titkos kódokban, amelyek futtatásig titkosított Kubernetes-objektumok.

A titkos kódok kezelésének megtekintése

Végül a szerepköralapú hozzáférés-vezérléssel (RBAC) megadhatja, hogy ki láthatja és használhatja a fürt egyes részeit, illetve ezek hogyan működhetnek együtt.

A szerepköralapú hozzáférés-vezérlés működésének megtekintése

A Kubernetes technikai adatainak részletes megismerése

A Kubernetes dokumentációjának megtekintése

Teljes mértékben felügyelt Kubernetes-megoldás létrehozása

Üzemeltetett Kubernetes-környezetét az Azure Kubernetes Service-szel (AKS) kezelheti. Tárolóalapú alkalmazásokat helyezhet üzembe és tarthat fenn tárolóvezénylési tapasztalat nélkül. Erőforrásokat építhet ki, frissíthet és méretezhet igény szerint anélkül, hogy offline módba helyezné az alkalmazásokat.

Kubernetes – rövid útmutató: működésbe helyezés 50 nap alatt

Ezzel a részletes útmutatóval használatba veheti a Kubernetest, és gyakorlati tapasztalatot szerezhet a Kubernetes-összetevőkkel, -funkciókkal és -megoldásokkal kapcsolatban.

Ha készen áll, kezdheti – a Kubernetes ingyenes próbája az Azure-on