Ha fejlesztői háttérrel rendelkezel, valószínűleg ismered a csomagkezelő (Package Manager) kifejezést. A csomagkezelők lehetővé teszik a függőségek telepítését, a verziók frissítését és visszaállítását, és így tovább. Ebben az útmutatóban egy nagyon népszerű csomagkezelőt fogunk megvizsgálni a Kubernetes rendszerhez, amelynek neve Helm.
A Helm segít a Kubernetes alkalmazások kezelésében. A Helm segítségével meghatározhatsz egy Kubernetes alkalmazást, megadva az alkalmazás metaadatait, függőségeit és konfigurációit. A Helm képes alkalmazásokat telepíteni a Kubernetes-re, valamint frissíteni és visszaállítani azokat. Végül a Helm fájl segítségével megoszthatod az alkalmazásodat másokkal. Ebben az útmutatóban megmutatjuk, hogyan telepítheted a Helm 3-at, valamint hogyan állíthatsz be, frissíthetsz, állíthatsz vissza és kezelhetsz chartokat és kiadásokat (releases) Windows operációs rendszeren.
Kezdjük el!
Előfeltételek
Mielőtt elkezdenénk az útmutatót, győződj meg arról, hogy a következő telepítések már rendelkezésre állnak:
-
Ha még nincs beállítva a Kubernetes a Windows-odon, a legegyszerűbb módja a Docker Desktop használatával kezdeni. Menj a https://www.docker.com/products/docker-desktop oldalra. Töltsd le és telepítsd a Docker Desktopot. Ebben az útmutatóban Windowst fogunk használni. Ezért telepítenünk kell a WSL 2 Backend-et. Ez egy Linux alrendszer Windowshoz, amely lehetővé teszi a Docker támogatását:

Amint a Docker Desktop készen áll, lépj a Settings -> Kubernetes menüpontra, és jelöld be a következő opciót: Enable Kubernetes:


Annak ellenőrzéséhez, hogy minden megfelelően működik-e, nyisd meg a terminált vagy a PowerShellt (attól függően, melyiket használod), és írd be az alábbi parancsot:
|
1 |
kubectl |
Ha az alábbi kimenetet látod, készen állsz a folytatásra:

Alternatív megoldásként, ha inkább Ubuntun szeretnél dolgozni, kövesd a részletes útmutatónkat: Hogyan telepítsük és használjuk a Kubernetes-t Ubuntu 20.04-en.
Ezenkívül, mielőtt elkezdenénk a telepítési folyamatot, nézzünk meg néhány kulcsfontosságú kifejezést, amelyek a Helmhez kapcsolódnak.
-
Chartok
A Kubernetes YAML fájlok a Helm chartokba vannak csomagolva.
-
Helm repozitóriumok
A Helm támogatja a repozitóriumok elérését és kezelését. A Helm repozitórium egy olyan hely, ahol a Helm chartok találhatók, így mások is használhatják őket. A Helm lehetővé teszi saját repozitóriumok létrehozását, valamint támogatja a harmadik féltől származó repozitóriumokat is.
-
Tiller
A Tiller a Helm szerveroldali komponense. Ezt a Kubernetes klaszteren kell telepíteni. Fogadja a Helm Chartot, és ennek megfelelően konfigurálja a klasztert.
Megtekintheted a blogbejegyzésünket is, amely részletes áttekintést nyújt a Helmről, és elmagyarázza a Helm módszereit az alkalmazások Kubernetes-re történő telepítésének egyszerűsítésére.
Most már készen állunk a kezdésre!
1. lépés: A Helm 3 telepítése
A Helm 3 telepítése egy egyszerű folyamat. A kiadások elérhetők a Helm GitHub oldalán. Letöltheted a használni kívánt kiadást a választott operációs rendszered alapján. Ebben az útmutatóban a Windows operációs rendszert fogjuk használni, így Windows esetén kövesd az alábbi lépéseket:
-
A GitHub oldalon töltsd le a Windows-hoz készült Helm binárisokat.
-
Miután a letöltés befejeződött, a tömörített archívumot a Letöltések mappában találod, vagy oda, ahová letöltötted.
-
Ezután helyezd át ezt az archívumot egy kényelmes helyre, és csomagold ki. A kicsomagolt tartalomban meg kell találnod a helm.exe fájlt:

-
Másold ki a mappa elérési útját, és add hozzá a PATH változóhoz a rendszered környezeti változói között.
-
Ha végzel, nyisd meg a terminált, és írd be az alábbi parancsot:
|
1 |
helm |
Ha az alábbi kimenetet látod, készen állsz a Helm telepítésével. Ezután továbbléphetsz a következő lépésekre:

2. lépés: Repozitóriumok beállítása és egy Helm Chart telepítése
A Helm támogatja a repozitóriumok elérését és kezelését. A repozitóriumokban tárolódnak a Helm Chartok. Kezdetben a Helmnek nincs saját repozitóriuma. Ehelyett a Helm arra ösztönzi a menedzsereket és a DevOps szakembereket, hogy hozzák létre saját repozitóriumaikat. Ez azt jelenti, hogy ha szeretnél MongoDB-t a Kubernetes klaszteredben, akkor azt magadnak kell hozzáadnod a Helm repozitóriumhoz. A repozitóriumok megtalálásához használhatod az Artifact.io oldalt. Ez egy nyílt forráskódú katalógus az összes Helm chart számára, amelyet a CNCF kezel.
Az alábbiakban bemutatjuk, hogyan állíthat be egy tárolót, valamint hogyan töltheti le és telepítheti a szoftvert. Példaként a MongoDB telepítését vesszük alapul. Tegyük fel, hogy a MongoDB-t szeretné telepíteni a Kubernetes-fürtjére. A telepítéshez kövesse az alábbi lépéseket:
-
Először nyissa meg a https://artifacthub.io.
-
Ezután keressen rá a MongoDB-re. A keresés után látni fogja, hogy számos lehetőség áll rendelkezésre. Amelyik minket érdekel, az a MongoDB by Bitnami:

-
Amikor a keresés befejeződik, különböző lehetőségeket fog látni. Minden chart mellett látható a kiadó, a verzió és egyéb releváns információk. Miután megtalálta a kívánt chartot, ki kell választania azt. Itt a MongoDB by Bitnami-ra kattintunk:

-
Most már ténylegesen elkezdődhet a technikai rész. Ha megnézi az általános leírást, láthatja, hogy egy jó útmutató áll rendelkezésre bárki számára, aki telepíteni szeretné a szolgáltatások bármelyikét. Megtekintheti a különböző opciókat, konfigurációkat, paramétereket, a chart törlésének módját és bármi mást, amiről információra lehet szüksége. Keresse meg az Install gombot, és kattintson rá:

-
Itt van minden, amire szüksége van a MongoDB telepítéséhez. Először hozzá kell adnia a tárolót majd telepítenie kell a chartot. A tároló hozzáadásához nyissa meg a terminált, és írja be a következő parancsot:
|
1 |
helm repo add bitnami https://charts.bitnami.com/bitnami |
A következő kimenetet fogja látni:

Most, hogy beállította a tárolót, telepítenie kell a chartot. Másolja ki a parancsot a párbeszédablakból, majd futtassa:
|
1 |
helm install my-mongodb bitnami/mongodb --version 10.23.10 |
Amint a folyamat befejeződik, a MongoDB készen áll a használatra.
3. lépés: Kiadások kezelése
A szoftverfejlesztésben a kiadáskezelés létfontosságú. Mindig adódnak olyan helyzetek, amikor frissítenie kell, vagy vissza kell állnia a korábbi verziókra. Szerencsére a kiadások kezelése a Helmben viszonylag egyszerű folyamat. A Helm megőrzi a verziószámokat, így bármikor visszatérhet az előző verzióra. Hasonlóképpen, tegyük fel, hogy az alkalmazása telepítve van és élesben fut, és konfigurációkat kell módosítania – a Helm ezt is támogatja. Az alábbiakban áttekintünk néhány bevált gyakorlatot, amelyek segítenek ezen műveletek elvégzésében.
-
Az alkalmazás frissítése
Tegyük fel, hogy a values.YAML fájlban megadja, hogy az alkalmazásnak két példányban kell futnia. Ez azért lehet szükséges, mert az alkalmazásnak magas rendelkezésre állásúnak kell lennie. Később azonban rájön, hogy az alkalmazásnak három példányra van szüksége. Helm nélkül először le kellene állítania az alkalmazást, majd konfigurálnia és újra telepítenie. A Helm használatával először elvégezheti a módosításokat a values.YAML fájlban, majd egyszerűen futtassa az alábbi parancsot. Abban a könyvtárban, ahol a Helm-fájlok találhatók, futtassa a következő parancsot:
|
1 |
helm upgrade <app-name> |
-
A kiadás visszavonása
Most tegyük fel, hogy a kiadás meghibásodik. Lehet, hogy rossz portszámokat vagy útvonalakat konfigurált. Bármelyik korábbi verzióra való visszaálláshoz mindössze az alábbi parancsot kell végrehajtania, és a Helm visszaállítja a kiadást az előző verzióra:
|
1 |
C:\> helm rollback <release> |
A Helm gondoskodik az összes kiadásról és verziókezelésről. Ez az egyik legnagyobb előnye a Helm használatának a Kubernetes-szel. Egy alkalmazás összes kiadásának megtekintéséhez futtassa az alábbi parancsot a Helm chartokat és YAML-fájlokat tartalmazó könyvtárban:
|
1 |
helm history RELEASE |
4. lépés: Saját chart létrehozása
Végezetül, most, hogy már magabiztosan használja a Helmet és érti a működését, ideje létrehozni a saját chartját. Saját egyedi chart létrehozásával könnyen terjesztheti alkalmazását, valamint hosztolhatja azt bármelyik tárolóban. A chart létrehozása meglehetősen egyszerű folyamat, ha követi az alábbiakban ismertetett lépéseket. Először nyissa meg a terminált, és futtassa az alábbi parancsot:
|
1 |
helm create <chart-name> |
Ez létrehozza a könyvtárat a megadott névvel. Mi a következő nevet használjuk: my-app. Lássuk a mappa tartalmát:
|
1 2 |
cd my-app ls |
A következő struktúrát fogja kapni:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
charts/ templates/ ├─ tests/ │ ├─ test-connection.yaml ├─ deployment.yaml ├─ hpa.yaml ├─ ingress.yaml ├─ NOTES.txt ├─ service.yaml ├─ serviceaccount.yaml ├─ _helpers.tpl ├─ .helmignore ├─ Chart.yaml ├─ values.yaml |
Íme a kimenet tartalmának összefoglalása:
- charts mappa – A függő chartok hozzáadására szolgál.
- templates mappa – A klaszterben telepítésre kerülő konfiguráció.
- YAML fájl – A Helm chart struktúrájának vázlata.
- YAML fájl – Formázási információk a chart konfigurálásához.
Ezután kövesse az alábbi lépéseket a chart telepítéséhez és konfigurálásához:
-
Kép (image) és letöltés (pull) konfigurálása
Nyissa meg a values.YAML fájlt. Itt keresse meg az image csomópontot. Ezután tetszés szerint konfigurálhatja. A lehetséges értékek: IfNotPresent, Always, Latest. A teljes értékkészletet a hivatalos dokumentációban találja.
-
Chart név felülírása
Ez a lépés opcionális, így ha szeretné, kihagyhatja:

-
Szolgáltatás (Service) neve
Nyissa meg a
values.YAML fájlt, és keresse meg a
serviceName. Ezután adja meg a kívánt nevet. Célszerű előre elkészíteni egy nevet a chart telepítése előtt:

-
A chart telepítése
Végül a chart telepítéséhez futtassa az alábbi parancsot:
|
1 |
helm install <teljes név felülírás> <chart név>/ --values <chart név>/values.yaml |
Javasoljuk, hogy alaposan tanulmányozza át a chart konfigurálásához rendelkezésre álló összes lehetőséget, mielőtt telepítené azt a klaszterre.
Miért szeretik a fejlesztők a Helmet?
A Helm egyre népszerűbb a fejlesztők és a DevOps szakemberek körében, akiknek időnként el kell indítaniuk és le kell állítaniuk a telepítéseket. Íme a Helm legfőbb előnyei:
-
A Helm leegyszerűsíti a telepítési folyamatot. Nem hoz be semmi újat, amit meg kellene tanulni, inkább a meglévő YAML telepítéseket teszi a felhasználó számára könnyen konfigurálhatóvá.
-
Ahelyett, hogy gyakran változtatná a konfigurációt, például a klaszterek számát vagy a portokat, a Helm könnyen konfigurálhatóvá teszi azt. A felhasználónak mindössze annyit kell tennie, hogy frissíti az értékeket a values.YAML fájlban.
-
A Helm lehetővé teszi az alkalmazás megosztását más felhasználókkal azáltal, hogy tárolókba csomagolja azt.
Összegzés
Ebben az útmutatóban átvettük, hogyan állíthatja be a Helm csomagkezelőt a semmiből Windows rendszeren. Megvizsgáltunk különböző kulcsfontosságú fogalmakat, amelyeket világosan meg kell érteni a Helm képességeinek kihasználásához. Láttuk a Helm tárolókban elérhető különböző funkciókat is. Mostanra már otthonosan kell mozognia a Helm világában, és alkalmazhatja azt a következő Kubernetes projektjében/telepítésében.
Ha tovább szeretné bővíteni tudását a Kubernetesről és annak funkcióiról, tekintse meg blogunk további útmutatóit:
- Ismerkedés a Kubernetes-szel
- Kubernetes klaszter létrehozása Kubeadm használatával Ubuntu 18.04 rendszeren
- PHP alkalmazás telepítése Kubernetes klaszterre Ubuntu 18.04 rendszeren
Kellemes számítástechnikát!
Hozzászólások
Még nincsenek hozzászólások. Legyen Ön az első.