從 v1.2.2/v1.3.0 升級到 v1.3.1
一般資訊
每當有可供升級的新 Harvester 版本時,Dashboard 畫面上就會出現 Upgrade 按鈕。如需更多資訊,請參閱開始升級。
對於離線環境,請參閱準備離線升級。
已知問題
1. 叢集升級在第一個節點升級後卡住
提示
為防止此問題發生,請在開始升級過程之前為 local-kubeconfig secret 加上標籤。
kubectl label secret local-kubeconfig -n fleet-local cluster.x-k8s.io/cluster-name=local
當從 v1.2.2 或 v1.3.0 升級 Harvester 叢集到 v1.3.1 時,升級過程在第一個節點升級後會卡住。
範例:

要解決此問題,請執行以下步驟:
-
識別叢集狀態:
kubectl get clusters.provisioning.cattle.io local -n fleet-local -o yaml範例輸出:
...
- lastUpdateTime: "2024-06-18T23:37:39Z"
message: 'configuring bootstrap node(s) custom-9cb22ccf7984: waiting for kubelet
to update'
reason: Waiting
status: Unknown
type: Updated
- lastUpdateTime: "2024-06-18T23:37:39Z"
message: 'configuring bootstrap node(s) custom-9cb22ccf7984: waiting for kubelet
to update'
reason: Waiting
status: Unknown
type: Provisioned如果輸出包含訊息
waiting for kubelet,請繼續下一步。 -
檢查
capi-controller-managerPod 的日誌:kubectl logs -n cattle-provisioning-capi-system deployment/capi-controller-manager如果輸出類似於以下範例,則叢集中可能存在此問題。
2024-06-19T08:54:22.407423986Z W0619 08:54:22.407257 1 reflector.go:424] k8s.io/client-go@v0.26.1/tools/cache/reflector.go:169: failed to list *v1.Node: Unauthorized
2024-06-19T08:54:22.407470069Z E0619 08:54:22.407283 1 reflector.go:140] k8s.io/client-go@v0.26.1/tools/cache/reflector.go:169: Failed to watch *v1.Node: failed to list *v1.Node: Unauthorized
2024-06-19T08:55:05.153396619Z W0619 08:55:05.153190 1 reflector.go:424] k8s.io/client-go@v0.26.1/tools/cache/reflector.go:169: failed to list *v1.Node: Unauthorized
2024-06-19T08:55:05.153438978Z E0619 08:55:05.153217 1 reflector.go:140] k8s.io/client-go@v0.26.1/tools/cache/reflector.go:169: Failed to watch *v1.Node: failed to list *v1.Node: Unauthorized -
應用以下解決方法以恢復升級:
終止並重新啟動
capi-controller-managerPod。範例:
kubectl rollout restart deployment/capi-controller-manager -n cattle-provisioning-capi-system
- 相關 issue:
2. 自動映像檔清理無法運作
由於發布的 Harvester ISO 包含不完整的映像檔列表,因此在從 v1.2.2 升級到 v1.3.1 期間無法執行自動映像檔清理。此問題不會阻止升級,您可以在升級完成後使用此腳本手動清理容器映像檔。如需更多資訊,請參閱 issue #6620。