Upgrade verze operačního systému pro úlohy Azure Kubernetes Service (AKS) Pro Windows
Při upgradu verze operačního systému spuštěné úlohy Windows ve službě Azure Kubernetes Service (AKS) musíte nasadit nový fond uzlů, aby se zajistilo, že verze Windows odpovídají jednotlivým fondům uzlů. Tento článek popisuje postup upgradu verze operačního systému pro úlohy Windows v AKS. I když se tento příklad zaměřuje na upgrade z Windows Serveru 2019 na Windows Server 2022, můžete použít stejný postup pro upgrade z jakékoli verze Windows Serveru na jinou.
Podpora verzí operačního systému Windows Server
Po vydání nové verze operačního systému Windows Server se AKS zavazuje podporovat a doporučovat upgrade na nejnovější verzi, abyste mohli využívat opravy, vylepšení a nové funkce. AKS poskytuje pětiletý životní cyklus podpory pro každou verzi Windows Serveru počínaje Systémem Windows Server 2022. Během této doby bude AKS vydávat novou verzi, která podporuje novější verzi operačního systému Windows Server, na kterou můžete upgradovat.
Poznámka:
Omezení
Windows Server 2019 a Windows Server 2022 nemůžou existovat ve stejném fondu uzlů v AKS. Abyste mohli hostovat novou verzi operačního systému, musíte vytvořit nový fond uzlů. Je důležité, abyste při shodě s oprávněními a přístupem k předchozímu fondu uzlů odpovídali novému fondu uzlů.
Než začnete
FROM
Aktualizujte příkaz v souboru Dockerfile na novou verzi operačního systému.- Zkontrolujte aplikaci a ověřte, že aplikace kontejneru funguje na nové verzi operačního systému.
- Nasaďte ověřenou aplikaci kontejneru v AKS do vývojového nebo testovacího prostředí.
- Poznamenejte si název nebo značku nové image pro použití v tomto článku.
Poznámka:
Informace o vytvoření souboru Dockerfile pro úlohy Windows najdete v souboru Dockerfile ve Windows a optimalizaci souborů Dockerfile systému Windows.
Přidání fondu uzlů s Windows Serverem 2022 do existujícího clusteru
- Přidejte fond uzlů systému Windows Server 2022 do existujícího clusteru.
Aktualizace souboru YAML
Výběr uzlu je nejběžnější a doporučenou možností pro umístění podů Windows na uzlech Windows.
Přidejte do souboru YAML selektor uzlu přidáním následující poznámky:
nodeSelector: "kubernetes.io/os": windows
Poznámka najde jakýkoli dostupný uzel Windows a umístí pod na tento uzel (podle všech ostatních pravidel plánování). Při upgradu z Windows Serveru 2019 na Windows Server 2022 je potřeba vynutit umístění na uzlu Windows a uzel s nejnovější verzí operačního systému. K tomuto účelu je jednou z možností použití jiné poznámky:
nodeSelector: "kubernetes.azure.com/os-sku": Windows2022
Po aktualizaci
nodeSelector
v souboru YAML je také potřeba aktualizovat image kontejneru, kterou chcete použít. Tyto informace můžete získat z předchozího kroku, ve kterém jste vytvořili novou verzi kontejnerizované aplikace změnouFROM
příkazu v souboru Dockerfile.
Poznámka:
Měli byste použít stejný soubor YAML, který jste použili k počátečnímu nasazení aplikace. Tím se zajistí, že se kromě image kontejneru a image kontejneru nodeSelector
nezmění žádná jiná konfigurace.
Použití aktualizovaného souboru YAML u existující úlohy
Pomocí příkazu zobrazte uzly v clusteru
kubectl get nodes
.kubectl get nodes -o wide
Následující příklad výstupu ukazuje všechny uzly v clusteru, včetně nového fondu uzlů, který jste vytvořili, a stávajících fondů uzlů:
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME aks-agentpool-18877473-vmss000000 Ready agent 5h40m v1.23.8 10.240.0.4 <none> Ubuntu 18.04.6 LTS 5.4.0-1085-azure containerd://1.5.11+azure-2 akspoolws000000 Ready agent 3h15m v1.23.8 10.240.0.208 <none> Windows Server 2022 Datacenter 10.0.20348.825 containerd://1.6.6+azure akspoolws000001 Ready agent 3h17m v1.23.8 10.240.0.239 <none> Windows Server 2022 Datacenter 10.0.20348.825 containerd://1.6.6+azure akspoolws000002 Ready agent 3h17m v1.23.8 10.240.1.14 <none> Windows Server 2022 Datacenter 10.0.20348.825 containerd://1.6.6+azure akswspool000000 Ready agent 5h37m v1.23.8 10.240.0.115 <none> Windows Server 2019 Datacenter 10.0.17763.3165 containerd://1.6.6+azure akswspool000001 Ready agent 5h37m v1.23.8 10.240.0.146 <none> Windows Server 2019 Datacenter 10.0.17763.3165 containerd://1.6.6+azure akswspool000002 Ready agent 5h37m v1.23.8 10.240.0.177 <none> Windows Server 2019 Datacenter 10.0.17763.3165 containerd://1.6.6+azure
Použijte aktualizovaný soubor YAML na existující úlohu pomocí
kubectl apply
příkazu a zadejte název souboru YAML.kubectl apply -f <filename>
Následující příklad výstupu ukazuje nakonfigurovaný stav nasazení:
deployment.apps/sample configured service/sample unchanged
V tomto okamžiku AKS spustí proces ukončení existujících podů a nasazení nových podů do uzlů Windows Serveru 2022.
Pomocí příkazu zkontrolujte stav nasazení
kubectl get pods
.kubectl get pods -o wide
Následující příklad výstupu ukazuje pody v
default
oboru názvů:NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES sample-7794bfcc4c-k62cq 1/1 Running 0 2m49s 10.240.0.238 akspoolws000000 <none> <none> sample-7794bfcc4c-rswq9 1/1 Running 0 2m49s 10.240.1.10 akspoolws000001 <none> <none> sample-7794bfcc4c-sh78c 1/1 Running 0 2m49s 10.240.0.228 akspoolws000000 <none> <none>
Důležité informace o zabezpečení a ověřování
Pokud používáte skupinové účty spravované služby (gMSA), musíte aktualizovat konfiguraci spravované identity pro nový fond uzlů. GMSA používá tajný kód (uživatelský účet a heslo), aby uzel, na kterém běží pod Windows, mohl ověřit kontejner na základě ID Microsoft Entra. Pro přístup k tomuto tajnému kódu ve službě Azure Key Vault používá uzel spravovanou identitu, která uzlu umožňuje přístup k prostředku. Vzhledem k tomu, že spravované identity jsou nakonfigurované na fond uzlů a pod se teď nachází v novém fondu uzlů, musíte tuto konfiguraci aktualizovat. Další informace najdete v tématu Povolení skupinových účtů spravované služby (GMSA) pro uzly Windows Serveru v clusteru Azure Kubernetes Service (AKS).
Stejný princip se vztahuje na spravované identity pro jakýkoli jiný fond podů nebo uzlů při přístupu k jiným prostředkům Azure. Potřebujete aktualizovat veškerý přístup, který spravovaná identita poskytuje, aby odrážel nový fond uzlů. Pokud chcete zobrazit aktivity aktualizace a přihlašování, podívejte se, jak zobrazit aktivitu spravované identity.
Další kroky
V tomto článku jste zjistili, jak upgradovat verzi operačního systému pro úlohy Windows v AKS. Další informace o úlohách Windows v AKS najdete v tématu Nasazení aplikace typu kontejner pro Windows ve službě Azure Kubernetes Service (AKS).
Azure Kubernetes Service