Azure Kubernetes Service (AKS) Windows iş yüklerinizin işletim sistemi sürümünü yükseltme
Azure Kubernetes Service'te (AKS) çalışan bir Windows iş yükünün işletim sistemi sürümünü yükseltirken, Windows sürümlerinin her düğüm havuzunda eşleştiğinden emin olmak için yeni bir düğüm havuzu dağıtmanız gerekir. Bu makalede AKS üzerindeki Windows iş yükleri için işletim sistemi sürümünü yükseltme adımları açıklanmaktadır. Bu örnek, Windows Server 2019'dan Windows Server 2022'ye yükseltmeye odaklansa da, herhangi bir Windows Server sürümünden diğerine yükseltmek için aynı işlem izlenebilir.
Windows Server işletim sistemi sürümü desteği
Windows Server işletim sisteminin yeni bir sürümü yayınlandığında, AKS bunu desteklemeye kararlıdır ve düzeltmelerden, iyileştirmelerden ve yeni işlevlerden yararlanmak için en son sürüme yükseltmenizi önerir. AKS, Windows Server 2022'den başlayarak her Windows Server sürümü için beş yıllık destek yaşam döngüsü sağlar. Bu süre boyunca AKS, yükseltmeniz için Windows Server işletim sisteminin daha yeni bir sürümünü destekleyen yeni bir sürüm yayınlar.
Not
- Windows Server 2019, Kubernetes sürüm 1.32 kullanım ömrü sonuna (EOL) ulaştıktan sonra kullanımdan kaldırılıyor. Daha fazla bilgi için bkz . AKS sürüm notları.
- Windows Server 2022, Kubernetes sürüm 1.34 kullanım ömrü sonuna (EOL) ulaştıktan sonra kullanımdan kaldırılıyor. Daha fazla bilgi için bkz . AKS sürüm notları.
Sınırlamalar
Windows Server 2019 ve Windows Server 2022, AKS'de aynı düğüm havuzunda birlikte kullanılamaz. Yeni işletim sistemi sürümünü barındırmak için yeni bir düğüm havuzu oluşturmanız gerekir. Önceki düğüm havuzunun izinlerini ve erişimini yeniyle eşleştirmeniz önemlidir.
Başlamadan önce
FROM
Dockerfile dosyanızdaki deyimini yeni işletim sistemi sürümüne güncelleştirin.- Uygulamanızı denetleyin ve kapsayıcı uygulamasının yeni işletim sistemi sürümünde çalıştığını doğrulayın.
- AKS'de doğrulanmış kapsayıcı uygulamasını bir geliştirme veya test ortamına dağıtın.
- Bu makalede kullanmak üzere yeni görüntü adını veya etiketini not alın.
Not
Windows iş yükleri için Dockerfile oluşturmayı öğrenmek için bkz . Windows'ta Dockerfile ve Windows Dockerfile'ları iyileştirme.
Var olan bir kümeye Windows Server 2022 düğüm havuzu ekleme
YAML dosyasını güncelleştirme
Düğüm Seçici, Windows düğümlerine Windows podlarının yerleştirilmesi için en yaygın ve önerilen seçenektir.
Aşağıdaki ek açıklamayı ekleyerek YAML dosyanıza Düğüm Seçici ekleyin:
nodeSelector: "kubernetes.io/os": windows
Ek açıklama kullanılabilir herhangi bir Windows düğümünü bulur ve podu bu düğüme yerleştirir (diğer tüm zamanlama kurallarını izleyerek). Windows Server 2019'dan Windows Server 2022'ye yükseltirken, bir Windows düğümünde ve en son işletim sistemi sürümünü çalıştıran bir düğümde yerleştirmeyi zorunlu kılmanız gerekir. Bunu başarmak için bir seçenek farklı bir ek açıklama kullanmaktır:
nodeSelector: "kubernetes.azure.com/os-sku": Windows2022
YAML dosyasındaki öğesini
nodeSelector
güncelleştirdikten sonra, kullanmak istediğiniz kapsayıcı görüntüsünü de güncelleştirmeniz gerekir. Bu bilgileri, Dockerfile dosyanızdaki deyimini değiştirerekFROM
kapsayıcılı uygulamanın yeni bir sürümünü oluşturduğunuz önceki adımdan alabilirsiniz.
Not
Uygulamayı ilk kez dağıtmak için kullandığınız YAML dosyasını kullanmanız gerekir. Bu, ve kapsayıcı görüntüsü dışında başka yapılandırma değişikliği olmamasını nodeSelector
sağlar.
Güncelleştirilmiş YAML dosyasını mevcut iş yüküne uygulama
komutunu kullanarak kümenizdeki düğümleri
kubectl get nodes
görüntüleyin.kubectl get nodes -o wide
Aşağıdaki örnek çıktı, oluşturduğunuz yeni düğüm havuzu ve mevcut düğüm havuzları dahil olmak üzere kümedeki tüm düğümleri gösterir:
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
komutunu kullanarak güncelleştirilmiş YAML dosyasını mevcut iş yüküne
kubectl apply
uygulayın ve YAML dosyasının adını belirtin.kubectl apply -f <filename>
Aşağıdaki örnek çıktıda dağıtım için yapılandırılmış bir durum gösterilmektedir:
deployment.apps/sample configured service/sample unchanged
Bu noktada AKS, mevcut podları sonlandırma ve Yeni podları Windows Server 2022 düğümlerine dağıtma işlemini başlatır.
komutunu kullanarak
kubectl get pods
dağıtımın durumunu denetleyin.kubectl get pods -o wide
Aşağıdaki örnek çıktı, ad alanında
default
podları gösterir: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>
Güvenlik ve kimlik doğrulamasıyla ilgili dikkat edilmesi gerekenler
Grup Yönetilen Hizmet Hesapları (gMSA) kullanıyorsanız, yeni düğüm havuzu için Yönetilen Kimlik yapılandırmasını güncelleştirmeniz gerekir. gMSA bir gizli dizi (kullanıcı hesabı ve parola) kullanır, böylece Windows podunu çalıştıran düğüm Microsoft Entra Kimliği'ne göre kapsayıcının kimliğini doğrulayabilir. Azure Key Vault'ta bu gizli diziye erişmek için düğüm, düğümün kaynağa erişmesine izin veren bir Yönetilen Kimlik kullanır. Yönetilen Kimlikler düğüm havuzu başına yapılandırıldığından ve pod artık yeni bir düğüm havuzunda bulunduğundan, bu yapılandırmayı güncelleştirmeniz gerekir. Daha fazla bilgi için bkz . Azure Kubernetes Service (AKS) kümenizdeki Windows Server düğümleriniz için Grup Yönetilen Hizmet Hesaplarını (GMSA) Etkinleştirme.
Aynı ilke, diğer Azure kaynaklarına erişirken diğer pod veya düğüm havuzları için Yönetilen Kimlikler için de geçerlidir. Yönetilen Kimlik'in sağladığı tüm erişimi yeni düğüm havuzunu yansıtacak şekilde güncelleştirmeniz gerekir. Güncelleştirme ve oturum açma etkinliklerini görüntülemek için bkz . Yönetilen Kimlik etkinliğini görüntüleme.
Sonraki adımlar
Bu makalede, AKS üzerindeki Windows iş yükleri için işletim sistemi sürümünü yükseltmeyi öğrendiniz. AKS'de Windows iş yükleri hakkında daha fazla bilgi edinmek için bkz . Azure Kubernetes Service'te (AKS) Windows kapsayıcı uygulaması dağıtma.
Azure Kubernetes Service