Meningkatkan sarana kontrol kluster Azure Kubernetes Service (AKS)

Kluster Azure Kubernetes Service (AKS) terdiri dari dua komponen utama: sarana kontrol yang dikelola oleh Azure dan kumpulan simpul tempat beban kerja Anda berjalan. Artikel ini berfokus pada peningkatan sarana kontrol secara independen, yang memungkinkan Anda mengadopsi versi Kubernetes baru untuk fitur server API sambil mengelola peningkatan kumpulan simpul secara terpisah.

Sebelum Anda mulai

  • Jika Anda menggunakan Azure CLI, artikel ini memerlukan Azure CLI versi 2.34.1 atau yang lebih baru. az --version Gunakan perintah untuk menemukan versi. Jika Anda perlu menginstal atau memperbarui, lihat Install Azure CLI.
  • Jika Anda menggunakan Azure PowerShell, artikel ini memerlukan Azure PowerShell versi 5.9.0 atau yang lebih baru. Get-InstalledModule -Name Az Gunakan cmdlet untuk menemukan versi. Jika Anda perlu menginstal atau meningkatkan, lihat Install modul Azure PowerShell.
  • Melakukan operasi peningkatan memerlukan Microsoft.ContainerService/managedClusters/agentPools/write peran RBAC. Untuk informasi selengkapnya tentang peran Azure RBAC, lihat operasi penyedia sumber daya Azure.
  • Dimulai dengan versi Kubernetes versi 1.30 dan 1.27 LTS, API beta dinonaktifkan secara default saat Anda meningkatkannya.

Peringatan

Pastikan Anda memiliki kuota komputasi yang memadai sebelum meningkatkan. Jika kuota rendah, peningkatan mungkin gagal. Untuk informasi selengkapnya, lihat meningkatkan kuota.

Tinjauan umum jenis pembaruan AKS

Tabel berikut menguraikan tiga jenis peningkatan AKS, menyoroti cakupan dan kasus penggunaannya:

Jenis peningkatan Ruang lingkup Skenario penggunaan
Sarana kontrol saja Server API, dlld, manajer pengontrol, penjadwal Uji API Kubernetes baru sebelum meningkatkan beban kerja
Kluster penuh Sarana kontrol dan semua kumpulan simpul Peningkatan standar untuk menjaga kluster tetap mutakhir
Kumpulan simpul saja Kumpulan simpul tertentu Peluncuran bertahap setelah peningkatan sarana kontrol

Petunjuk / Saran

Meningkatkan sarana kontrol terlebih dahulu memungkinkan Anda memvalidasi kompatibilitas API Kubernetes sebelum memengaruhi beban kerja yang sedang berjalan. Untuk strategi peningkatan kumpulan simpul, lihat Mengonfigurasi peningkatan bergulir.

Aturan peningkatan versi Kubernetes

Saat meningkatkan kluster AKS yang didukung, Anda tidak bisa melewati versi Kubernetes minor. Anda harus melakukan semua peningkatan secara berurutan dengan nomor versi minor. Misalnya, peningkatan antara 1.28.x ->1.29.x atau 1.29.x ->1.30.x diizinkan. 1.28.x ->1.30.x tidak diizinkan.

Sarana kontrol dapat mencapai dua versi minor di depan kumpulan simpul. Misalnya, jika sarana kontrol Anda berada di 1.30.x, kumpulan simpul Anda dapat berada di 1.28.x, 1.29.x, atau 1.30.x.

Periksa pembaruan AKS yang tersedia

Petunjuk / Saran

Untuk tetap mendapatkan informasi terbaru tentang rilis dan pembaruan AKS terbaru, lihat pelacak rilis AKS.

Periksa rilis Kubernetes yang tersedia untuk kluster AKS Anda menggunakan az aks get-upgrades perintah .

az aks get-upgrades --resource-group <resource-group-name> --name <cluster-name> --output table

Contoh output berikut menunjukkan versi saat ini sebagai 1.28.9 dan mencantumkan versi yang tersedia di bawah upgrades:

Name     ResourceGroup          MasterVersion    Upgrades
-------  ---------------        ---------------  --------------
default  <resource-group-name>  1.28.9           1.29.2, 1.29.4

Tingkatkan sarana kontrol AKS saja

  1. Tingkatkan control plane menggunakan perintah az aks upgrade dengan flag --control-plane-only. Contoh berikut meningkatkan sarana kontrol ke Kubernetes versi 1.29.4:

    az aks upgrade \
        --resource-group <resource-group-name> \
        --name <cluster-name> \
        --kubernetes-version 1.29.4 \
        --control-plane-only
    
  2. Pastikan peningkatan sarana kontrol berhasil menggunakan perintah az aks show.

    az aks show --resource-group <resource-group-name> --name <cluster-name> --output table
    

    Contoh output berikut menunjukkan sarana kontrol sekarang berjalan 1.29.4:

    Name            Location    ResourceGroup          KubernetesVersion    ProvisioningState    Fqdn
    ------------    ----------  ---------------        -------------------  -------------------  ------------------------------------------------
    <cluster-name>  eastus      <resource-group-name>  1.29.4               Succeeded            <cluster-name>-dns-123abcd4.hcp.eastus.azmk8s.io
    
  3. Pastikan versi kumpulan simpul tetap tidak berubah menggunakan perintah [az aks nodepool list][az-aks-nodepool-list].

    az aks nodepool list --resource-group <resource-group-name> --cluster-name <cluster-name> --query "[].{Name:name,Version:orchestratorVersion}" --output table
    

    Dalam output, node pool seharusnya masih menampilkan versi Kubernetes sebelumnya.

Meningkatkan kluster AKS lengkap

Nota

Selama peningkatan kluster penuh, AKS meningkatkan sarana kontrol terlebih dahulu, lalu meningkatkan setiap kumpulan simpul secara berurutan. Untuk kontrol lebih lanjut atas peningkatan kumpulan simpul, lihat Mengonfigurasi peningkatan bergulir.

Tingkatkan kluster lengkap (sarana kontrol dan semua kumpulan simpul) menggunakan az aks upgrade perintah . Contoh berikut meningkatkan kluster ke Kubernetes versi 1.29.4:

az aks upgrade \
    --resource-group <resource-group-name> \
    --name <cluster-name> \
    --kubernetes-version 1.29.4

Pertanyaan Umum

Mengapa kumpulan simpul saya ditingkatkan ketika saya hanya meningkatkan sarana kontrol?

AKS dapat memicu pembaruan bergulir kumpulan node bersamaan dengan pembaruan pesawat kendali untuk menjaga kluster tetap sesuai dan sehat. Peningkatan ini biasanya terjadi ketika peningkatan simpul sebelumnya gagal atau simpul-simpul yang tertinggal berada pada versi yang bercampur.

Dapatkah saya meningkatkan kumpulan simpul sebelum sarana kontrol?

Tidak. Versi control plane harus selalu sama dengan atau lebih besar dari versi pool node mana pun. Anda harus meningkatkan sarana kontrol terlebih dahulu.

Berapa lama waktu yang dibutuhkan peningkatan sarana kontrol?

Peningkatan sarana kontrol biasanya selesai dalam waktu 5-15 menit, tergantung pada konfigurasi kluster dan beban wilayah Azure. Peningkatan kumpulan simpul membutuhkan waktu lebih lama karena melibatkan pengurasan dan penukaran kembali simpul.

Mengatasi masalah peningkatan sarana kontrol

Tidak ada peningkatan yang tersedia

Jika az aks get-upgrades tidak menunjukkan peningkatan yang tersedia, kluster Anda mungkin:

  • Sudah menggunakan versi terbaru yang didukung.
  • Pada versi yang tidak didukung yang memerlukan migrasi.

Untuk versi yang tidak didukung, buat kluster baru dengan versi yang didukung dan migrasikan beban kerja Anda.

Peningkatan gagal karena API yang tidak digunakan lagi

Sebelum meningkatkan, periksa API yang tidak digunakan lagi menggunakan alat seperti kube-no-trouble (kubent):

kubent

Perbarui manifes Anda untuk menggunakan versi API yang didukung sebelum meningkatkan.