All Products
Search
Document Center

Container Service for Kubernetes:Catatan rilis ACK Kubernetes 1.30

Last Updated:Nov 11, 2025

Alibaba Cloud Container Service for Kubernetes (ACK) mematuhi program Kubernetes Certified Conformance. Topik ini menjelaskan perubahan utama dalam Kubernetes 1.30 untuk ACK, termasuk catatan pembaruan, fitur baru, fitur dan API yang tidak digunakan lagi, serta feature gate.

Versi komponen

Tabel berikut mencantumkan versi komponen inti dalam kluster ACK.

Komponen inti

Nomor versi

Kubernetes

1.30.7-aliyun.1, 1.30.1-aliyun.1

etcd

v3.5.9

containerd

1.6.28

CoreDNS

v1.9.3.10-7dfca203-aliyun

CSI

CNI

Flannel v0.15.1.22-20a397e6-aliyun

Terway dan TerwayControlplane v1.9.0 dan yang lebih baru

Catatan

Mulai dari v1.30, saat Anda membuat kluster baru dan memilih Terway NetworkPolicy, kebijakan jaringan diimplementasikan menggunakan eBPF. Peningkatan kluster atau komponennya tidak mengubah perilaku ini. Untuk informasi selengkapnya, lihat Menggunakan kebijakan jaringan di kluster ACK.

Catatan pembaruan

Kategori

Catatan

Solusi

Sistem operasi (OS)

CentOS dan Alibaba Cloud Linux 2 tidak lagi didukung sebagai sistem operasi kelompok node. Untuk informasi selengkapnya, lihat [Perubahan Produk] Pengumuman penghentian pemeliharaan untuk Alibaba Cloud Linux 2 dan CentOS 7.

Ubah sistem operasi kelompok node dengan meningkatkan kelompok node tersebut. Untuk informasi selengkapnya mengenai prosedur dan catatan terkait, lihat Meningkatkan kelompok node.

Kami menyarankan Anda menggunakan sistem operasi resmi Alibaba Cloud: ContainerOS dan Alibaba Cloud Linux 3.

kube-proxy component

Pada versi setelah v1.29, kube-proxy mengubah cara nilai `conntrack_max` dikonfigurasi. Komponen ini menghitung dan memperbarui nilai `conntrack_max` node berdasarkan konfigurasi kube-proxy dan jumlah core CPU. Pada versi v1.23 hingga v1.28, kube-proxy tidak menimpa nilai `conntrack_max` yang telah ditetapkan secara manual. Setelah Anda meningkatkan ke v1.29 atau yang lebih baru, kube-proxy dapat secara otomatis menurunkan nilai `conntrack_max` berdasarkan logika barunya. Untuk informasi selengkapnya, lihat #120448.

Jika sebelumnya Anda menyesuaikan nilai `conntrack_max`, tambahkan pengaturan nf_conntrack_max dan konfigurasi lainnya ke ConfigMap kube-proxy sebelum melakukan peningkatan. Hal ini mencegah nilai tersebut ditimpa. Untuk informasi selengkapnya, lihat Bagaimana cara meningkatkan batas pelacakan koneksi Linux (Conntrack)?.

Untuk memeriksa apakah nilai sysctl telah diubah, aktifkan fitur inspeksi kluster. Untuk informasi selengkapnya, lihat Menggunakan inspeksi kluster.

Fitur

Versi 1.30.7-aliyun.1 memperbaiki kerentanan CVE-2024-10220.

Pada Kubernetes 1.29

  • Aksi sleep ditambahkan ke hook PreStop, memungkinkan kontainer berhenti sementara selama waktu tertentu sebelum dihentikan guna menunggu proses atau permintaan jaringan yang sedang berlangsung. Untuk informasi selengkapnya, lihat KEP-3960: Memperkenalkan Aksi Sleep untuk Hook PreStop.

  • SidecarContainers kini berada dalam status Beta dan diaktifkan secara default. Fitur ini memungkinkan Anda menjalankan kontainer init sebagai kontainer sidecar dengan mengatur restartPolicy-nya menjadi Always. Kontainer sidecar dapat dimulai, dihentikan, atau dimulai ulang secara independen tanpa memengaruhi kontainer aplikasi utama atau kontainer init lainnya. Untuk informasi selengkapnya, lihat Kontainer Sidecar.

    Saat menggunakan fitur ini, pastikan versi kubelet pada node sama dengan versi lapisan kontrol.

  • Jenis sumber daya ServiceCIDR yang baru memungkinkan Anda mengonfigurasi rentang alamat ClusterIP untuk layanan di kluster secara dinamis. Fitur ini berada dalam status Alpha dan dinonaktifkan secara default. Untuk informasi selengkapnya tentang memperluas jumlah alamat IP yang tersedia untuk layanan secara dinamis, lihat KEP-1880: Multiple Service CIDRs.

  • API Persistent Volume Claim (PVC) dan Container menggunakan struct ResourceRequirements yang sama untuk mendefinisikan requests dan limits sumber daya. Akibatnya, ketika struct resources Container berubah—misalnya dengan menambahkan bidang claims—API PVC juga ikut berubah. Oleh karena itu, PVC kini menggunakan struct VolumeResourceRequirements terpisah yang hanya berisi requests dan limits, bukan claims. Untuk informasi selengkapnya, lihat Volume resource requirements.

  • Kondisi PodReadyToStartContainers kini berada dalam status Beta dan diaktifkan secara default. Kondisi ini menunjukkan bahwa sandbox pod telah dibuat dan jaringannya telah dikonfigurasi, sehingga membantu kubelet melacak status startup pod dengan lebih baik. Untuk informasi selengkapnya, lihat Kondisi Pod.

  • PodAffinity dan PodAntiAffinity kini mendukung `matchLabelKeys` dan `mismatchLabelKeys`, yang menyelesaikan masalah di mana penjadwal tidak dapat membedakan antara pod lama dan baru selama pembaruan bergulir deployment, sehingga menyebabkan hasil penjadwalan yang tidak diharapkan. Saat Anda mengonfigurasi `matchLabelKeys` untuk PodAffinity, deployment akan menambahkan label pod-template-hash ke ReplicaSet. Setiap pod dalam deployment diberi string hash yang sesuai, sehingga menginstruksikan penjadwal untuk hanya mengevaluasi pod dengan nilai pod-template-hash yang sama dan membantu membedakan pod dalam batch pembaruan yang sama. Untuk informasi selengkapnya, lihat KEP-3633.

  • Selain sumber daya API inti Kubernetes, pemeriksaan tipe ValidatingAdmissionPolicy kini juga mendukung CustomResourceDefinition (CRD) dan jenis API Extension, sehingga membantu memastikan keandalan kebijakan dan konfigurasi kluster yang benar. Untuk informasi selengkapnya, lihat pemeriksaan tipe.

  • Feature gate UserNamespacesPodSecurityStandards yang baru mengintegrasikan namespace pengguna dengan Standar Keamanan Pod. Saat fitur ini diaktifkan, kontainer dapat dijalankan sebagai pengguna non-root atau sebagai pengguna tertentu yang didefinisikan dalam konteks keamanan pod. Fitur ini berada dalam status Alpha dan dinonaktifkan secara default, serta mungkin tetap dinonaktifkan di versi mendatang. Untuk informasi selengkapnya, lihat KEP-127: Memperbarui PSS berdasarkan feature gate.

  • Untuk objek node, feature gate DisableNodeKubeProxyVersion yang baru menghentikan penggunaan bidang status.nodeInfo.kubeProxyVersion, sehingga mencegah bidang kubeProxyVersion diatur pada node. Karena kubelet tidak selalu dapat mengidentifikasi versi kube-proxy secara akurat, bidang ini bisa saja tidak akurat. Fitur ini berada dalam status Alpha dan dinonaktifkan secara default.

  • Feature gate JobBackoffLimitPerIndex kini berada dalam status Beta dan diaktifkan secara default, memungkinkan Anda menentukan jumlah maksimum percobaan ulang untuk setiap indeks dalam pekerjaan terindeks. Untuk informasi selengkapnya tentang pekerjaan terindeks, lihat Pekerjaan Terindeks untuk Pemrosesan Paralel dengan Penugasan Kerja Statis.

Pada Kubernetes 1.30

  • Fitur ImageMaximumGCAge memungkinkan kubelet mengonfigurasi masa hidup maksimum (TTL) untuk citra yang tidak digunakan sebelum dikumpulkan oleh pengumpulan sampah. Jika citra tetap tidak digunakan setelah waktu yang ditentukan, citra tersebut memenuhi syarat untuk dikumpulkan oleh pengumpulan sampah. Nilai default-nya adalah "0s", yang berarti tidak ada batas waktu. Fitur ini dipromosikan ke status Beta di v1.30 setelah memasuki status Alpha di v1.29.

  • kubelet menambahkan metrik image_pull_duration_seconds untuk melacak durasi pengambilan citra. Untuk informasi selengkapnya, lihat Daftar Metrik Alpha Kubernetes.

  • Feature gate LegacyServiceAccountTokenCleanUp kini Tersedia Umum (GA) dan diaktifkan secara default. Jika rahasia yang dihasilkan otomatis untuk ServiceAccount tidak digunakan selama periode tertentu (satu tahun secara default) dan tidak dipasang oleh pod apa pun, kube-controller-manager menambahkan label kubernetes.io/legacy-token-invalid-since ke rahasia tersebut. Nilai label tersebut adalah tanggal saat ini, yang menandai rahasia tersebut sebagai tidak valid. Jika rahasia tersebut tetap tidak digunakan selama periode tertentu lainnya (satu tahun secara default) setelah ditandai tidak valid, kube-controller-manager secara otomatis menghapusnya. Untuk mengaktifkan kembali rahasia yang ditandai tidak valid tetapi belum dihapus, Anda dapat menghapus label kubernetes.io/legacy-token-invalid-since. Untuk informasi selengkapnya, lihat Pembersihan token ServiceAccount lama yang dihasilkan otomatis dan Pembersih token ServiceAccount lama.

  • Pada v1.30, jika flag kube-proxy --nodeport-addresses tidak diatur—yang merupakan perilaku default—pembaruan pada Layanan NodePort hanya memengaruhi alamat IP utama node, bukan semua alamat IP node tersebut. Untuk informasi selengkapnya, lihat #122724.

  • Untuk mencegah konflik konfigurasi dan masalah keamanan, jangan mengonfigurasi URL Penerbit OIDC dengan nilai yang sama seperti URL Penerbit ServiceAccount API Server. Untuk informasi selengkapnya, lihat #123561.

  • Fitur LoadBalancerIPMode memungkinkan Anda menambahkan bidang .status.loadBalancer.ingress.ipMode ke Layanan bertipe LoadBalancer. Bidang ini menentukan perilaku penerusan untuk alamat IP load balancer dan hanya dapat ditentukan jika bidang .status.loadBalancer.ingress.ip juga ditentukan. Fitur LoadBalancerIPMode kini berada dalam status Beta. Untuk informasi selengkapnya, lihat Menentukan IPMode status load balancer dan Mode IP Load Balancer untuk Layanan.

  • Penskalaan otomatis Pod berdasarkan metrik ContainerResource dari HorizontalPodAutoscaler (HPA) kini Stabil di v1.30. Perilaku baru ini memungkinkan HPA melakukan penskalaan berdasarkan penggunaan sumber daya kontainer individual dalam sebuah pod, bukan hanya penggunaan sumber daya keseluruhan pod, sehingga berguna untuk menetapkan ambang batas penskalaan bagi kontainer yang paling penting dalam sebuah pod. Untuk informasi selengkapnya, lihat Metrik sumber daya kontainer.

  • Feature gate AdmissionWebhookMatchConditions kini GA, diaktifkan secara default, dan tidak dapat dinonaktifkan. Fitur ini memungkinkan Anda mendefinisikan kondisi pencocokan untuk webhook admission, sehingga memberikan kontrol yang lebih granular mengenai kapan webhook dipanggil. Untuk informasi selengkapnya, lihat Kontrol Admission Dinamis.

  • Fitur JobSuccessPolicy yang baru memungkinkan Anda mendeklarasikan pekerjaan sebagai berhasil diselesaikan berdasarkan serangkaian pod yang berhasil. Kebijakan keberhasilan dapat menentukan indeks tertentu (seperti indeks pod x, y, dan z) atau jumlah indeks (seperti 3 pod dari satu set indeks) untuk mendeklarasikan pekerjaan selesai. Fitur ini berada dalam status Alpha. Untuk informasi selengkapnya, lihat Kebijakan keberhasilan/selesai pekerjaan.

  • Fitur RelaxedEnvironmentVariableValidation yang baru memungkinkan sebagian besar karakter ASCII yang dapat dicetak (semua karakter dari 32 hingga 126, kecuali =) dalam variabel lingkungan. Fitur ini berada dalam status Alpha dan dinonaktifkan secara default. Untuk informasi selengkapnya, lihat #123385.

  • Fitur baru CustomResourceFieldSelectors memungkinkan Anda mengonfigurasi selectableFields pada CRD, sehingga memungkinkan penggunaan Pemilih Bidang untuk memfilter permintaan List, Watch, dan DeleteCollection. Hal ini mempermudah pencarian atau pengelolaan sumber daya CRD yang memenuhi kriteria tertentu. Fitur ini berada dalam status Alpha dan dinonaktifkan secara default. Untuk informasi selengkapnya, lihat Pemilih Bidang Sumber Daya Kustom.

  • Fitur CRDValidationRatcheting diperbarui. Saat Anda menambahkan validasi baru ke CRD, API Server tidak menolak pembaruan terhadap sumber daya yang sudah ada, bahkan jika sumber daya tersebut menjadi tidak valid akibat validasi baru tersebut, selama bagian sumber daya yang tidak valid tetap tidak berubah. Perilaku ini tidak memengaruhi sumber daya atau pengguna yang sudah ada, sehingga memungkinkan Anda menambahkan aturan validasi baru secara aman dan memigrasikan CRD untuk menggunakan skema OpenAPI v3 untuk validasi. Fitur ini kini berada dalam status Beta dan diaktifkan secara default. Untuk informasi selengkapnya, lihat Penguncian validasi CRD.

  • Downward API kini mendukung dual-stack (IPv4 dan IPv6) menggunakan bidang status.hostIPs. Alamat IP pertama dalam daftar status.hostIPs selalu sama dengan status.hostIP. Untuk informasi selengkapnya, lihat Downward API.

  • Fitur NodeLogQuery memungkinkan Anda mengkueri log layanan node menggunakan titik akhir /logs. Fitur ini dipromosikan ke status Beta dan dinonaktifkan secara default. Untuk informasi selengkapnya, lihat Kueri log.

Fitur yang tidak digunakan lagi

Pada Kubernetes 1.29

  • CronJob tidak lagi mendukung pengaturan CRON_TZ atau TZ di .spec.schedule. Gunakan bidang .spec.timeZone sebagai gantinya, yang telah tersedia sejak v1.25. Untuk informasi selengkapnya, lihat Batasan CronJob.

  • API networking/v1alpha1 ClusterCIDR, yang berada dalam status Alpha, telah dihapus.

Pada Kubernetes 1.30

  • Flag --prune-whitelist untuk perintah `kubectl apply` telah dihapus. Gunakan --prune-allowlist sebagai gantinya. Untuk informasi selengkapnya, lihat --prune.

  • Plugin admission SecurityContextDeny, yang telah tidak digunakan lagi sejak v1.27, dihapus di v1.30. Gunakan plugin admission PodSecurity sebagai gantinya. Plugin ini telah Stabil sejak v1.25 dan diaktifkan secara default. Untuk informasi selengkapnya, lihat PodSecurity.

API yang tidak digunakan lagi

Versi API `flowcontrol.apiserver.k8s.io/v1beta2` dari FlowSchema dan PriorityLevelConfiguration tidak digunakan lagi di v1.29. Gunakan versi API `flowcontrol.apiserver.k8s.io/v1` (tersedia sejak v1.29) atau versi API `flowcontrol.apiserver.k8s.io/v1beta3` (tersedia sejak v1.26).

  • Perubahan penting dalam `flowcontrol.apiserver.k8s.io/v1` meliputi hal berikut:

    Bidang spec.limited.assuredConcurrencyShares dalam PriorityLevelConfiguration diganti namanya menjadi spec.limited.nominalConcurrencyShares. Bidang ini memiliki nilai default 30 jika tidak ditentukan. Nilai eksplisit 0 tidak diubah menjadi 30.

  • Perubahan penting dalam `flowcontrol.apiserver.k8s.io/v1beta3` meliputi hal berikut:

    Bidang spec.limited.assuredConcurrencyShares dalam PriorityLevelConfiguration diganti namanya menjadi spec.limited.nominalConcurrencyShares.

Feature gates

Untuk informasi selengkapnya tentang feature gate Kubernetes, termasuk dukungan versi dan deskripsi fitur, lihat Feature Gate.

Feature gate umumnya memiliki tiga tahap:

  • Alpha: Fitur dinonaktifkan secara default.

  • Beta: Fitur biasanya diaktifkan secara default.

  • GA: Fitur diaktifkan secara default dan tidak dapat dinonaktifkan. Sakelar feature gate tidak lagi diperlukan.

Referensi

Untuk catatan perubahan lengkap Kubernetes 1.29 dan 1.30, lihat CHANGELOG-1.29 dan CHANGELOG-1.30.