阿里雲Container Service for Kubernetes嚴格遵循社區一致性認證。本文介紹ACK發布Kubernetes 1.31版本的主要變更說明,包括升級注意事項、重大變更、功能特性、棄用功能和API、特性門控等。
組件版本說明
下表為ACK叢集核心組件版本的支援情況。
核心組件 | 版本號碼 |
Kubernetes | 1.31.1-aliyun.1 |
etcd | v3.5.15 |
containerd | 1.6.34 |
CoreDNS | v1.9.3.10-7dfca203-aliyun |
CSI | v1.31.1-e749bf2-aliyun |
CNI | Flannel v0.15.1.22-20a397e6-aliyun |
Terway和TerwayControlplane為v1.10.0及以上 說明 自此版本開始,在ACK託管叢集中選擇網路外掛程式為Terway時,會預設開啟Trunk ENI功能。 |
功能特性
在CustomResourceDefinition(CRD)中指定
caBundle
欄位時,如果caBundle
非空,但內容無效或不包含任何CA認證,那麼該CRD將不會提供服務。CRD的caBundle
設定為有效狀態後,將不再允許通過更新操作將其變為無效或內容為空白的狀態,以避免中斷CRD的正常服務。MatchLabelKeysInPodAffinity特性門控進階至Beta,預設開啟。
podAffinity
和podAntiAffinity
預設支援更為精細的配置欄位matchLabelKeys和mismatchLabelKeys,以解決調度器在Deployment變換期間無法區分新老Pod,繼而導致調度結果不符合親和性和反親和性預期的問題。JobSuccessPolicy進階至Beta,預設啟用,允許為Indexed Job配置成功策略。更多資訊,請參見Job Success Policy。
DisableNodeKubeProxyVersion進階至Beta,預設啟用,將不會在節點的
status.nodeInfo.kubeProxyVersion
欄位中顯示kube-proxy版本。該欄位所顯示的值並不準確,無法正確提供kube-proxy的實際版本資訊。ServiceAccountTokenNodeBinding進階至Beta,預設啟用,允許建立一個直接綁定到節點的ServiceAccount Token。當Token到期或者關聯的節點或ServiceAccount被刪除時,Token將失效。
RecursiveReadOnlyMounts進階至Beta,預設啟用,允許在Pod的卷掛載上設定遞迴的唯讀屬性,即以此種方式掛載的卷及其內部的所有子目錄和檔案都將被設定為唯讀狀態。更多資訊,請參見Recursive read-only mounts。
當Pod
spec
發生改變,但不涉及image
欄位的改動時,kubelet將不會重啟容器,避免因非功能性配置更新而引起的不必要的Pod重啟。HonorPVReclaimPolicy進階至Beta,預設啟用,支援在PersistentVolume上添加Finalizer,以確保僅在刪除對應的底層儲存資源後才刪除具有
Delete
回收策略的PersistentVolume。更多資訊,請參見PersistentVolume deletion protection finalizer。kubectl debug
支援配置自訂模板(Profile)調試Pod的資訊。更多資訊,請參見Kubernetes 1.31: Custom Profiling in Kubectl Debug Graduates to Beta。Kubernetes用戶端(例如
kubectl
)中用於kubectl cp
、kubectl attach
、kubectl exec
和kubectl port-forward
命令的串流協議更新為更現代、更靈活的WebSocket串流協議。API Server提供從緩衝中實現一致性讀的能力,減少將請求透傳到etcd,提升了List請求的效率。更多資訊,請參見Consistent Reads from Cache。
功能變更
內建的CephFS卷外掛程式(
kubernetes.io/cephfs
)被移除,使用CephFS CSI驅動代替。如果您正在使用CephFS卷外掛程式,請在叢集升級到1.31改用新方案,並使用新的驅動重新部署應用。
內建CephRBD卷外掛程式(
kubernetes.io/rbd
)被移除,使用RBD CSI驅動代替。如果您正在使用CephRBD卷外掛程式,請在叢集升級到1.31改用新方案,並使用新的驅動重新部署應用。
CSIMigrationPortworx特性門控預設啟用,支援將卷操作從舊的Portworx內嵌外掛程式遷移到Portworx CSI外掛程式。如果您正在使用Portworx作為儲存解決方案,請在叢集升級到1.31前在叢集中安裝並配置Portworx CSI外掛程式。
參考連結
關於Kubernetes 1.31完整的變更記錄,請參見CHANGELOG-1.31、Kubernetes v1.31: Elli。