Megosztás a következőn keresztül:


Az Azure Kubernetes Service-fürtök frissítési lehetőségei

Ez a cikk az AKS-fürtök különböző frissítési lehetőségeit ismerteti. Az alapszintű Kubernetes-verziófrissítés végrehajtásához lásd : AKS-fürt frissítése.

Több csomópontkészletet vagy Windows Server-csomópontot használó AKS-fürtök esetén lásd: Csomópontkészlet frissítése az AKS-ben. Ha kubernetes-fürtfrissítés nélkül szeretne frissíteni egy adott csomópontkészletet, tekintse meg egy adott csomópontkészlet frissítését.

Manuális frissítések végrehajtása

Manuális frissítésekkel szabályozhatja, hogy a fürt mikor frissít egy új Kubernetes-verzióra. A manuális frissítések akkor hasznosak, ha az éles fürt frissítése előtt tesztelni szeretné az új Kubernetes-verziót. Manuális frissítésekkel is frissítheti a fürtöt egy adott Kubernetes-verzióra, amely nem a legújabb elérhető verzió.

A manuális frissítések végrehajtásához tekintse meg a következő cikkeket:

Automatikus frissítések konfigurálása

Az automatikus frissítésekkel automatikusan frissítheti a fürtöt a legújabb elérhető Kubernetes-verzióra. Az automatikus frissítések akkor hasznosak, ha meg szeretné győződni arról, hogy a fürt mindig a legújabb Kubernetes-verziót futtatja. Az automatikus frissítésekkel biztosíthatja, hogy a fürt mindig egy támogatott Kubernetes-verziót futtasson.

Az automatikus frissítések konfigurálásához tekintse meg az alábbi cikkeket:

A több rendelkezésre állási zónára kiterjedő csomópontkészletek különleges szempontjai

Az AKS a legjobb munkamennyiségű zónaelosztást használja csomópontcsoportokban. Frissítési túlfeszültség esetén a virtuálisgép-méretezési csoportokban lévő túlfeszültség-csomópontok zónái előre ismeretlenek, ami ideiglenesen kiegyensúlyozatlan zónakonfigurációt okozhat a frissítés során. Az AKS azonban törli a túlfeszültség-csomópontokat a frissítés befejezése után, és megőrzi az eredeti zónaegyenleget. Ha a frissítések során egyensúlyban szeretné tartani a zónákat, három csomópontból többre növelheti a túlfeszültséget, és a virtuálisgép-méretezési csoportok a rendelkezésre állási zónák között a legjobb munkamennyiségű zónaelosztással egyensúlyozzák a csomópontokat. A legjobb erőkifejtésű zónaegyenleggel a méretezési csoport az egyensúly fenntartása mellett megkísérli a vertikális fel- és kiskálázást. Ha azonban valamilyen okból ez nem lehetséges (például ha egy zóna lemegy, a méretezési csoport nem tud új virtuális gépet létrehozni az adott zónában), a méretezési csoport lehetővé teszi az ideiglenes egyensúlyhiány sikeres felskálázását vagy kiméretezését.

Az Azure helyileg redundáns tárolólemezei által támogatott állandó kötetjogcímek (PVC-k) egy adott zónához vannak kötve, és előfordulhat, hogy a túlfeszültség-csomópont nem felel meg a PVC zónájának. Ha a zónák nem egyeznek, az állásidőt okozhat az alkalmazásban, amikor a frissítési művelet továbbra is kiüríti a csomópontokat, de a virtuális gépek egy zónához vannak kötve. Az eset kezeléséhez és a magas rendelkezésre állás fenntartásához konfiguráljon egy podkimaradási költségvetést az alkalmazásban, hogy a Kubernetes betarthassa a rendelkezésre állási követelményeket a lefolyóművelet során.

Optimalizálás a nem módosítható csomópontok viselkedésére (előzetes verzió)

Konfigurálhatja a frissítési folyamat viselkedését a ürítési hibákhoz. Az alapértelmezett frissítési viselkedés az Schedule, amely a frissítési művelet sikertelenségét okozó csomópontlefolyós hibából áll, így a nem megnyitott csomópontok schedulable állapotban maradnak. Másik lehetőségként kiválaszthatja a viselkedést, amely kihagyja a Cordon nem üríthető csomópontokat karanténba helyezett állapotba helyezéssel, címkékkel kubernetes.azure.com/upgrade-status:Quarantined, és a fennmaradó csomópontok frissítésével. Ez a viselkedés biztosítja, hogy az összes csomópont frissítve vagy karanténba helyezve legyenek. Ez a módszer lehetővé teszi a csatornahibák elhárítását és a karanténba helyezett csomópontok kecses kezelését.

Hogyan beállítani az új Cordon viselkedést?

Használja a CLI előzetes verzióját, és telepítse aks-preview a 9.0.0b3-s vagy újabb bővítményt.

A bővítmény frissítéséhez vagy telepítéséhez aks-preview az alábbi parancsokat használhatja:

az extension update --name aks-preview
az extension add --name aks-preview

Frissítse a csomópontkészlet nem módosítható csomóponti viselkedését a következőre Cordon:

az aks nodepool update --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --resource-group $RESOURCE_GROUP --max-surge 1 --undrainable-node-behavior Cordon

Az alábbi példakimenet a nem frissíthető csomópont viselkedését mutatja be:

"upgradeSettings": {
    "drainTimeoutInMinutes": null,
    "maxSurge": "1",
    "nodeSoakDurationInMinutes": null,
    "undrainableNodeBehavior": "Cordon"
  }

Ellenőrizze a címkét a letiltott csomópontokon. Ha a frissítés során csatornacsomópont-hiba lép fel a következő paranccsal:

kubectl get nodes --show-labels=true

A letiltott csomópontok nincsenek ütemezve a podokhoz, és címkével "kubernetes.azure.com/upgrade-status: Quarantined"vannak megjelölve. A letiltható csomópontok maximális száma nem lehet nagyobb, mint az Max-Surge érték.

Milyen műveletet végezhetek innen?

Először oldja meg a lefolyót okozó mögöttes problémát. Az alábbi példa eltávolítja a felelős PDB-t:

kubectl delete pdb nginx-pdb
poddisruptionbudget.policy "nginx-pdb" deleted.

Ha biztos abban, hogy a probléma megoldódott, akkor továbbléphet, és eltávolíthatja a nem módosítható csomópontokra helyezett címkét "kubernetes.azure.com/upgrade-status: Quarantined" . Ez a következő módon hajtható végre:

kubectl label nodes <node-name> <label-key>-

Minden későbbi "PUT" művelet először megpróbálja összeegyeztetni a fürt "sikertelen kiépítési állapotát" a "sikeres" állapotra. A karanténba helyezett csomópontok nem tekinthetők későbbi üzembe helyezésnek vagy egyeztetésnek. A korábban említett címkéket explicit módon el kell távolítania, hogy a letiltott csomópontokat figyelembe lehessen venni.

A letiltott csomópontot az aks nodepool delete-machines a paranccsal is törölheti. Ez a parancs akkor hasznos, ha csökkenteni szeretné a csomópontkészlet lábnyomát a régebbi verziókban hátrahagyott csomópontok eltávolításával.

az aks nodepool delete-machines --cluster-name MyCluster --machine-names aks-nodepool1-test123-vmss000000 --name nodepool1 --resource-group TestRG

A lépés elvégzése után egyeztetheti a fürt állapotát úgy, hogy bármilyen frissítési műveletet végrehajt az itt ismertetett választható mezők nélkül.

Példaparancs:

az aks update --resource-group TestRG --name MyCluster

Másik lehetőségként a csomópontkészletet a frissített csomópontok számával megegyező számú csomópontra skálázhatja. Ez a művelet biztosítja, hogy a csomópontkészlet a kívánt eredeti méretre kerüljön. Az AKS rangsorolja a letiltott csomópontok eltávolítását. Ez a parancs a fürt kiépítési állapotát is visszaállítja a következőre Succeeded: . A megadott 2 példában a frissített csomópontok teljes száma látható.

az aks nodepool scale --resource-group TestRG --cluster-name MyCluster --name nodepool1 --node-count 2 

A frissítések optimalizálása a teljesítmény javítása és a fennakadások minimalizálása érdekében

A tervezett karbantartási időszak, a maximális túlfeszültség, a podkimaradás költségvetése, a csomópontok ürítési időtúllépése és a csomópontok áztatási ideje együttesen jelentősen növelheti annak valószínűségét, hogy a csomópontfrissítések sikeresen befejeződnek a karbantartási időszak végéig, ugyanakkor minimalizálja a fennakadásokat.

  • A tervezett karbantartási időszak lehetővé teszi a szolgáltatáscsapatok számára az automatikus frissítés ütemezését egy előre meghatározott időszakban, általában alacsony forgalmú időszakban a számítási feladatok hatásának minimalizálása érdekében. Javasoljuk, hogy az ablak időtartama legalább négy óra.
  • A csomópontkészlet maximális túlfeszültsége lehetővé teszi további kvóta kérését a frissítési folyamat során, és korlátozza a frissítésre kijelölt csomópontok számát egyszerre. A nagyobb maximális túlfeszültség gyorsabb frissítési folyamatot eredményez. Nem javasoljuk, hogy 100%-os értékre állítsa, mivel egyszerre frissíti az összes csomópontot, ami fennakadásokat okozhat az alkalmazások futtatásában. Az éles csomópontkészletekhez 33%-os maximális túlfeszültség-kvótát javasoljuk.
  • A podkimaradás költségvetése szolgáltatásalkalmazásokhoz van beállítva, és korlátozza az önkéntes megszakítások, például az AKS által vezérelt csomópontfrissítések során leállítható podok számát. Replikaként konfigurálható minAvailable , jelezve az aktívnak maxUnavailable vagy replikáknak minimálisan szükséges alkalmazás podok számát, jelezve a leállítható alkalmazás podok maximális számát, biztosítva az alkalmazás magas rendelkezésre állását. Tekintse meg a podkimaradási költségvetések (PDB-k) konfigurálásához megadott útmutatást. A PDB-értékeket ellenőrizni kell az adott szolgáltatáshoz leginkább megfelelő beállítások meghatározásához.
  • A csomópontlefolyó időtúllépése a csomópontkészleten lehetővé teszi a podok kiürítésének és a csomópontonkénti türelmes leállításnak a frissítés során történő várakozási időtartamának konfigurálását. Ez a beállítás akkor hasznos, ha hosszú ideig futó számítási feladatokat kezel. Ha a csomópont ürítési időtúllépése meg van adva (percekben), az AKS tiszteletben tartja a podkimaradási költségvetésekre való várakozást. Ha nincs megadva, az alapértelmezett időtúllépés 30 perc.
  • A csomópontok áztatási ideje segít szabályozni a csomópontok frissítését, és minimalizálhatja az alkalmazás állásidejét a frissítés során. A csomópontfrissítések közötti alkalmazáskészség ellenőrzéséhez megadhatja a várakozási időt, lehetőleg a lehető legjobban közel 0 percet. Ha nincs megadva, az alapértelmezett érték 0 perc. A csomópontok áztatási ideje a csomópontkészletben elérhető maximális túlfeszültség- és csomópontlefolyó időtúllépési tulajdonságokkal együtt működik, így a frissítési sebesség és az alkalmazás rendelkezésre állása szempontjából a megfelelő eredmények érhetők el.

Következő lépések

Ez a cikk az AKS-fürtök különböző frissítési lehetőségeit sorolta fel. A frissítési ajánlott eljárások és egyéb szempontok részletes ismertetését az AKS-javítás és a frissítési útmutató ismerteti.