Peningkatan citra node Azure Kubernetes Service (AKS)

Azure Kubernetes Service (AKS) secara teratur menyediakan gambar simpul baru, sehingga bermanfaat untuk sering meningkatkan gambar simpul Anda untuk menggunakan fitur AKS terbaru. Gambar simpul Linux diperbarui setiap minggu, dan gambar simpul Windows diperbarui setiap bulan. Pengumuman peningkatan gambar disertakan dalam catatan rilis AKS, dan dapat memakan waktu hingga seminggu agar pembaruan ini diluncurkan di semua wilayah. Peningkatan gambar node juga dapat dilakukan secara otomatis dan terjadwal menggunakan pemeliharaan terencana. Untuk informasi selengkapnya, lihat Meningkatkan gambar simpul secara otomatis.

Artikel ini menunjukkan kepada Anda cara meningkatkan gambar node kluster AKS dan cara memperbarui gambar kumpulan simpul tanpa meningkatkan versi Kubernetes. Untuk informasi tentang peningkatan versi Kubernetes untuk kluster Anda, lihat Peningkatan kluster AKS.

Catatan

Kluster AKS harus menggunakan set skala komputer virtual untuk node-node tersebut.

Tidak dimungkinkan untuk menurunkan versi gambar simpul (misalnya AKSUbuntu-2204 ke AKSUbuntu-1804, atau AKSUbuntu-2204-202308.01.0 ke AKSUbuntu-2204-202307.27.0).

Periksa peningkatan gambar simpul yang tersedia

Periksa peningkatan gambar simpul yang tersedia menggunakan az aks nodepool get-upgrades perintah .

az aks nodepool get-upgrades \
    --nodepool-name mynodepool \
    --cluster-name myAKSCluster \
    --resource-group myResourceGroup

Output menunjukkan latestNodeImageVersion, seperti dalam contoh berikut:

{
  "id": "/subscriptions/XXXX-XXX-XXX-XXX-XXXXX/resourcegroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/agentPools/mynodepool/upgradeProfiles/default",
  "kubernetesVersion": "1.17.11",
  "latestNodeImageVersion": "AKSUbuntu-1604-2020.10.28",
  "name": "default",
  "osType": "Linux",
  "resourceGroup": "myResourceGroup",
  "type": "Microsoft.ContainerService/managedClusters/agentPools/upgradeProfiles",
  "upgrades": null
}

Contoh output menunjukkan AKSUbuntu-1604-2020.10.28 sebagai latestNodeImageVersion.

Bandingkan versi terbaru dengan versi gambar simpul Anda saat ini menggunakan az aks nodepool show perintah .

az aks nodepool show \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --name mynodepool \
    --query nodeImageVersion

Output Anda akan terlihat serupa dengan contoh berikut:

"AKSUbuntu-1604-2020.10.08"

Dalam contoh ini, ada peningkatan versi gambar simpul yang tersedia, yaitu dari versi AKSUbuntu-1604-2020.10.08 ke versi AKSUbuntu-1604-2020.10.28.

Tingkatkan semua gambar simpul di semua kumpulan simpul

Tingkatkan gambar simpul menggunakan az aks upgrade perintah dengan --node-image-only bendera .

az aks upgrade \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --node-image-only

Anda dapat memeriksa status gambar simpul menggunakan kubectl get nodes perintah .

Catatan

Perintah ini mungkin sedikit berbeda bergantung pada shell yang Anda gunakan. Untuk informasi selengkapnya tentang lingkungan Windows dan PowerShell, lihat dokumentasi JSONPath Kubernetes.

kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'

Setelah peningkatan selesai, gunakan az aks show perintah untuk mendapatkan detail kumpulan simpul yang diperbarui. Citra node saat ini ditampilkan di properti nodeImageVersion.

az aks show \
    --resource-group myResourceGroup \
    --name myAKSCluster

Meningkatkan kumpulan node tertentu

Untuk memperbarui gambar OS kumpulan simpul tanpa melakukan peningkatan kluster Kubernetes, gunakan az aks nodepool upgrade perintah dengan --node-image-only bendera .

az aks nodepool upgrade \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --name mynodepool \
    --node-image-only

Anda dapat memeriksa status gambar simpul dengan kubectl get nodes perintah .

Catatan

Perintah ini mungkin sedikit berbeda bergantung pada shell yang Anda gunakan. Untuk informasi selengkapnya tentang lingkungan Windows dan PowerShell, lihat dokumentasi JSONPath Kubernetes.

kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'

Setelah peningkatan selesai, gunakan az aks nodepool show perintah untuk mendapatkan detail kumpulan simpul yang diperbarui. Citra node saat ini ditampilkan di properti nodeImageVersion.

az aks nodepool show \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --name mynodepool

Meningkatkan citra node dengan lonjakan node

Untuk mempercepat proses peningkatan citra node, Anda dapat meningkatkan citra node menggunakan nilai lonjakan node yang dapat disesuaikan. Secara default, AKS menggunakan satu simpul tambahan untuk mengonfigurasi peningkatan.

Jika Anda ingin meningkatkan kecepatan peningkatan, gunakan az aks nodepool update perintah dengan --max-surge bendera untuk mengonfigurasi jumlah simpul yang digunakan untuk peningkatan. Untuk mempelajari selengkapnya tentang konsekuensi berbagai pengaturan --max-surge, lihat Menyesuaikan peningkatan lonjakan node.

az aks nodepool update \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --name mynodepool \
    --max-surge 33% \
    --no-wait

Anda dapat memeriksa status gambar simpul dengan kubectl get nodes perintah .

kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'

Gunakan az aks nodepool show untuk mendapatkan detail kumpulan node yang diperbarui. Citra node saat ini ditampilkan di properti nodeImageVersion.

az aks nodepool show \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --name mynodepool

Langkah berikutnya