Vissza a bloghoz

Alkalmazások telepítése Kubernetes-en az Argo CD és a GitOps használatával

Alkalmazások telepítése Kubernetes-en az Argo CD és a GitOps használatával

Bevezetés

Kubernetes szabvánnyá vált a nagy alkalmazások telepítésében. Segít a fejlesztőknek jelentős előnyökhöz jutni, és olyan funkciókat kínál, amelyek a hagyományos szerverhosztingban nem érhetők el. A Kubernetes lehetővé teszi a horizontális skálázást az infrastruktúrával járó vesződségek nélkül. Ezenkívül csökkenti az infrastruktúra beszerzésének és fenntartásának költségeit az alkalmazás növekedésével.

Azonban az alkalmazások kezelése a Kubernetes-en bonyolult is lehet, és haladó készségeket igényel. Az alkalmazások telepítése a Kubernetes és a Continuous Integration and Continuous Deployment folyamat (CI/CD) segítségével absztrakciót biztosítva segít leküzdeni ezt a bonyolult folyamatot. GitOps az egyik olyan eszköz, amely segíthet az absztrakció elérésében.

Ebben az útmutatóban bemutatjuk, hogyan használható az Argo CD az alkalmazások folyamatos integrálására és üzembe helyezésére a Kubernetes-en. Amikor bármilyen változtatást beküldenek a kódtárba, az automatikusan telepítésre kerül a célfürtön. Argo CD verziókezelést, konfigurációkat és alkalmazáskörnyezeteket is biztosít a teljes szoftverfejlesztési életciklussal való integráció révén. Ha olyan csomagkezelőkkel rendelkezik a Kubernetes-hez, mint a Helm, vagy ha a kódtára a BitBucket vagy a GitLab platformon található, az Argo CD zökkenőmentesen integrálható ezekkel a platformokkal is.

Előfeltételek

Az útmutató elvégzéséhez a következőkre van szükség:

1. lépés – Az Argo CD telepítése

Az Argo CD telepítése előtt rendelkeznünk kell egy futó Kubernetes környezettel, amely tartalmazza a kubectl eszközt. Ezt az alábbi parancs futtatásával tesztelheti:

Deploying Applications on Kubernetes Using Argo CD and GitOps Get Nodes

Legalább egy futó Kubernetes csomópontot kell látnia Ready állapotban. Ha nem áll rendelkezésre csomópont, ellenőrizze újra a Kubernetes telepítését. Ezután létrehozunk egy külön névteret a Kubernetes telepítésünkhöz. Nevezzük így: argocd. Az Argo CD-vel kapcsolatos szolgáltatásokat ebben a névtérben fogjuk tartani:

Ezután telepítse az Argo CD szkripteket a fent létrehozott új névtérbe az alábbi parancs futtatásával:

Deploying Applications on Kubernetes Using Argo CD and GitOps Install ArgoCD

A Kubernetes podok állapotának ellenőrzéséhez futtassa az alábbi parancsot:

Az alábbihoz hasonló eredményt fog kapni:

Deploying Applications on Kubernetes Using Argo CD and GitOps Get Pods

Ezzel sikeresen befejezte az Argo CD telepítését. A watch felületből való kilépéshez nyomja meg a Ctrl + C billentyűkombinációt. A Kubernetes-fürtben lévő szolgáltatások eléréséhez továbbítanunk kell a portokat. A következő lépésben megmutatjuk, hogyan kell ezt megtenni.

Step 2 – Forward Ports to Access Argo CD

A Kubernetes az Ön által választott bármely portra telepítheti az alkalmazást. Ezért a helyi gépről való eléréshez továbbítani kell a Kubernetes alkalmazás portjait. Az Argo CD közzétesz egy argocd-server nevű szolgáltatást, amely a 443 portot használja. A 443 port a HTTPS és HTTP szolgáltatások alapértelmezett portja. A Kubernetes portokat egy Ön által választott portra továbbíthatja. Az alábbi példánkban a portot a 8080 portra továbbítottuk. A portok továbbításához futtassa az alábbi parancsot a terminálban:

Miután továbbította a portot, az blokkolva lesz, így a többi szolgáltatás nem fogja tudni elérni. A zavartalan hozzáférés érdekében mindig ajánlott a fent említett parancsot egy új terminálban futtatni. Ha végzett, megnyomhatja a Ctrl+C gombot a porttovábbítási folyamatból való kilépéshez.

Miután továbbította a portot, az Argo CD-hez navigálhat a localhost:8080 címre lépve. A rendszer kérni fogja a hitelesítési adatokat, amelyeket a következő lépésben a parancssorból szerezhet meg.

Step 3 – Az Argo CD kezelése parancssorból

Az Argo CD telepítésének kezeléséhez telepítenünk kell az Argo CD parancssort. Az Argo CD telepítésének javasolt módja egy csomagkezelő használata, mint például a Homebrew. A Homebrew egy népszerű csomagkezelő eszköz macOS és Linux rendszerekre történő telepítéshez. A Homebrew-t az alábbi paranccsal telepítheti:

Rendelkeznie kell a gépére telepített brew programmal. Előfordulhat, hogy a bejelentkezéshez jelszót kér a rendszer. Az alábbi parancs futtatásával indíthatja el:

A fenti telepítés után megkapja a argocd parancsot. Az adminisztrátori jelszót a kubectl paranccsal kell lekérnünk. Ez a telepítés során automatikusan generálódott. Alább látható a megszerzéséhez szükséges parancs:

Most, hogy telepítette az Argo CD-t, bejelentkezhet az alábbi argocd login paranccsal:

A parancssor használatakor be kell jelentkeznie az alkalmazás telepítéséhez:

Applications

Előfordulhat, hogy biztonsági figyelmeztetést kap. Ha igen, nyomja meg az y gombot a folytatáshoz. Sok felhasználó szeretné megváltoztatni a jelszót a bejelentkezés után. Ha igen, futtassa az argocd account update-password parancsot a jelszó megváltoztatásához. Most már egy teljesen működőképes Argo CD konfigurációval rendelkezünk.

Végezetül egy alkalmazást fogunk telepíteni a Kubernetes fürtre a telepített Argo CD segítségével.

Step 4 – Több fürt használata

Mielőtt folytatná az alkalmazás beállítását, ismernie kell a céleszközt, amelyre telepíteni szeretné. Sok forgatókönyv esetén az Argo CD és a telepített alkalmazás ugyanazon a fürtön futhat. Ez az Argo CD alapértelmezett viselkedése, de ez nem korlátozás. Ha az alkalmazást más céleszközökre szeretné telepíteni, először futtassa a kubectl config parancsot a gépén:

Tegyük fel, hogy két fürtöt kap: test-deploy-cluster és test-target-cluster. Ha a test-deploy-cluster fürtön található az Argo CD, és a test-target-cluster fürtre szeretne telepíteni, akkor futtassa az alábbi parancsot:

A fenti parancs hozzáadja a további fürt adatait az Argo CD-hez. Lehetővé teszi továbbá szolgáltatások telepítését az Argo CD célfürtjén.

Step 5 – Egy példaalkalmazás telepítése

Végre eljött az ideje, hogy alkalmazásokat telepítsünk a Kubernetes fürtre. Az Argo CD által biztosított példaalkalmazásokat fogjuk használni. Kihasználjuk a helm-guestbook alkalmazást is, amely Helm chartok használatával készült.

Az alkalmazás telepítéséhez az argo app create parancsot fogjuk használni. Megadjuk a Git repository, helm-guestbook értéket, valamint átadjuk az alapértelmezett célhelyet és névteret:

Az újonnan létrehozott alkalmazás állapotát az alábbi parancs futtatásával ellenőrizheti: argocd app get:

Ne lepődjön meg, ha a OutOfSync státuszt látja. Eddig letöltöttük a Helm chartot, és létrehoztunk hozzá egy belépési pontot az Argo CD számára. A Kubernetes oldalon azonban még nincs hozzárendelve erőforrás. Az alkalmazás szinkronizálásához futtassa az alábbi parancsot:

Deploying Applications on Kubernetes Using Argo CD and GitOps App Sync

Ha GitOps-szal dolgozunk, mindig szinkronizálni kell az alkalmazást a távoli (upstream) tárhellyel. Ezért, amikor változás történik a tárhelyen, az Argo CD telepíti az alkalmazást.

Az alkalmazást az Argo CD parancssor segítségével telepítettük. Ugyanezt az eredményt az Argo CD webes felületén is elérheti. A webes felület nagyon hasznos, ha ellenőrizni szeretné az alkalmazás állapotát és működését. A webes felület megnyitásához nyissa meg a localhost:8080:

Deploying Applications on Kubernetes Using Argo CD and GitOps Application UI

A telepítés ellenőrzéséhez megnyitjuk az alkalmazást a böngészőben. A mi helm-guestbook alkalmazásunk a 80 porton fut. Ha bármilyen más alkalmazása használja a 80 portot, továbbíthatja a portot, hogy a többi alkalmazás működése ne szakadjon meg:

Végül nyissa meg a localhost:9090 címet a böngészőjében, hogy lássa a futó alkalmazást:

 Guestbook UI

Ha most egy fejlesztő kódot küld a GitHub távoli tárhelyre, az ArgoCD észleli és érvényesíti azt. Az ArgoCD telepítései ennek megfelelően frissülnek, biztosítva a folyamatos elérhetőséget.

Összegzés

Ebben az útmutatóban bemutattuk, hogyan telepíthet és futtathat alkalmazásokat Kubernetes-en az Argo CD segítségével. Fontos biztosítani, hogy a Kubernetes-en lévő telepítések karbantarthatók legyenek. Ebben a GitOps sokat segíthet.

A Kubernetes mára a felhőalapú telepítések szabványává vált. A CloudSigma nagyszerű Kubernetes útmutatókkal rendelkezik, amelyeket érdemes legközelebb megtekintenie:

Kellemes számítástechnikát!

author

Preslav Dobrev

Szerző · CloudSigma

Preslav Dobrev a CloudSigma kreatív tervezője, aki hagyományos és innovatív marketingcsatornák segítségével következetes vállalati identitás kialakítására összpontosít. Kiemelkedően képes ötvözni a művészi látásmódot a stratégiai marketinggel, hogy hatásos márkatörténeteket hozzon létre.

Hozzászólások

Még nincsenek hozzászólások. Legyen Ön az első.