Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure Kubernetes Service (AKS) egy felügyelt tárolóvezénylési szolgáltatás, amely leegyszerűsíti a Kubernetes üzembe helyezését, kezelését és műveleteit.
Az Azure használatakor a megbízhatóság közös felelősség. A Microsoft számos lehetőséget kínál a rugalmasság és a helyreállítás támogatására. Ön a felelős azért, hogy megértse, hogyan működnek ezek a képességek az összes használt szolgáltatáson belül, és válassza ki azokat a képességeket, amelyekre szüksége van az üzleti célok és az üzemidő céljainak eléréséhez.
Ez a cikk azt ismerteti, hogyan teheti rugalmassá az Azure Kubernetes Service-t (AKS) számos lehetséges kimaradással és problémával szemben, beleértve az átmeneti hibákat, a rendelkezésre állási zónák kimaradását és a régió kimaradását. Azt is ismerteti, hogyan használható biztonsági másolatok más típusú problémákból való helyreállításra, és kiemeli az Azure Kubernetes Service (AKS) szolgáltatásszint-szerződéssel (SLA) kapcsolatos legfontosabb információkat.
Termelési üzembe helyezési javaslatok
Az AKS-ben való megbízható éles munkaterhelések telepítéséhez kapcsolódó javaslatokért tekintse meg az alábbi cikkeket:
- Telepítési és fürtök megbízhatósági legjobb gyakorlatok az AKS számára
- Magas rendelkezésre állás (HA) és vészhelyreállítás (DR) áttekintése az AKS-nek
- Zónarugalmassági szempontok az AKS-hez
A megbízhatósági architektúra áttekintése
Az AKS-fürt létrehozásakor az Azure platform automatikusan az alábbiakat hozza létre és konfigurálja:
Olyan vezérlősík , amely rendelkezik az API-kiszolgálóval stb., az ütemezővel és a számítási feladatok kezeléséhez szükséges egyéb podokkal.
Az előfizetéshez tartozó rendszercsomópont-készlet , amely a bővítményeket és a kube-rendszer névterében futó egyéb podokat tárolja.
A kezdeti csomópontkészlet beállítása után hozzáadhat vagy törölhet csomópontkészleteket a saját felhasználói számítási feladataihoz. Az AKS nem kezeli a csomópontkészleteket a megbízhatóság érdekében, és gondoskodnia kell arról, hogy a számítási feladatok rugalmasak legyenek az infrastruktúra hibáival szemben.
A rugalmasság ön és a Microsoft közös felelőssége. Számítási szolgáltatásként az AKS kezeli a fürt megbízhatóságának bizonyos aspektusait, de ön a felelős a többi szempont kezeléséért.
A Microsoft kezeli az AKS vezérlősíkját és egyéb felügyelt összetevőit.
Az Ön felelőssége, hogy:
Megadhatja, hogy az összetevőket, köztük a csomópontkészleteket és a szolgáltatásokhoz csatolt terheléselosztókat hogyan kell konfigurálni a megbízhatósági követelményeknek megfelelően. Az összetevők meghatározása után a Microsoft üzembe helyezi és kezeli őket az Ön nevében.
Az AKS-fürtön kívüli összetevők kezelése, beleértve a tárolást és az adatbázisokat is. Ellenőrizze, hogy ezek az összetevők megfelelnek-e a megbízhatósági követelményeknek. A számítási feladatok üzembe helyezésekor győződjön meg arról, hogy más Azure-összetevők is konfigurálva vannak a rugalmassághoz az adott szolgáltatásokra vonatkozó ajánlott eljárások követésével.
Rugalmasság átmeneti hibákhoz
Az átmeneti hibák rövid, időszakos meghibásodások a komponensekben. Gyakran előfordulnak elosztott környezetben, például a felhőben, és ezek a műveletek szokásos részei. Az átmeneti hibák rövid idő elteltével kijavítják magukat. Fontos, hogy az alkalmazások kezelni tudják az átmeneti hibákat, általában az érintett kérések újrapróbálásával.
Minden felhőalapú alkalmazásnak követnie kell az Azure átmeneti hibakezelési útmutatóját, amikor a felhőben üzemeltetett API-kkal, adatbázisokkal és egyéb összetevőkkel kommunikálnak. További információ: Átmeneti hibák kezelésére vonatkozó javaslatok.
Az AKS használatakor átmeneti hibák léphetnek fel különböző okok miatt, például az alkalmazások összeomlása, a podok skálázása és kiegyensúlyozása, a csomópontok javítása és az ideiglenes infrastruktúra hibái, például hardver- vagy hálózatkezelési problémák miatt.
Az átmeneti hibák kiküszöbölése lehetetlen, ezért az AKS által üzemeltetett alkalmazásokhoz hozzáférő ügyfeleknek fel kell készülniük a sikertelen kérések újrapróbálkozására és más átmeneti hibakezelési javaslatok követésére. Minimalizálhatja az átmeneti hibák valószínűségét, és elkerülheti vagy csökkentheti az általuk okozott állásidőt a Kubernetes és az Azure ajánlott eljárásainak követésével az üzembe helyezés során.
- Határozza meg a kiesési költségvetéseket (PDB-ket) a pod YAML fájlban, hogy megadja, hány podnak kell lennie egy
Readyállapotban adott időpontban. A PDB-k beállításakor az AKS biztosítja a replikák minimális rendelkezésre állását, amikor műveleteket hajt végre a csomópontok karanténba helyezésére és ürítésére. Ha a PDB-t nem lehet kielégíteni a frissítésekhez hasonló folyamatok során, a pod továbbra is működik, és a művelet sikertelen lehet. További információ: PDF-ek. - Az adott időpontban elérhetetlenné válható replikák maximális számának meghatározására használható
maxUnavailable. Ha például gördülő újraindítást hajt végre, az AKS biztosítja, hogy egy adott időpontban a churn alatt álló podok száma ne haladja meg amaxUnavailableértéket. További információ: maxUnavailable. - Kövesse az üzembe helyezés ajánlott eljárásait. A podreplikák alkalmazásproblémák miatt is meghiúsulhatnak. További információért tekintse meg az AKS-fürtök megbízhatóságára vonatkozó üzembe helyezési szintű ajánlott eljárásokat.
Megjegyzés:
Ha azt szeretné, hogy az AKS érvényesítse az üzembe helyezéseket az ajánlott eljárások betartására, és blokkolási vagy figyelmeztetési értesítéseket biztosítson, használhatja az üzembe helyezési óvintézkedéseket. A telepítési védelmi intézkedések felügyelt szolgáltatások, amelyek segítenek a termék ajánlott eljárásainak kikényszerítésében, mielőtt a kód telepítésre kerül a fürtre.
Rugalmasság a rendelkezésre állási zóna hibáival szemben
A rendelkezésre állási zónák fizikailag különálló adatközpont-csoportok egy Azure-régión belül. Ha egy zóna meghibásodik, a szolgáltatások a fennmaradó zónák egyikére is át tudnak adni feladatokat.
Ha olyan régióban helyez üzembe AKS-fürtöt, amely támogatja a rendelkezésre állási zónákat, a különböző összetevők különböző konfigurációs típusokat igényelnek.
Alapértelmezés szerint az AKS vezérlősík zóna-rezilíens. Ha egy zóna meghibásodik, a vezérlősík nem igényel konfigurációt vagy felügyeletet a rugalmasság eléréséhez. A vezérlősík rugalmassága azonban nem elegendő ahhoz, hogy a fürt működőképes maradjon, ha egy zóna meghibásodik. A rendszercsomópontkészlet és az üzembe helyezendő felhasználói csomópontkészletek esetében engedélyeznie kell a rendelkezésre állási zónák támogatását annak biztosításához, hogy a számítási feladatok rugalmasak legyenek a rendelkezésre állási zónák hibáival szemben.
Requirements
Régiótámogatás: Zónareziliens AKS-fürtöket bármely olyan régióban üzembe helyezhet, amely támogatja a rendelkezésre állási zónákat.
Megfontolások
Az AKS éles számítási feladatainak megbízhatóságának és rugalmasságának javításához egy régióban konfigurálnia kell az AKS-t a zónaredundanciához az alábbi konfigurációk végrehajtásával:
Több replika üzembe helyezése. A Kubernetes csomópontcímkék alapján szórja szét a podokat a csomópontokon. A számítási feladatok zónák közötti elosztásához a pod több replikáját kell üzembe helyeznie. Ha például a csomópontkészletet három zónával konfigurálja, de csak a pod egyetlen replikáját helyezi üzembe, az üzembe helyezés nem zónarugalmas.
Automatikus skálázás engedélyezése. A Kubernetes-csomópontkészletek manuális és automatikus skálázási lehetőségeket biztosítanak. Manuális skálázással szükség szerint hozzáadhat vagy törölhet csomópontokat, és függőben lévő podok várnak, amíg felskáláz egy csomópontkészletet. Az AKS által felügyelt skálázás a fürt automatikus skálázását vagy a csomópontok automatikus üzembe helyezését (NAP) használja. Az AKS növeli vagy csökkenti a csomópontok skálázását a podok igényei alapján, az előfizetés termékcsomagok kvótáján és kapacitásán belül. Ezzel a módszerrel biztosítható, hogy a podok a rendelkezésre állási zónákban elérhető csomópontokra legyenek ütemezve.
Pod topológia korlátainak beállítása. Podtopológia-eloszláskorlátok használatával szabályozhatja, hogy a podok hogyan legyenek elosztva a különböző csomópontok vagy zónák között. A korlátozások segítenek a HA, a rugalmasság és a hatékony erőforrás-használat elérésében. Ha inkább csak zónák között szeretné szétosztani a podokat, korlátozásokat állíthat be, hogy függőben lévő állapotba kényszerítse a podokat a podok zónák közötti egyensúlyának fenntartása érdekében. További információkért lásd a pod topológia szétterjedési korlátozásait.
Zónareziliens hálózatkezelés konfigurálása. Ha a podok külső forgalmat szolgálnak ki, konfigurálja a fürt hálózati architektúráját olyan szolgáltatások használatával, mint az Azure Application Gateway, az Azure Load Balancer vagy az Azure Front Door.
Győződjön meg arról, hogy a függőségek zónarugalmasak. A legtöbb AKS-alkalmazás más szolgáltatásokat használ a tároláshoz, a biztonsághoz vagy a hálózatkezeléshez. Győződjön meg arról, hogy áttekinti az adott szolgáltatások zónarugalmassági javaslatait.
Költség
Az AKS-ben a rendelkezésre állási zónák támogatásának engedélyezése nem jár külön díjjal. A rendelkezésre állási zónákban üzembe helyezett virtuális gépekért és egyéb erőforrásokért fizet.
A rendelkezésre állási zóna támogatásának konfigurálása
- Hozzon létre egy új AKS-fürtöt, amely támogatja a rendelkezésre állási zónát: A rendelkezésre állási zónák támogatásának konfigurálásához tekintse meg a rendelkezésre állási zónákat használó Azure Kubernetes Service-fürt (AKS) létrehozását.
- Migráció: Nem engedélyezheti a rendelkezésre állási zónák támogatását, miután létrehozta a fürtöt. Hozzon létre egy új klasztert, amelyben engedélyezve van a rendelkezésre állási zóna támogatása, és törölje a meglévő klasztert.
- A rendelkezésre állási zónák támogatásának letiltása: Miután létrehozott egy fürtöt, nem tilthatja le a rendelkezésre állási zónák támogatását. Ehelyett létre kell hoznia egy új fürtöt, amelyben a rendelkezésre állási zóna támogatása le van tiltva, és törölnie kell a meglévő fürtöt.
Viselkedés, ha minden zóna kifogástalan
Ez a szakasz azt ismerteti, hogy mire számíthat, ha az AKS-fürtök a rendelkezésre állási zónák támogatásához vannak konfigurálva, és az összes rendelkezésre állási zóna működőképes.
Forgalomirányítás zónák között: Amikor elérhetőségi zónákat használó AKS-fürtöt helyez üzembe, fontos biztosítani, hogy a hálózati összetevők is zónákhoz alkalmazkodóak legyenek. A terheléselosztóktól és a használt egyéb hálózati összetevőktől függően előfordulhat, hogy explicit módon konfigurálnia kell az összetevőket, hogy a forgalmat a megfelelő zónák megfelelő csomópontjaihoz irányítják, és reagáljanak a zónakimaradásokra. További információkért lásd az AKS zónarugalmassági szempontjait.
Adatreplikálás zónák között: Állapot nélküli számítási feladat futtatásakor felügyelt Azure-szolgáltatásokat, például Azure-adatbázisokat, Azure Managed Redist vagy Azure Storage-t kell használnia az alkalmazásadatok tárolásához. Ezekkel a szolgáltatásokkal biztosíthatja, hogy a forgalom át lehessen helyezni a csomópontokon és zónákon anélkül, hogy adatvesztést kockáztatna, vagy hatással lenne a felhasználói élményre. A Kubernetes telepítések, szolgáltatások, és állapot ellenőrzők használatával kezelheti az állapot nélküli podokat, és egyenletes eloszlást biztosíthat a zónák között.
Ha azure-lemezekkel kell tárolnia az állapotot a fürtön belül, az Azure zónaredundáns tároló használatával biztosíthatja, hogy az adatok replikálva legyenek több rendelkezésre állási zónában. További információ: A megfelelő lemeztípus kiválasztása az alkalmazás igényeinek megfelelően.
Viselkedés zónahiba esetén
Ez a szakasz azt ismerteti, mire számíthat, ha a rendelkezésre állási zóna kiesése következik be, miközben az AKS-fürtök rendelkezésre állási zóna támogatással vannak konfigurálva.
Észlelés és válasz: Zónakimaradás esetén a vezérlősík automatikusan meghibásodik. Ha a csomópontkészletek rendelkezésre állási zónákat használnak, és követik a zóna rugalmasságával kapcsolatos ajánlott eljárásokat, az AKS várhatóan üzembe helyezi a csomópontokat és a replikákat a működési zónákban. Az AKS ezt a feladatot automatikusan elvégzi, ha olyan felügyelt megoldásokat használ, mint a Cluster autoscaler vagy a NAP. Automatikus skálázás nélkül a csomópontok és replikák függő állapotban maradnak, és megvárják, amíg a manuális beavatkozás felskálázza a csomópontkészletet.
Az AKS megpróbálja újraegyensúlyozni a podokat az egészséges zónák között. Ha úgy dönt, hogy manuálisan skálázza a csomópontkészletet egy zóna kiesési forgatókönyv esetén, előfordulhat, hogy a podok függőben állapotban maradnak, ha nincsenek elérhető csomópontok a működőképes zónákban. A fennmaradó zónákban való méretezés a használt VM SKU kvótájának és kapacitásának rendelkezésre állásától is függ.
Értesítés: A Microsoft nem értesíti automatikusan, ha egy zóna le van omlva. Az Azure Resource Health használatával azonban figyelheti az egyes erőforrások állapotát, és beállíthat Resource Health-riasztásokat a problémákról való értesítéshez. Az Azure Service Health használatával is megismerheti a szolgáltatás általános állapotát, beleértve a zónahibákat is, és beállíthat Service Health-riasztásokat a problémákról való értesítéshez.
A csomópontok és podok állapotmutatóit is használhatja arra, hogy figyelje a csomópontok és podok állapotát.
Aktív kérések: Az aktív kérések fennakadásokat tapasztalhatnak. Egyes kérések sikertelenek lehetnek, és a késés növekedhet, miközben a számítási feladat egy másik zónába omlik át.
Várható adatvesztés: Ha azure-lemezekkel tárolja az állapotot a fürtön belül, és zónaredundáns tárolást használ, akkor a zónahiba várhatóan nem okoz adatvesztést.
Várható állásidő: Ha megfelelően konfigurálja a zónaredundanciát a fürthöz és a podokhoz, akkor egy zónahiba várhatóan nem okoz állásidőt az AKS-munkaterhelés számára.
Forgalom átirányítása: A terheléselosztók átirányítják az új bejövő kéréseket az kifogástalan állapotú csomópontokon futó podokra.
További információkért lásd az AKS zónarugalmassági szempontjait.
Zóna helyreállítása
Amikor a rendelkezésre állási zóna helyreáll, a visszaállítás működése az összetevőtől függ.
Vezérlősík: Az AKS automatikusan visszaállítja a vezérlősík műveleteit az összes rendelkezésre állási zónában. Nincs szükség manuális beavatkozásra.
Csomópontkészletek és csomópontok: Közvetlenül a feladat-visszavétel után a csomópontok a korábban kifogástalan állapotú zónákban maradnak, és nem kerülnek visszaállításra a helyreállított zónában. Amikor azonban legközelebb csomópontméretezési műveletet hajt végre, például a csomópontkészlet horizontális felskálázásakor, a csomópontkészlet létrehozhat csomópontokat a helyreállított zónában.
Podok: Közvetlenül a feladat-visszavétel után a podok továbbra is azon a csomóponton futnak, amelyen jelenleg is futnak. Új podok létrehozásakor vagy a meglévő podok újbóli létrehozásakor jogosultak a helyreállított zónában lévő csomópontok használatára.
Raktározás: A podokhoz csatlakoztatott tárolók a zónaredundáns tárolás működése alapján regenerálódnak.
Zónahibák tesztelése
A rendelkezésre állási zónák hibáival szembeni rugalmasságát az alábbi módszerekkel tesztelheti:
- Kordon- és csatornacsomópontok egyetlen rendelkezésre állási zónában
- Rendelkezésre állási zóna meghibásodásának szimulálása az Azure Chaos Studióval
Rugalmasság régiószintű hibákhoz
Az AKS-fürtök egyetlen régióhoz tartozó erőforrások. Ha a régió nem érhető el, az AKS klaszter sem érhető el.
Egyéni többrégiós megoldások a rugalmasság érdekében
Ha több Azure-régióban kell üzembe helyeznie a Kubernetes-számítási feladatokat, két lehetősége van ezeknek a fürtöknek a vezénylésére.
Ha egyszerűbb, felügyelt felhasználói élményt szeretne, használja az Azure Kubernetes Fleet Managert . Az Azure Kubernetes Fleet Manager használatával:
Az AKS-fürtöket egyetlen egységként kezelheti, és ezek a fürtök több Azure-régióban is eloszthatók.
Automatizálja a fürtkezelés bizonyos aspektusait, például a fürt- és csomópontrendszerképek frissítését.
A forgalomelosztási funkciók használatával eloszthatja a forgalmat a fürtök között, és automatikusan áttérhet egy másikra, amennyiben egy régió nem elérhető.
Manuális aktív-aktív vagy aktív-passzív üzembehelyezési modell használatával vezényelje a feladatátvételt, ha a számítási feladat a régiók közötti feladatátvételek különböző összetevőinek árnyaltabb vezérlését igényli. További információkért lásd az AKS HA és DR áttekintését.
Biztonsági mentés és visszaállítás
Az Azure Backup rendelkezik egy bővítménysel, amellyel biztonsági másolatot készíthet az AKS-fürt erőforrásairól és a fürthöz csatolt állandó kötetekről. A mentési tároló a bővítményen keresztül kommunikál az AKS-fürttel a biztonsági mentések és visszaállítások végrehajtása érdekében.
Ha az AKS-fürt egy párosított régióban található, a biztonsági másolatokat georedundáns tárolásra konfigurálhatja. A georedundáns biztonsági másolatokat visszaállíthatja a párosított régióba.
További információkért lásd a következő cikkeket:
- Mi az Azure Kubernetes Service biztonsági mentés?
- Az AKS biztonsági mentése az Azure Backup használatával
A legtöbb megoldás esetében nem szabad kizárólag biztonsági másolatokra támaszkodnia. Ehelyett használja az útmutatóban ismertetett egyéb képességeket a rugalmassági követelmények támogatására. A biztonsági másolatok azonban védelmet nyújtanak bizonyos kockázatok ellen, amelyeket más megközelítések nem. További információ: Mi a redundancia, a replikáció és a biztonsági mentés?
Törekedjen állapot nélküli fürtök használatára, amelyek minimálisra csökkentik a biztonsági mentés szükségességét. Az adatokat ne a fürtön belül, hanem külső tárolórendszerekben és adatbázisokban tárolja.
A szolgáltatás karbantartásával szembeni rugalmasság
Az AKS karbantartást végez a fürtön, beleértve a fürt és a csomópont képfájljainak frissítését is. Annak érdekében, hogy a Kubernetes a frissítések során is fenntartsa az éles forgalom kiszolgálásához szükséges podpéldányok minimális számát, konfigurálja a podokat a podok megszakítási költségvetésének használatára.
A kritikus időszakok szolgáltatáskimaradásainak csökkentése érdekében az AKS vezérlőket biztosít a tervezett karbantartási idők megadásához. További információ: Tervezett karbantartás használata az Azure Kubernetes Service-fürt frissítéseinek ütemezéséhez és szabályozásához.
Szolgáltatásiszint-szerződés
Az Azure-szolgáltatások szolgáltatásiszint-szerződése (SLA) leírja az egyes szolgáltatások várható elérhetőségét, valamint azokat a feltételeket, amelyeket a megoldásnak teljesítenie kell a rendelkezésre állási elvárás eléréséhez. További információ: SLA-k az online szolgáltatásokhoz.
Az AKS három árkategóriát biztosít a fürtkezeléshez: Ingyenes, Standard és Premium. Az ingyenes szint lehetővé teszi az AKS használatát a számítási feladatok teszteléséhez. A Standard és a Premium szintek éles számítási feladatokhoz vannak kialakítva. Amikor egy olyan AKS-fürtöt helyez üzembe, amelyben a rendelkezésre állási zónák engedélyezve vannak, az SLA-ban meghatározott üzemidő-százalék nő. Az SLA azonban csak akkor érvényes, ha egy fürtöt a Standard vagy a Premium tarifacsomagban helyez üzembe.