Hlavně nepanikařte, dokud cluster a služby jedou, je to v pohodě. K této situaci se můžete dostat jak terraformem, tak ručním kliknutím na upgrade clusteru přímo v Azure, nebo AZ commandy, je to jedno.
Může to být způsobeno několika různými faktory, nicméně v tomto článku vám ukážu, jak to vyřešit naprosto elegantně a čistě. Sice přímo v AZURE, ale pokud nemáte v tenantovi povoleno vstoupit do AZ konzole, tak paradoxně „ruční“ vyklikání pro vás může být řešení. Na konci návodu si přesto ukážeme řešení přes AZ commandy. Řešení Terraformem ukazovat nebudeme, protože ten se vždy liší napříč firmami i jednotlivými implementacemi, moduly, šablony, které se neustále mění a je velká pravděpodobnost toho, že jak bych to tu uváděl, nemuselo by vám to fungovat, kdybyste to zkoušeli na vlastní „testovací“ infrastruktuře.

Klikněte si na problémový cluster v Azure,

Vlevo vyberte Settings / Node pools


Best practicies: Pokud to děláte ve firmě, vždy informujte o vašem postupu management a udržujte management informovaný po celou dobu provádění těchto operací, které musíte mít managementem schváleny, aby na vás v případě totálního failu nespadla plná zodpovědnost za neschválený zákrok v infrastruktuře.

Jakmile tak uděláte, tak např. v nástrojích K9s už uvidíte, že začíná drain node, vytáčení další nody v nové verzi a proces upgradu se automaticky zase rozbíhá. Klíčové k úspěchu je, aby se upgradovala master noda a pak už jste v pohodě.
Totéž s AZ commandy
Nyní si ukážeme totéž, ale s AZ commandy. Pojmenoval jsem si cluster kubernetovina.
Prvně zjistíme, jak na tom jsme:
# Zobraz aktuální verzi a informace o clusteru
az login
#vyplivne to url a kód pro přihlášení, otevřete v novém panelu prohlížeče https://login.microsoftonline.com/devicelogin, vložíte kód k přihlášení a po přihlášení uvidíte tohle:
Pak zvolíte tenant. Stačí číslo úplně vlevo [1], [2], [3], [4]...
az aks show \
--resource-group <vaše-resource-groupa> \
--name kubernetovina \
--output table
#vypíše:
# Zobraz dostupné verze pro upgrade
az aks get-upgrades \
--resource-group <vaše-resource-groupa> \
--name kubernetovina \
--output table
Potom se můžem vrhnout do upgradu:
Ukáže (po upgradu na 1.30.10 nabízí novější verze):

az aks upgrade \
--resource-group <vaše-resource-groupa> \
--name kubernetovina \
--kubernetes-version 1.30.10 \
--yes
# V ukázce upgraduji na 1.31.7
- Running ..
A teď už jen upgradujeme všechny node pooly, které v kubernetes clusteru jsou. Pozor! Některé clustery mohou mít více než 1 nodepoolů, je proto nutné upgradovat jeden za druhým.
az aks nodepool upgrade \
--resource-group <vaše-resource-groupa> \
--cluster-name kubernetovina \
--name <nodepool-name> \
--kubernetes-version 1.30.10 \
--yes