由於 k8s 是由各重要模組組合而成 ( API-Server, kubelet, kubeproxy ),
各模組版本集下載方式並不整合,所以 k8s 有一套版本策略,用來規範版本差異。
k8s 版本使用 major.minor.patch (x.y.z) 方式標記版本,分別代表
- major : 主版本號
- minor: 次要版本
- patch: 補丁版本
以下介紹版本差異策略
- kube-apiserver
- 最新和最舊的節點,版本差異不能多於一個次要版本
- kubelet
- kubelet 版本 ≤ kube-apiserver 版本
- kubelet 版本只能比 kube-apiserver 小三個次要版本 (kubelet < 1.25 時,只能小兩個)
- kube-proxy
- kube-proxy 版本 ≤ kube-server 版本
- kube-proxy 版本只能比 kube-apiserver 小三個次要版本 (kube-proxy < 1.25 時,只能小兩個)
- kube-proxy 版本只能比 kubelet 多三個次要版本 (kube-proxy < 1.25 時,只能多兩個)
- kubectl
- 只能小於 kube-server 一個次要版本
- kube-controller-manager、kube-scheduler 、cloud-controller-manager
- 只能小於 kube-server 一個次要版本