跳至主要内容

在離線環境中升級

備註

這些說明假設您已經按照此頁面上的 Kubernetes 升級說明進行操作,包括前置條件,直到步驟 3. 升級 Rancher。

Rancher Helm 升級選項​

要使用 Helm 升級,請套用您在安裝 Rancher 時使用的相同選項。請參閱下表以替換每個佔位符。Rancher 需要設定為使用私有映像庫,以便佈建任何 Rancher 啟動的 Kubernetes 叢集或 Rancher 工具。

根據您在安裝期間所做的選擇,完成以下程序之一。

佔位符說明
<VERSION>輸出 tarball 的版本號。
<RANCHER.YOURDOMAIN.COM>您指向負載平衡器的 DNS 名稱。
<REGISTRY.YOURDOMAIN.COM:PORT>您的私有映像庫的 DNS 名稱。
<CERTMANAGER_VERSION>在 k8s 叢集上執行的 Cert-manager 版本。

選項 A:預設的自簽名憑證​

helm upgrade rancher ./rancher-<VERSION>.tgz \
--namespace cattle-system \
--set hostname=<RANCHER.YOURDOMAIN.COM> \
--set certmanager.version=<CERTMANAGER_VERSION> \
--set rancherImage=<REGISTRY.YOURDOMAIN.COM:PORT>/rancher/rancher \
--set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # 設定在 Rancher 中使用的預設私有映像庫
--set useBundledSystemChart=true # 使用封裝的 Rancher system charts

解決 UPGRADE FAILED 錯誤​

如果您遇到錯誤訊息 Error: UPGRADE FAILED: "rancher" has no deployed releases,Rancher 可能是透過 helm template 命令安裝的。要成功升級 Rancher,請改用以下命令:

helm template rancher ./rancher-<VERSION>.tgz --output-dir . \
--no-hooks \ # 防止產生 Helm hooks 的檔案
--namespace cattle-system \
--set hostname=<RANCHER.YOURDOMAIN.COM> \
--set certmanager.version=<CERTMANAGER_VERSION> \
--set rancherImage=<REGISTRY.YOURDOMAIN.COM:PORT>/rancher/rancher \
--set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # 設定在 Rancher 中使用的預設私有映像庫
--set useBundledSystemChart=true # 使用封裝的 Rancher system charts

執行 Helm 命令後,套用渲染的模板:

kubectl -n cattle-system apply -R -f ./rancher

選項 B:使用 Kubernetes Secrets 從檔案取得憑證​

helm upgrade rancher ./rancher-<VERSION>.tgz \
--namespace cattle-system \
--set hostname=<RANCHER.YOURDOMAIN.COM> \
--set rancherImage=<REGISTRY.YOURDOMAIN.COM:PORT>/rancher/rancher \
--set ingress.tls.source=secret \
--set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # 設定在 Rancher 中使用的預設私有映像庫
--set useBundledSystemChart=true # 使用封裝的 Rancher system charts

如果您使用私有 CA 簽署的憑證,請在 --set ingress.tls.source=secret 後面新增 --set privateCA=true:

helm upgrade rancher ./rancher-<VERSION>.tgz \
--namespace cattle-system \
--set hostname=<RANCHER.YOURDOMAIN.COM> \
--set rancherImage=<REGISTRY.YOURDOMAIN.COM:PORT>/rancher/rancher \
--set ingress.tls.source=secret \
--set privateCA=true \
--set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # 設定在 Rancher 中使用的預設私有映像庫
--set useBundledSystemChart=true # 使用封裝的 Rancher system charts

驗證升級​

登入 Rancher 以確認升級成功。

提示

升級後遇到網路問題?

請參閱還原叢集網路。

已知升級問題​

每個 Rancher 版本的已知問題清單可以在 GitHub 上的發布說明和 Rancher 論壇中找到。