A Kubernetes a legnépszerűbb nyílt forráskódú szoftver, amely automatizálja a konténerfejlesztési folyamatokat.
A Cloud Native Computing Foundation (CNCF) éves tanulmánya szerint a szervezetek 96%-a vagy K8-at használ, vagy fontolgatja azok használatát. Ha figyelmesen követi, világszerte 5,8 millió fejlesztő használja a Kubernetes-t, és ez a háttérfejlesztők 31%-a világszerte.
Előnyben részesítendő, mert képes kihasználni a technológiát a jobb skálázhatóság, rendelkezésre állás és rövid üzembe helyezési idő révén. Míg sok fejlesztő elindítja a konténerek pályáját a Dockerrel (egy átfogó eszköz, amely a CLI-re támaszkodik a konténerekkel való interakcióhoz, egyenként), a K8s magas szintű absztrakciókat biztosít, amelyek segítségével vázlatosan határozhatja meg az alkalmazásokat és azok infrastruktúráját. együttműködhetsz.
Ha még nem ismeri a Kuberneteset, ezt a cikket kifejezetten úgy állítottuk össze, hogy segítsen a bevezető szakaszokon, és megosszon ismereteket az induláshoz. Megtudhatja, hogy a K8s hogyan segíthet Önnek fejlesztőként digitális termékei feltöltésében.
Tartalomjegyzék
Mi az a Kubernetes, és miért van szüksége rá?
A Kubernetes egy nyílt forráskódú koordinációs motor (keretrendszer), amelyet a konténeres alkalmazások telepítésének, méretezésének és kezelésének automatizálására használnak; ide tartozik a kiszámíthatóság és a rendelkezésre állás kezelése.
Egyszerűen fogalmazva, gondoljunk egy olyan alkalmazásra, amelyet konténerbe helyezett. Az alkalmazás felhasználóinak kiszolgálásához több tárolót kell futtatnia. Aggodalomra ad okot, amikor kezelni kell ezeket a tárolókat. A tartályok nem feltétlenül ugyanazon a gépen vannak, ami bonyolultabbá teszi a dolgot. Szóval, mi a megoldás erre a problémára?
A Kubernetes segítségére lesz azáltal, hogy hatékony módszert biztosít ezen folyamatok zökkenőmentes kezelésére. Bár a K8-asokat egy konténermotorhoz, például a Dockerhez hasonlíthatja, ez egy konténer hangszerelő. Kezdő fejlesztőként nem kell aggódnia amiatt, hogy a K8s hogyan végzi a hangszerelést. Valószínűleg nem fog K8s-fürtöt beállítani az alkalmazásához; erről hamarosan bővebben.
Ugyanakkor kapcsolatba léphet az infrastrukturális csapata által létrehozott fürtökkel. Kulcsfontosságú, hogy megismerkedjen azokkal a tárgyakkal, amelyekkel kapcsolatba kerül. De mielőtt ezt megtenné, magas szintű ismerete szükséges az architektúrájáról, hogy megértse, mi történik alatta.
A Kubernetes jellemzői
A Kubernetes számos olyan funkcióval rendelkezik, amelyek széles körű képességekkel rendelkeznek a konténerek és más kapcsolódó infrastruktúra futtatásához. Íme egy lista:
Kubernetes építészet
A Kubernetes architektúra lényegében egyetlen fő csomópontból és két dolgozó csomópontból áll. A mester csomópont meghívja a fürtben lévő felvételeket, míg a dolgozó (szolga) csomópontok a mester döntése szerint futtatják az alkalmazásokat.
Forrás: kubernetes.io
Itt van egy további bontás.
A fő csomópont(ok)
A főcsomópont diktálja a fürt állapotait, és meghatározza az egyes csomópontok műveleteit. A fő csomópont beállításához számos folyamat szükséges.
Az összes klaszterkommunikáció itt alapul. Ez az átjáró, amely lehetővé teszi az összes fürtkomponens számára az információcserét. Felfedi a Kubernetes API-t. Két főszerep van itt. Az első egy belépési pont, amely lehetővé teszi a felhasználók számára, hogy kapcsolatba lépjenek a fürttel. Például kérések küldése Kubectl használatakor. Másodszor, kapuőrzés a kérések hitelesítésére és érvényesítésére. Ebben az esetben csak bizonyos felhasználók hajthatnak végre kéréseket.
Az ütemező alkalmazásokat vagy Kubernetes munkaterhelési objektumokat rendel a dolgozó csomóponthoz. Itt az ütemező az erőforrásigények alapján sorba rendezéseket helyez el a csomópontokon. És ha a podokról beszélünk, az csak egy kis telepítési egység a Kubernetesben.
Ez az egység fürtöket tart fenn, például csomóponti hibákat, hogy fenntartsa a megfelelő számú podokat. Érzékeli a fürt állapotváltozásait, például a hüvelyek elhalását, és megpróbálja visszaállítani a pod eredeti állapotát. Például, ha egy pod véletlenül meghal, a vezérlőmenedzser arra kéri az ütemezőt, hogy erősítse meg, melyik csomópont pörget fel új pod csereként, a kubelet pedig egy új pod.
Klaszter agynak is nevezik. Az egység a fürtkonfiguráció kulcsértéktárolója. Ez azt jelenti, hogy minden klasztermódosítás itt történik. A fürtről biztonsági másolatot készíthet a kulcsérték elosztott tárolójának mentésével. Kérjük azonban, vegye figyelembe, hogy itt csak a fürtállapot-adatok tárolódnak, az alkalmazásadatok nem. Ez az egység kifejezetten a fürt állapotinformációinak tárolására és a korábbi folyamatokhoz való felhasználására szolgál, amelyek tudatosítják őket a fürtről.
A rabszolga csomópont(ok)
Minden szolga csomópont három csomóponti folyamattal van telepítve, amelyek lehetővé teszik a K8-asok számára, hogy kölcsönhatásba lépjenek vele, és külön-külön felpörgessenek podokat minden csomóponton belül. A szükséges folyamatok a következők:
Ez a Kubernetes elsődleges szolgáltatása, amely a tárolóvégrehajtási réteg végrehajtását futtatja. Ha kiveszi ezt az egységet, a Kubernetes nem más, mint egy REST API, amelyet kulcsérték tárolóval támogat. Alapértelmezés szerint a K8s végrehajtja a tárolóalkalmazást. A tárolók mindig el vannak szigetelve egymástól és az alapul szolgáló gazdarendszertől. Ez analitikusnak bizonyult az egyes alkalmazások kezelésének egymástól és a fizikai vagy virtuális infrastruktúrától való szétválasztásában.
Míg az API-engedélyezési vezérlő elutasíthatja a pod-okat, vagy további megszorításokat adhat hozzá, a kubelet a végső megerősítője annak, hogy egy adott csomóponton milyen pod-ok futnak, nem pedig ütemezők vagy démonkészletek. Összefoglalva, a kubeletek kölcsönhatásba lépnek a csomóponttal és a tárolóval. Ezenkívül konfigurációs fájlokat vesz fel, és felpörgeti a podokat a konténer futásidejű használatával.
Ez a szakasz konténereket futtat. Használhatja például a Docker, rkt vagy conatinered egy kicsit többet a konténerek működéséről szakaszban.
Ez az egység absztrakciós réteget biztosít a csomópont-csoportok számára az általános szabályzatok szerint, például a terheléselosztás esetében. Minden csomópont Kube-proxyt alkalmaz, hogy virtuális IP-címet biztosítson a dinamikus podokhoz hozzáférő ügyfelek számára. Ez a szerkezet a megoldás a terheléskiegyenlítésre, miközben alacsony teljesítményű rezsiköltséget biztosít.
Hogyan működik a konténerezés
A konténerezés azt jelenti, hogy a szoftveralkalmazás összes szükséges részét egyetlen egységbe kell virtualizálni. A tárolók alatt könyvtárak, binárisok és az összes szükséges alkalmazáskonfiguráció gyűjteménye található. De nem tartalmazzák a kernel erőforrásokat vagy a virtualizált hardvert.
Végső soron futtasson „felső” konténer-futókörnyezeteket, amelyek körvonalazzák az erőforrásokat. Mivel a tárolók csak az alapvető összetevőket és az alkalmazásfüggőségeket tartalmazzák, más virtuális gépekkel ellentétben könnyűek és így gyorsabbak.
Olvassa el még: Konténerek vs. Virtuális gépek: A különbségek magyarázata
A Kubernetes telepítése és beállítása
Annyi időt töltöttem elméleti gondolkodással; a lépcsőzetes szakasz taktikai lesz, és gyakorlati konténeres tapasztalattal jár. Ez az oktatóanyag különösen a Windows operációs rendszerre történő telepítésről szól.
Windows használatakor többféleképpen is telepíthet; választhat a parancssor vagy a grafikus felhasználói felület közül. Gondoskodnia kell azonban arról, hogy megfeleljen a következő előírt előírásoknak.
A hardvernek legalább 2 GB memóriával és 700 MB-tal rendelkező fő csomópontra van szüksége a dolgozó csomóponthoz. A szoftverkövetelményekhez Hype-v, Docker asztali számítógépekhez, egyedi Mac-cím és egyedi termék UUID minden csomóponthoz. Íme a lépésről lépésre történő megközelítés.
A Hyper-V telepítése és beállítása
A Hyper-V a Window alapértelmezett virtualizációs szoftvere. Lényegében ez egy VirtalBox szteroidokon. Lehetővé teszi a virtuális gépek kezelését akár Microsoft grafikus felületen, akár parancssorban. A Hyper-V engedélyezéséhez kövesse az alábbi lépéseket.
Alkalmanként előfordulhat, hogy a számítógép többször is újraindul, hogy minden megfelelően konfigurálva legyen. A telepítés sikerességét a következő parancs beírásával ellenőrizheti a Power Shellben.
Get-Windows OptionalFeature -Online -FeatureName Microsoft-Hyper-V
Győződjön meg arról, hogy a képernyő „engedélyezett” állapottal van feltöltve.
Docker telepítése
Amint azt megtudta, a K8s egy konténerek tetejére épített konténer hangszerelési eszköz; ebben az esetben a Docker jó választás. A K8s kommunikál a Dockerrel, és mindent vállalati szinten kezel. Mozogjon a Docker for Windows letöltésével. Ha kíváncsi arra, hogy miért van szükség a Docker Desktop használatára, ezt részesítik előnyben a dokkolós (konténeres) alkalmazások fejlesztésének, szállításának és futtatásának leegyszerűsítésére.
Ez egyben a leggyorsabb módja a Docker-alkalmazások Windows rendszeren történő létrehozásának Hyper-V és hálózat használatával. Sikeres telepítés után a Docker mindig elérhető bármely terminálon, amíg fut. A telepítéssel kapcsolatos részletes útmutatóért tekintse meg a hivatalos Docker dokumentációt. Ha a telepítés után olyan problémákba ütközik, mint például a rejtett ikonok, a probléma megoldható a gép újraindításával.
A Kubernetes telepítése
A Docker GUI lehetővé teszi a beállítások konfigurálását, a Kubernetes telepítését és engedélyezését. A K8s telepítéséhez kövesse az alábbi lépéseket.
A Docker ezután telepít néhány további csomagot és függőséget. A folyamat körülbelül öt-tíz percig tart, az internet sebességétől függően. A Docker alkalmazással megerősítheti, hogy minden megfelelően működik.
Mivel a Kubernetes-alkalmazások a parancssori felülettel telepíthetők, előfordulhat, hogy telepítenie kell a K8s irányítópultját, mivel az alapértelmezés szerint nincs telepítve. Telepítse a műszerfalat a következő lépésekkel.
Az irányítópult eléréséhez futtassa a következő parancsot a Power Shell-en (nem a CMD-n)
- Másolja ki a generált tokent, és futtassa a kubectl proxyt.
Ha eljutott ide, bravo a képernyőjét fel kell töltenie a K8s műszerfalával. Mostantól a CLI használatával kezelheti alkalmazásait a kemény munka elvégzése nélkül.
Olvassa el még: A Kubernetes telepítése Ubuntu 18-ra
A Kubernetes-fürt létrehozása és kezelése
Ha ezt követte, sikeresen telepítette a Kuberneteset a gazdagépére. Kövesse az alábbi lépéseket a fürt egyszerű kezelésének létrehozásához és végrehajtásához:
Bár ez csak egy áttekintés a fürt létrehozási folyamatáról, sok lépésből áll, amelyek több parancsot tartalmaznak. Itt található a hivatalos dokumentációs útmutató a fürtök telepítés előtti létrehozásához. Ez legyen a te irányító kezed.
Az első alkalmazás üzembe helyezése a Kubernetes használatával
A K8s használatakor a leggyakoribb parancs a kubectl action resource, amely lehetővé teszi bizonyos műveletek végrehajtását, például egy adott erőforrás létrehozását vagy törlését.
Ha elakad, használhatja a –help parancsot egy adott alparancs után további információkért.
Például a Kubernetes csomópontokat kap – súgó. Telepítse első K8s-alkalmazását a kubectl create deployment Kubernetes-bootcamp –image=gcr.io/google-samples/Kubernetes-bootcamp:v1 paranccsal.
Végső szavak
Ez az útmutató a Kubernetes technológia belépési pontja volt. Megtanulta a Kubernetes előnyeit, funkcióit és architektúráját. Szerencsére előfordulhat, hogy néhány mutatóra (külső erőforrásokra) kellett hivatkoznia az induláshoz; elmagyarázta, hogyan működnek a dolgok a motorháztető alatt.
Noha kezdőként túlzónak tűnhet a teljes technológiai halmaz felfogása, ez a bejegyzés egy zökkenőmentes iránymutatás volt a K8s használatához. Szüksége lesz egy kis gyakorlásra, hogy magabiztossá váljon ennek a technológiának a használatával kapcsolatban, ezért a hivatalos Kubernetes dokumentációra hivatkozom, mint egymás melletti hivatkozást. Minél több gyakorlatod van, annál gyorsabban leszel a K8-asok szakértője.
Ezután tekintse meg a Kubernetes oktatóanyagait kezdőknek, hogy elsajátítsák.