Alibaba Cloud Container Service for Kubernetes 1.35 menghapus dukungan cgroup v1, menambahkan fitur gates baru, dan menghentikan mode IPVS kube-proxy.
Versi komponen
Versi yang didukung untuk komponen inti dalam kluster ACK.
Komponen inti | Versi |
Kubernetes | 1.35.1-aliyun.1, 1.35.2-aliyun.1, 1.35.7-aliyun.1 |
etcd | v3.5.21 |
containerd | 2.1.6 |
CoreDNS | v1.12.1.2 |
CSI | Perbarui csi-plugin dan csi-provisioner ke versi terbaru. Untuk informasi lebih lanjut mengenai catatan rilis, lihat csi-plugin dan csi-provisioner. |
CNI | Flannel v0.28.0.6 |
Terway dan TerwayControlplane adalah v1.15.0 atau lebih baru |
Perubahan yang memutus kompatibilitas
Mulai versi 1.35, Kubernetes tidak lagi mendukung cgroup v1. Dukungan untuk cgroup v2 telah dipromosikan ke status Stable sejak versi 1.25. Lakukan upgrade OS node agar mendukung cgroup v2, atau kubelet tidak akan dapat dimulai.
Sistem operasi mencantumkan dukungan versi cgroup untuk citra OS ACK. Untuk melakukan upgrade, lihat Mengganti sistem operasi.
Pembaruan fitur
Opsi
PreferSameNodeuntuk bidangtrafficDistributionService telah dipromosikan ke General Availability (GA). Fitur ini mengarahkan traffic ke endpoint pada node yang sama terlebih dahulu, dan hanya beralih ke node lain jika tidak tersedia endpoint lokal.Feature gate
PreferSameTrafficDistributiontelah diaktifkan secara default sejak versi 1.34 dan mendukung kedua opsiPreferSameNodedanPreferSameZone.PreferClosetelah diganti namanya menjadiPreferSameZone.PodObservedGenerationTrackingtelah dipromosikan ke GA. KetikaspecPod diperbarui, nilai.metadata.generationakan bertambah. Kubelet kini mencatat versispecyang telah diproses dalam bidang.status.observedGenerationPod. Controller dan Operator kini dapat menentukan apakah perubahan Pod, seperti scaling in-place, telah diterapkan di node, sehingga menghindari masalah akibat keterlambatan pembaruan status.Opsi kebijakan node topology manager
max-allowable-numa-nodes(max-allowable-numa-nodes) telah dipromosikan ke GA. Topology manager kini dapat menghitung afinitas dengan benar pada server yang memiliki lebih dari 8 node NUMA.Downward API kini mendukung injeksi label topologi node, seperti
topology.kubernetes.io/zonedantopology.kubernetes.io/region, ke dalam Pod.StorageVersionMigrator, yang telah dipromosikan ke Beta dan dinonaktifkan secara default, memindahkan migrasi versi penyimpanan dari tool eksternal ke dalam inti Kubernetes. Lihat Move Storage Version Migrator in-tree.MutableCSINodeAllocatableCountkini diaktifkan secara default. Driver CSI kini dapat memperbarui jumlah volume yang dapat dialokasikan per node secara berkala, mencegah Pod terjebak dalam statusContainerCreatingakibat kapasitas volume yang tidak mencukupi.Opportunistic batching memungkinkan penjadwal menyimpan hasil penjadwalan sementara dalam cache, sehingga meningkatkan throughput secara signifikan untuk Pod yang serupa.
MaxUnavailableStatefulSettelah dipromosikan ke Beta dan diaktifkan secara default. Tetapkan bidangmaxUnavailabledalam strategi rolling update StatefulSet untuk membatasi jumlah Pod yang tidak tersedia selama pembaruan.Pod Certificates telah dipromosikan ke Beta dan dinonaktifkan secara default. Pod dapat menggunakan sertifikat untuk autentikasi mutual TLS dengan kube-apiserver, dengan rotasi otomatis untuk keamanan yang lebih kuat dibandingkan token ServiceAccount. Lihat KEP-4317: Pod Certificates.
Kubectl kini mendukung format KYAML. KYAML adalah subset YAML untuk Kubernetes yang mengatasi ambiguitas dan isu keamanan dalam penguraian YAML standar. Nonaktifkan dengan variabel lingkungan
KUBECTL_KYAML=false. Lihat Introducing KYAML.Bidang
behaviorHPA kini mendukung ambang batas toleransi yang dapat dikonfigurasi, menggantikan toleransi global tetap sebesar 10%.User namespaces telah dipromosikan ke Beta. Pod dapat berjalan dalam user namespace yang terisolasi dari host. Proses kontainer dapat berjalan sebagai root (UID 0) dalam namespace-nya, tetapi dipetakan ke ID pengguna non-root yang tidak memiliki hak istimewa di host. Hal ini mengurangi risiko keamanan akibat peningkatan hak istimewa dari escape kontainer.
ImageVolumekini diaktifkan secara default, memungkinkan Pod memasang konten gambar kontainer sebagai volume tipeimageread-only. Memerlukan containerd v2.1 atau lebih baru.KubeletEnsureSecretPulledImagestelah dipromosikan ke Beta dan diaktifkan secara default. Fitur ini memberlakukan pemeriksaan kredensial untuk Pod yang menggunakanimagePullPolicy: IfNotPresentdalam kluster multi-tenant, mencegah Pod yang tidak sah mengakses gambar privat yang telah ditarik oleh Pod ber-kredensial melalui cache lokal.ContainerRestartRules, yang telah dipromosikan ke Beta dan diaktifkan secara default, memungkinkan penggantian kebijakan restart tingkat kontainer melaluirestartPolicydanrestartPolicyRulesuntuk kontainer individual. Lihat Individual container restart policy and rules.Driver CSI kini dapat mengatur bidang
spec.serviceAccountTokenInSecretspada objekCSIDriverke nilaitrueuntuk memasang token ServiceAccount melalui Secret, bukan menempatkannya langsung dalamvolume context. Hal ini mencegah eksposur kredensial yang tidak disengaja dalam log dan pesan error. Lihat CSI driver opt-in for service account tokens via secrets field.Penyebaran kini mencakup bidang
terminatingReplicasyang menghitung jumlah Pod yang memiliki timestamp penghapusan tetapi belum sepenuhnya dihapus.Memperbaiki CVE-2025-61732 dan CVE-2025-68121 pada versi 1.35.2-aliyun.1.
Penghentian dukungan
Mode
ipvs modekube-proxy telah dihentikan dan direncanakan untuk dihapus. Beralihlah ke nftables mode, yang telah stabil sejak v1.33. Karenanftables modemasih baru, kluster ACK 1.35 masih menggunakanipvs modesebagai default, tetapi Anda dapat memilihnftablessebagai Service Forwarding Mode saat membuat kluster.Kami merekomendasikan Terway Datapath V2, yang beroperasi secara independen dari kube-proxy.
Versi 1.35 merupakan rilis terakhir yang mendukung containerd 1.x. Lakukan upgrade containerd ke versi 2.x sebelum melakukan upgrade ke Kubernetes 1.36 atau versi setelahnya. Kluster ACK menggunakan containerd 2.x sebagai default sejak versi 1.33. Lihat Pengenalan containerd 2.1.
Referensi
Changelog lengkap Kubernetes 1.35: CHANGELOG-1.35 dan Kubernetes v1.35: Timbernetes (The World Tree Release).