Alibaba Cloud Container Service for Kubernetes (ACK) telah lulus uji kesesuaian komunitas Kubernetes. Topik ini menjelaskan perubahan utama dalam rilis ACK Kubernetes 1.35, mencakup versi komponen, perubahan signifikan, pembaruan fitur, serta penghentian dukungan.
Panduan versi komponen
Tabel berikut mencantumkan versi komponen inti dalam kluster ACK.
Core component | Nomor versi |
Kubernetes | 1.35.1-aliyun.1, 1.35.2-aliyun.1 |
etcd | v3.5.21 |
containerd | 2.1.5 |
CoreDNS | v1.12.1.2 |
CSI | |
CNI | Flannel v0.28.0.6 |
Terway dan TerwayControlplane v1.15.0 atau yang lebih baru |
Perubahan utama
Mulai versi 1.35, Kubernetes tidak lagi mendukung cgroup v1. Dukungan untuk cgroup v2 telah stabil sejak versi 1.25. Sistem operasi node harus mendukung cgroup v2. Jika tidak, kubelet gagal memulai.
Untuk informasi tentang dukungan versi cgroup pada image sistem operasi ACK, lihat Operating systems. Untuk informasi selengkapnya tentang cara mengubah atau meningkatkan sistem operasi, lihat Change the operating system.
Perubahan fitur
Opsi
PreferSameNodeuntuk bidangtrafficDistributionsebuah service kini tersedia secara umum (GA). Opsi ini memprioritaskan pengarahan traffic ke titik akhir pada node yang sama dan hanya menggunakan node lain jika tidak ada titik akhir yang tersedia di node lokal.Feature gate
PreferSameTrafficDistributiontelah diaktifkan secara default sejak versi 1.34 dan mendukung kedua opsiPreferSameNodedanPreferSameZone. Opsi awalPreferClosetelah diganti namanya menjadiPreferSameZone.PodObservedGenerationTrackingkini stabil (GA). Saatspecsebuah Pod diperbarui, bidang.metadata.generationakan bertambah. Kubelet mencatat versispecyang telah diproses dalam bidang.status.observedGenerationPod tersebut. Hal ini memungkinkan controller dan Operator untuk secara akurat menentukan apakah perubahan Pod—seperti scaling in-place—telah diterapkan di node, sehingga membantu mencegah masalah akibat keterlambatan pembaruan status.Opsi kebijakan topology manager
max-allowable-numa-nodes(max-allowable-numa-nodes) kini stabil (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.StorageVersionMigratorkini berada dalam tahap Beta dan dinonaktifkan secara default. Fitur ini memindahkan kemampuan Storage Version Migration dari alat eksternal ke implementasi internal Kubernetes. Untuk informasi selengkapnya, lihat Move Storage Version Migrator in-tree.MutableCSINodeAllocatableCountkini diaktifkan secara default. Hal ini memungkinkan driver Container Storage Interface (CSI) untuk memperbarui jumlah volume yang dapat dialokasikan pada sebuah node secara berkala, sehingga mengatasi masalah informasi volume yang dapat dialokasikan menjadi usang dan menyebabkan Pod dijadwalkan pada node dengan kapasitas volume tidak mencukupi, sehingga Pod terjebak dalam statusContainerCreating.Dengan diperkenalkannya Opportunistic batching, penjadwal (scheduler) dapat menyimpan hasil penjadwalan sementara dalam cache. Hal ini secara signifikan meningkatkan throughput penjadwalan untuk Pod yang serupa.
MaxUnavailableStatefulSetkini berada dalam tahap Beta dan diaktifkan secara default. Fitur ini memungkinkan Anda menyetel bidangmaxUnavailableuntuk kebijakan pembaruan bergulir (rolling update) StatefulSet. Bidang ini menentukan jumlah maksimum Pod yang tidak tersedia selama pembaruan.Fitur Pod Certificates kini berada dalam tahap Beta dan dinonaktifkan secara default. Fitur ini memungkinkan Pod menghasilkan sertifikat untuk otentikasi timbal balik dengan kube-apiserver serta mendukung rotasi sertifikat otomatis, yang menyediakan metode autentikasi yang lebih aman dibandingkan token ServiceAccount tradisional. Untuk informasi selengkapnya, lihat KEP-4317: Pod Certificates.
Kubectl kini mendukung format KYAML. KYAML adalah subset YAML yang dirancang khusus untuk Kubernetes guna mengatasi ambiguitas dan kerentanan keamanan dalam penguraian YAML standar. Anda dapat menonaktifkan fitur ini dengan mengatur variabel lingkungan
KUBECTL_KYAML=false. Untuk informasi selengkapnya, lihat Introducing KYAML.Bidang
behaviorHorizontalPodAutoscaler (HPA) kini mendukung konfigurasi ambang batas toleransi. Sebelumnya, keputusan scaling mengandalkan toleransi global tetap sebesar 10%. Kini Anda dapat mengonfigurasi ambang batas ini secara fleksibel sesuai kebutuhan.Fitur User Namespaces kini berada dalam tahap Beta. Fitur ini memungkinkan Pod berjalan dalam namespace pengguna yang terisolasi dari host. Proses kontainer dapat berjalan sebagai root (UID 0) dalam namespace-nya sendiri, tetapi dipetakan ke ID pengguna non-root yang tidak istimewa di host, sehingga mengurangi risiko keamanan akibat peningkatan hak istimewa dari pelarian kontainer (container escape).
ImageVolumekini diaktifkan secara default. Hal ini memungkinkan Anda menggunakan volume bertipeimagedalam sebuah Pod. Jenis volume ini dapat memasang isi gambar kontainer sebagai volume read-only di dalam Pod. Untuk menggunakan fitur ini, containerd harus berada pada versi 2.1 atau yang lebih baru.KubeletEnsureSecretPulledImageskini berada dalam tahap Beta dan diaktifkan secara default. Fitur ini meningkatkan keamanan di kluster multi-tenant dengan menerapkan pemeriksaan kredensial untuk Pod yang menggunakanimagePullPolicy: IfNotPresent, sehingga mencegah skenario di mana Pod dengan kredensial menarik gambar privat ke sebuah node, lalu Pod lain di node yang sama tanpa kredensial dapat mengakses gambar sensitif tersebut dari cache lokal.ContainerRestartRuleskini berada dalam tahap Beta dan diaktifkan secara default. Fitur ini memungkinkan konfigurasi kebijakan restart tingkat kontainer yang lebih granular. Anda dapat mengganti kebijakan restart tingkat Pod dengan menentukan bidangrestartPolicydanrestartPolicyRulesuntuk sebuah kontainer. Untuk informasi selengkapnya, lihat Individual container restart policy and rules.Driver CSI kini mendukung pengaturan bidang
spec.serviceAccountTokenInSecretsdalam objekCSIDriverke nilaitrue. Hal ini memungkinkan pemasangan token ServiceAccount melalui Secret, bukan menempatkannya langsung dalamvolume context, sehingga membantu mencegah kredensial terekspos secara tidak sengaja dalam log dan pesan error. Untuk informasi selengkapnya, lihat CSI driver opt-in for service account tokens via secrets field.Objek Deployment kini mencakup bidang baru
terminatingReplicas. Bidang ini mencatat jumlah Pod yang memiliki timestamp penghapusan tetapi belum sepenuhnya dihapus dari sistem.Versi 1.35.2-aliyun.1 memperbaiki CVE-2025-61732 dan CVE-2025-68121.
Catatan penghentian dukungan
Mulai versi 1.35, mode
ipvsuntuk kube-proxy telah ditinggalkan dan akan dihapus pada versi mendatang. Pengganti yang direkomendasikan adalah mode nftables, yang telah stabil sejak v1.33. Karena modenftablesrelatif baru, ACK masih menggunakan modeipvssecara default untuk kluster baru. Dukungan untuk modenftablesdirencanakan untuk rilis mendatang.Anda dapat menggunakan Terway Datapath V2, yang tidak bergantung pada kube-proxy.
Versi 1.35 merupakan versi terakhir yang mendukung containerd 1.x. Anda harus meningkatkan containerd ke versi 2.x sebelum melakukan upgrade ke Kubernetes 1.36 atau yang lebih baru. Kluster ACK telah menggunakan containerd 2.x secara default sejak versi 1.33. Untuk informasi selengkapnya, lihat Introduction to containerd 2.1.
Tautan referensi
Untuk changelog lengkap Kubernetes 1.35, lihat CHANGELOG-1.35 dan Kubernetes v1.35: Timbernetes (The World Tree Release).