API Kubernetes 1.26 yang tidak digunakan lagi


Halaman ini menjelaskan cara menyiapkan cluster untuk upgrade ke GKE versi 1.26. Anda dapat menemukan klien API yang melakukan panggilan ke API yang tidak digunakan lagi dan dihapus di 1.26, dan mengupdate klien tersebut agar menggunakan GA API. Untuk mengetahui informasi lebih mendetail, lihat panduan migrasi API Kubernetes yang tidak digunakan lagi.

Menghapus API pada versi 1.26

API yang tidak digunakan lagi di Kubernetes versi 1.26 adalah API Beta yang telah dialihkan ke GA (misalnya v2) atau dari satu versi Beta ke versi lainnya (misalnya, v1beta1 ke v1beta2). API GA memberikan jaminan kompatibilitas jangka panjang dan harus digunakan sebagai pengganti API Beta yang tidak digunakan lagi.

Semua objek yang ada untuk API yang telah beralih ke versi baru dapat berinteraksi dengan menggunakan API yang diperbarui.

Resource kontrol alur

Versi API flowcontrol.apiserver.k8s.io/v1beta1 FlowSchema dan PriorityLevelConfiguration tidak lagi tersedia pada versi 1.26.

Migrasikan manifes dan klien API untuk menggunakan versi API flowcontrol.apiserver.k8s.io/v1beta3, yang tersedia mulai versi 1.26. Semua objek persisten yang sudah ada dapat diakses menggunakan API baru.

HorizontalPodAutoscaler

Versi API autoscaling.apiserver.k8s.io/v2beta2 HorizontalPodAutoscaler tidak lagi tersedia pada versi 1.26.

Migrasikan manifes dan klien API untuk menggunakan versi API autoscaling.apiserver.k8s.io/v2, yang tersedia mulai versi 1.23. Semua objek yang dipertahankan dan yang sudah ada dapat diakses menggunakan API baru.

Bersiap untuk upgrade ke versi 1.26

Anda tidak perlu menghapus dan membuat ulang objek API apa pun. Semua objek API yang dipertahankan dan yang sudah ada untuk API yang ditingkatkan ke GA sudah dapat dibaca dan diperbarui menggunakan versi API baru.

Namun, sebaiknya migrasikan klien dan manifes Anda sebelum mengupgrade ke Kubernetes 1.26. Untuk mempelajari lebih lanjut, silakan melihat Panduan Migrasi API Kubernetes yang Tidak Digunakan Lagi.

Anda dapat melihat insight dan rekomendasi penghentian penggunaan untuk menentukan apakah cluster Anda menggunakan API Kubernetes 1.26 yang tidak digunakan lagi. GKE menghasilkan insight penghentian penggunaan saat agen pengguna memanggil API yang tidak digunakan lagi. Insight ini tidak dihasilkan dari konfigurasi objek Kubernetes Anda.

Menemukan cluster yang menggunakan API yang tidak digunakan lagi

Anda dapat menemukan cluster mana yang menggunakan API yang tidak digunakan lagi melalui insight penghentian penggunaan. Insight penghentian penggunaan juga menyediakan informasi seperti klien API mana yang memanggil API yang tidak digunakan lagi di cluster Anda.

Anda juga dapat menggunakan log audit untuk menemukan klien mana yang melakukan panggilan ke API yang tidak digunakan lagi.

Menemukan klien API yang melakukan panggilan tulis ke API yang tidak digunakan lagi

Untuk cluster dengan Google Cloud Observability yang diaktifkan, Anda dapat menggunakan kueri log audit Aktivitas Admin berikut untuk menampilkan penggunaan API yang tidak digunakan lagi oleh agen pengguna yang tidak dikelola oleh Google:

resource.type="k8s_cluster"
labels."k8s.io/removed-release"="DEPRECATED_API_MINOR_VERSION"
protoPayload.authenticationInfo.principalEmail:("system:serviceaccount" OR "@")
protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:kube-system:")

Ganti DEPRECATED_API_MINOR_VERSION dengan versi minor yang menghapus API yang tidak digunakan lagi, misalnya 1.22.

Log audit Aktivitas Admin diaktifkan secara otomatis untuk cluster GKE. Dengan kueri ini, log menampilkan agen pengguna yang melakukan panggilan tulis ke API yang tidak digunakan lagi.

Menemukan klien API yang melakukan panggilan baca ke API yang tidak digunakan lagi

Secara default, log audit hanya menampilkan panggilan tulis ke API yang tidak digunakan lagi. Untuk juga menampilkan panggilan baca ke API yang tidak digunakan lagi, konfigurasi log audit Akses Data.

Ikuti petunjuk untuk Mengonfigurasi log audit Akses Data dengan Konsol Google Cloud. Di Konsol Google Cloud, pilih Kubernetes Engine API. Di tab Log Types pada panel informasi, pilih Admin Read dan Data Read.

Dengan mengaktifkan log ini, Anda kini dapat menggunakan kueri asli untuk melihat panggilan baca dan panggilan tulis ke API yang tidak digunakan lagi.

Mengupgrade komponen pihak ketiga

Insight penghentian penggunaan dapat menampilkan hasil untuk agen pihak ketiga yang melakukan panggilan ke API yang tidak digunakan lagi di cluster Anda.

Untuk mengatasi agen pihak ketiga yang memanggil API yang tidak digunakan lagi, sebaiknya lakukan praktik terbaik berikut:

  1. Hubungi penyedia software pihak ketiga Anda untuk mengetahui apakah mereka memiliki versi yang telah diupdate.
  2. Upgrade software pihak ketiga ke versi terbarunya. Jika tidak dapat mengupgrade software, Anda harus menguji apakah mengupgrade GKE ke versi tersebut, dan menghapus API yang tidak digunakan lagi, akan merusak layanan Anda.

Sebaiknya lakukan upgrade ini dan upgrade versi GKE pada cluster staging untuk memantau gangguan sebelum Anda mengupgrade cluster produksi.

Mengupdate cluster yang terdampak oleh penghentian penggunaan

Untuk mengupgrade cluster yang terdampak oleh penghentian penggunaan, lakukan langkah-langkah berikut:

  1. Periksa agen pengguna mana yang menggunakan API yang tidak digunakan lagi di log.
  2. Update agen pengguna yang menggunakan API yang tidak digunakan lagi agar menggunakan versi API yang didukung.
  3. Update software pihak ketiga yang memanggil API yang tidak digunakan lagi ke versi terbarunya.
  4. Upgrade cluster pengujian dan uji aplikasi Anda di lingkungan pengujian sebelum mengupgrade cluster produksi untuk mengurangi risiko gangguan saat API yang tidak digunakan lagi tidak lagi tersedia.
  5. Jika Anda tidak dapat mengupdate agen pengguna yang terdampak, upgrade cluster pengujian terpisah untuk memeriksa apakah upgrade tersebut menyebabkan gangguan. Jika upgrade itu tidak menyebabkan gangguan, Anda dapat mengupgrade cluster secara manual.

  6. Setelah Anda mengupdate semua agen pengguna, GKE menunggu hingga tidak ada lagi penggunaan API yang tidak digunakan lagi selama 30 hari, lalu membatalkan pemblokiran upgrade otomatis. Upgrade otomatis akan dilanjutkan sesuai dengan jadwal rilis.

Referensi

Informasi selengkapnya tersedia di dokumentasi OSS Kubernetes: