Trace Id is missing
Ugrás a tartalomra

A Kubernetes üzembe helyezési stratégiája

Találja meg az optimális Kubernetes-kibocsátási stratégiát az alkalmazásához.

A Kubernetes üzembe helyezésének lehetőségei

Akár a piacra dobási időt szeretné csökkenteni, rugalmas, állásidő nélküli példányokat szeretne létrehozni, gyorsabban és gyakrabban szeretne kiadni alkalmazásokat és funkciókat, vagy rugalmasabb környezetben szeretne dolgozni, a megfelelő Kubernetes-stratégia kiválasztása kulcsfontosságú a rugalmas alkalmazások és infrastruktúra biztosításához. A Kubernetes minden üzembe helyezési stratégiája rendelkezik előnyökkel az Ön céljaitól és igényeitől függően.

Az üzemelő Kubernetes-példányok működése

A Kubernetes üzembe helyezési stratégiájának bevezetése előtt meg kell ismernie az üzemelő példányok elemeit, illetve azt, hogy ezek hogyan működnek együtt.

Az üzemelő Kubernetes-példányok alkotóelemei

YAML-fájl

A Kubernetes-fürt kívánt állapota (a podok konfigurációja), amelyet Ön szab meg, és a Kubernetes üzembe helyezésének alapja.

Podok

Az alkalmazás vagy munkafolyamat futtatásához szükséges tárolók, megosztott erőforrások és környezet.

ReplicaSet

Az azonos módon konfigurált podok csoportjait ReplicaSeteknek nevezzük. Ezek gondoskodnak arról, hogy a Kubernetes üzembe helyezésének YAML-fájljában ismertetett típusa és számú podok folyamatosan futnak. Ha egy pod hibába ütközik, létrejön egy új.

Kube-controller-manager

Úgy módosítja a fürt aktuális állapotát, hogy az megfeleljen a YAML-fájlban ismertetett kívánt állapotnak. Ehhez új podokat és ReplicaSeteket hoz létre, valamint frissíti vagy eltávolítja a meglévőket.

Kube-scheduler

Meghatározza a podok és ReplicaSetek üzembe helyezésének módját a munkavégző csomópontok között, valamint elosztja ezen csomópontok között a forgalmat.

Bevezetés

A fürt jelenlegi állapotáról a kívánt állapotra történő újrakonfigurálásának folyamata – legtöbbször állásidő nélkül elvégezhető.

A Kubernetes bevezetésének működése

  • Hozzon létre egy YAML-fájlt, amely a fürt kívánt állapotkonfigurációját ismerteti.
  • Alkalmazza a YAML-fájlt a fürtre a Kubernetes parancssori felülete, a kubectl segítségével.
  • A kubectl elküldi a kérést a kube-apiservernek, amely hitelesíti és jóváhagyja, majd rögzíti azt az etcd adatbázisban.
  • A kube-controller-manager folyamatosan figyeli a rendszert és az új kéréseket, és igyekszik a rendszerállapotot a kívánt értéken tartani. Ennek során ReplicaSeteket, üzemelő példányokat és podokat hoz létre.
  • Az összes vezérlő futtatása után a kube-scheduler azt tapasztalja, hogy "pending" (függőben) állapotú podok találhatók a rendszerben, mivel ezek még nem lettek egy csomóponton való futásra ütemezve. A scheduler megfelelő csomópontokat keres a podoknak, majd utasítja az egyes csomópontok kubeletjeit, hogy vegyék át a vezérlést, és kezdjék meg az üzembe helyezést.
Kubernetes-kibocsátás

A Kubernetes üzembe helyezésének használati esetei

Tárolóalapú alkalmazásokat és munkafolyamatokat négyféleképpen adhat ki Kubernetesbeli üzembe helyezéssel. A Kubernetes választott üzembe helyezési stratégiája ezen használati esetek közül többet is alkalmazhat.

Létrehozás

Teljesen új Kubernetes-podokat és ReplicaSeteket adhat ki.

Frissítés

Új kívánt állapot megállapítása, valamint új podok és ReplicaSetek bevezetése ellenőrzött módon.

Visszaállítás

A Kubernetes üzemelő példányának visszaállítása egy korábbi állapotra – ez hasznos lehet, ha a jelenlegi állapot instabil.

Skálázás

A Kubernetes üzemelő példányában található podok és ReplicaSetek számának növelése azok módosítása nélkül.

A Kubernetes üzembe helyezési stratégiái

Az Önnek legmegfelelőbb Kubernetes-stratégia számos szemponttól függhet: a megengedett állásidő (ha egyáltalán engedi), az üzembe helyezési környezet, az Ön az új verzióba vagy platformba vetett bizalma, a tesztelési igények és várt eredmények, az erőforrások költségei és rendelkezésre állása, valamint az üzleti célok. Íme négy gyakori üzembe helyezési stratégia, amelyet szervezetek éles környezetben használnak.

Felfutásos bevezetési diagram

Felfutásos

A Kubernetes alapértelmezett bevezetési metódusa az úgynevezett felfutásos vagy gördülő üzembe helyezés. Ez az üzembe helyezés lassan, egyenként cseréli le a podokat az állásidő elkerülése érdekében. A régi podokat csak az új podok készenléte után skálázza le vertikálisan. Ha az üzembe helyezés problémába ütközik, szüneteltetheti vagy megszakíthatja a Kubernetes üzembe helyezését anélkül, hogy ehhez a teljes fürtöt offline üzemmódba helyezné.

Kék/zöld bevezetési diagram

Kék/zöld

Blue/green típusú üzembe helyezés keretében Ön kiadja az alkalmazás vagy munkafolyamat új verzióját (blue), míg a jelenlegi verzió (green) továbbra is fut. Így tesztelheti az új verziót az éles környezetben, miközben a felhasználók továbbra is a stabil jelenlegi verziót látják. A tesztelés után az új verzió fokozatosan átveszi a régebbi helyét.

Canary bevezetési diagram

Tesztcsoport

Az új verzió egy kisebb csoportnak való kiadásával lehetővé teheti az ügyfelek számára, hogy teszteljék a Kubernetes-példányt. Az új verzió ReplicaSetjét az aktuális verzióval együtt futtathatja, majd egy adott hibamentes időszak után vertikálisan felskálázhatja az új verziót, és kivezetheti a régit.

A/B tesztelési diagram

A/B-tesztelés

A Kubernetes tesztcsoportos üzembe helyezési stratégiájához hasonlóan az A/B-tesztelési stratégia is egy adott ügyfélcsoportra összpontosít. Az A/B-tesztelés üzembe helyezése azonban nemcsak egy verzió stabilitásáért felel, hanem azt is vizsgálja, hogy a verzió mennyire hatékony az üzleti célok elérésében. Az új verziót a felhasználók olyan szempontok alapján kapják meg, mint a cookie-k, a földrajzi hely, az operációs rendszer, valamint az eszköztípus, és gyakran az aktuális verzióval együtt fut – majd vertikálisan felskálázható, ha hatékonynak bizonyul.

A Kubernetes üzembe helyezésének eszközei

A fenti üzembe helyezési stratégiák bármelyikét elvégezheti a parancssorral vagy YAML-fájlokkal, azonban az alábbi, Kubernetesbeli üzembe helyezésre vonatkozó eszközökkel magasabb szintű irányítást gyakorolhat a fürtök és példányok fölött.

Azure DevOps

A Kubernetes-példányok automatizálásához szükséges teljes alkalmazásellátási lánc. Gyorsabban és nagyobb mértékben szolgáltathat kódot, a sebesség és a biztonság tökéletes egyensúlyával.

Helm

Egy nyílt forráskódú csomagolóeszköz. Ön által létrehozott, verziókezelt, megosztott és közzétett diagramokkal telepíthet, frissíthet és kezelhet Kubernetes-alkalmazásokat.

Azure Kubernetes Service (AKS)

Egy magas rendelkezésre állású, biztonságos és teljes mértékben felügyelt Kubernetes-szolgáltatás. Tárolóalapú alkalmazásokat helyezhet üzembe és kezelhet a felhőben.

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