Automatická oprava uzlu Azure Kubernetes Service (AKS)
Azure Kubernetes Service (AKS) nepřetržitě monitoruje stav pracovních uzlů a automaticky opravuje uzly, které nejsou v pořádku. Platforma virtuálního počítače Azure provádí údržbu na virtuálních počítačích, u kterých dochází k problémům . AKS ve spolupráci s virtuálními počítači Azure pomáhá minimalizovat přerušení služeb clusterů.
V tomto článku se dozvíte, jak se funkce automatické opravy uzlů chová pro uzly s Windows a Linuxem.
Jak AKS kontroluje uzly NotReady
AKS používá následující pravidla k určení, jestli uzel není v pořádku a potřebuje opravu:
- Uzel hlásí stav NotReady v po sobě jdoucích kontrolách během 10minutového časového rámce.
- Uzel nehlásí žádný stav během 10 minut.
Pomocí příkazu můžete ručně zkontrolovat stav uzlů kubectl get nodes
.
Jak funguje automatická oprava
Poznámka:
AKS inicializuje operace oprav pomocí uživatelského účtu aks-remediator.
Pokud AKS identifikuje uzel, který není v pořádku po dobu nejméně pěti minut, provede AKS následující akce:
- AKS restartuje uzel.
- Pokud uzel po restartování zůstane v pořádku, AKS ho znovu vytvoří.
- Pokud uzel po opětovném vytvoření není v pořádku a jedná se o linuxový uzel, služba AKS ho znovu nasadí.
AKS opakuje opakování restartování, opětovného vytvoření a opětovné nasazení až třikrát, pokud uzel není v pořádku. Dokončení celkového procesu automatické opravy může trvat až hodinu.
Omezení
Automatická oprava uzlu AKS je služba s nejlepším úsilím a nezaručujeme, že se uzel obnoví zpět do stavu v pořádku. Pokud váš uzel přetrvává ve špatném stavu, důrazně doporučujeme provést ruční šetření uzlu. Přečtěte si další informace o řešení potíží se stavem NotReady uzlu.
Existují případy, kdy AKS neprovádí automatickou opravu. Selhání automatické opravy uzlu může nastat buď záměrně, nebo pokud Azure nedokáže zjistit, že problém existuje. Mezi příklady, kdy se neprovádí automatická oprava, patří:
- Kvůli chybě v konfiguraci sítě se nehlásí stav uzlu.
- Uzlu se nepodařilo nejprve zaregistrovat jako uzel, který je v pořádku.
- Pokud jsou na uzlu přítomny některé z následujících taintů:
node.cloudprovider.kubernetes.io/shutdown
,ToBeDeletedByClusterAutoscaler
.
Monitorování automatické opravy uzlů pomocí událostí Kubernetes
Když AKS provádí automatickou opravu uzlu v clusteru, služba AKS vygeneruje události Kubernetes ze zdroje automatické opravy aks za účelem viditelnosti. Při automatické opravě se na objektu uzlu zobrazí následující události.
Další informace o přístupu, ukládání a konfiguraci upozornění na události Kubernetes najdete v tématu Použití událostí Kubernetes pro řešení potíží ve službě Azure Kubernetes Service.
Důvod | Zpráva o události | Popis |
---|---|---|
NodeRebootStart | Automatická oprava uzlu iniciuje akci restartování kvůli zachování stavu NotReady déle než 5 minut. | Tato událost se vygeneruje, aby vás informovala, že se má v uzlu provést restartování. Tato akce je první v celkové sekvenci automatické opravy uzlu. |
Restartování uzlu | Akce restartování z automatické opravy uzlu je dokončena. | Po dokončení restartování na uzlu se vygeneruje. Tato událost neindikuje stav uzlu (v pořádku nebo není v pořádku) po provedení restartování. |
NodeReimageStart | Automatická oprava uzlu iniciuje akci opětovného vytvoření kvůli zachování stavu NotReady po dobu delší než 5 minut. | Tato událost se vygeneruje, aby vás informovala, že se má na vašem uzlu provést opětovné vytvoření image. |
NodeReimageEnd | Je dokončena akce opětovného nastavení z automatické opravy uzlu. | Po dokončení opětovného vytvoření image na uzlu se vygeneruje. Tato událost po provedení opětovného sestavení nezvýší stav uzlu (v pořádku nebo není v pořádku). |
NodeRedeployStart | Automatická oprava uzlu iniciuje akci opětovného nasazení kvůli zachování stavu NotReady déle než 5 minut. | Tato událost se vygeneruje, aby vás informovala, když se chystáte provést opětovné nasazení na vašem uzlu. Opětovné nasazení je poslední akce v pořadí automatické opravy uzlu. |
NodeRedeployEnd | Je dokončena akce opětovného nasazení z automatické opravy uzlu. | Po opětovném nasazení se na uzlu vygeneruje znovu. Tato událost neindikuje stav uzlu (v pořádku nebo není v pořádku) po provedení opětovného nasazení. |
Pokud během procesu automatické opravy uzlu dojde k nějakým chybám, vygenerují se následující události s doslovnou chybovou zprávou. Přečtěte si další informace o řešení běžných chyb automatické opravy uzlů.
Poznámka:
Kód chyby v následujících zprávách událostí se liší v závislosti na nahlášené chybě.
Důvod | Zpráva o události | Popis |
---|---|---|
Chyba restartování uzlu | Akce automatické opravy uzlu selhala kvůli selhání operace. Podrobnosti o chybě najdete tady: Kód chyby | Vygenerováno, když dojde k chybě s akcí restartování. |
NodeReimageError | Akce automatické opravy uzlu selhala kvůli selhání operace. Podrobnosti o chybě najdete tady: Kód chyby | Vygenerováno, když dojde k chybě s akcí opětovného sestavení. |
NodeRedeployError | Akce automatické opravy uzlu selhala kvůli selhání operace. Podrobnosti o chybě najdete tady: Kód chyby | Vygenerováno, když dojde k chybě s akcí opětovného nasazení. |
Další kroky
Ve výchozím nastavení máte přístup k událostem Kubernetes a protokolům v clusteru AKS za posledních 1 hodinu. Pokud chcete ukládat a dotazovat události a protokoly za posledních 90 dnů, povolte Container Insights hlubší řešení potíží v clusteru AKS.
Azure Kubernetes Service