跳至主要内容

從 v1.2.1 升級到 v1.2.2

一般資訊​

每當有可供升級的新 Harvester 版本時,Dashboard 畫面上就會出現 Upgrade 按鈕。如需更多資訊,請參閱開始升級。

對於離線環境,請參閱準備離線升級。

已知問題​


1. 升級卡在 Upgrading System Service 狀態​

某些系統服務的憑證過期可能會導致升級長時間卡在 Upgrading System Service 狀態。要解決此問題,請執行以下步驟:

  1. 識別 apply-manifest 任務的名稱。

    kubectl get jobs -n harvester-system -l harvesterhci.io/upgradeComponent=manifest

    範例輸出:

    NAME                                 COMPLETIONS   DURATION   AGE
    hvst-upgrade-9gmg2-apply-manifests 0/1 46s 46s
  2. 檢查 apply-manifest 任務的日誌。

    kubectl logs jobs/hvst-upgrade-9gmg2-apply-manifests -n harvester-system

    如果日誌中出現以下訊息,請繼續下一步:

    Waiting for CAPI cluster fleet-local/local to be provisioned (current phase: Provisioning, current generation: 30259)...
    Waiting for CAPI cluster fleet-local/local to be provisioned (current phase: Provisioning, current generation: 30259)...
    Waiting for CAPI cluster fleet-local/local to be provisioned (current phase: Provisioning, current generation: 30259)...
    Waiting for CAPI cluster fleet-local/local to be provisioned (current phase: Provisioning, current generation: 30259)...
  3. 檢查 Cluster API(CAPI)叢集的狀態。

    kubectl get clusters.provisioning.cattle.io local -n fleet-local -o yaml

    如果輸出類似於以下範例,則叢集中可能存在此問題。

        - lastUpdateTime: "2023-01-17T16:26:48Z"
    message: 'configuring bootstrap node(s) custom-24cb32ce8387: waiting for probes:
    kube-controller-manager, kube-scheduler'
    reason: Waiting
    status: Unknown
    type: Updated
  4. 識別受影響節點的主機名,並實施解決方法以查看服務憑證是否過期。

    kubectl get machines.cluster.x-k8s.io -n fleet-local <machine_name> -o yaml | yq .status.nodeRef.name

    將 <machine_name> 替換為受影響節點的名稱(如上一步驟的輸出中所述)。

    備註

    如果多個節點大約在同一時間加入叢集,您必須在所有這些節點上實施解決方法。


2. harvester-seeder addon 未升級​

當從 v1.2.1 升級 Harvester 叢集到 v1.2.2 時,harvester-seeder addon 不會完全升級,因為 Helm chart 版本不符。Harvester v1.2.2 捆綁的 harvester-seeder chart 為 v0.1.1,而 harvester-seeder addon 使用 v0.1.0 chart。

Error: chart "harvester-seeder" matching 0.1.0 not found in harvester-seeder index. (try 'helm repo update'): no chart version found for harvester-seeder-0.1.0

如果您在升級到 Harvester v1.2.2 後啟用 addon,則由於上述不符,安裝 chart 也會不可能。

解決方法是使用以下命令手動更新 harvester-seeder addon 清單。您必須在修補之前停用 addon。

kubectl -n harvester-system patch addons.harvesterhci harvester-seeder --type=json -p '[{"op": "replace", "path": "/spec/version", "value": "0.1.1"}]'