跳至主要内容

升級

以下說明將引導您升級使用 Helm 在 Kubernetes 叢集上安裝的 Rancher 伺服器。這些步驟也適用於使用 Helm 進行的離線安裝。

有關升級使用 Docker 安裝的 Rancher 的說明,請參閱此頁面。

前置條件​

存取 Kubeconfig​

Helm 應該從與 Kubeconfig 檔案相同的位置執行,或從執行 kubectl 命令的相同位置執行。

如果您使用 RKE2/K3s 安裝 Kubernetes,Kubeconfig 會儲存在 /etc/rancher/rke2/rke2.yaml 或 /etc/rancher/k3s/k3s.yaml 目錄中,具體取決於您選擇的發行版。

Kubeconfig 也可以使用 --kubeconfig 標籤手動定位到預期的叢集(請參閱:https://helm.sh/docs/helm/helm/)

檢閱已知問題​

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

請注意,不支援升級_到_或_從_ rancher-alpha repository 中的任何 chart。

Helm 版本​

升級說明假設您使用的是 Helm 3。

Helm 2 已棄用

不再支援 Helm 2。請改用 Helm 3。

對於使用 Helm 2 開始的安裝遷移,請參閱官方 Helm 2 到 3 遷移文件。這裡的 Helm 2 升級頁面提供了使用 Helm 2 的舊升級說明的副本,如果升級到 Helm 3 不可行,則可以使用它。

對於離線安裝:填充私有 registry​

僅對於離線安裝,收集並填充新 Rancher 伺服器版本的映像。按照指南填充您的私有 registry,使用您想要升級到的 Rancher 版本的映像。

對於使用早於 0.8.0 的 cert-manager 進行升級​

Let's Encrypt 將從 2019 年 11 月 1 日開始封鎖早於 0.8.0 的 cert-manager 實例。按照這些說明升級 cert-manager 到最新版本。

升級大綱​

按照以下步驟升級 Rancher 伺服器:

1. 備份執行 Rancher Server 的 Kubernetes 叢集​

使用備份應用程式備份 Rancher。

如果升級過程中出現問題,您將使用備份作為還原點。

2. 更新 Helm chart repository​

  1. 更新您的本地 Helm repo 快取。

    helm repo update
  2. 取得您用於安裝 Rancher 的 repository 名稱。

    有關 repo 及其差異的資訊,請參閱 Helm Chart Repository。

    • Latest:建議用於試用最新功能
      helm repo add rancher-latest https://releases.rancher.com/server-charts/latest
    • Stable:建議用於生產環境
      helm repo add rancher-stable https://releases.rancher.com/server-charts/stable
    • Alpha:即將發布版本的實驗性預覽。
      helm repo add rancher-alpha https://releases.rancher.com/server-charts/alpha
      注意:不支援升級到 Alpha、從 Alpha 升級或在 Alpha 之間升級。
    helm repo list

    NAME URL
    stable https://charts.helm.sh/stable
    rancher-<CHART_REPO> https://releases.rancher.com/server-charts/<CHART_REPO>
    備註

    如果您想切換到不同的 Helm chart repository,請按照如何切換 repository 的步驟操作。如果您切換 repository,請在繼續執行步驟 3 之前再次列出 repository,以確保您已新增正確的 repository。

  3. 從 Helm chart repository 取得最新的 chart 以安裝 Rancher。

    此命令將拉取最新的 chart 並將其儲存在目前目錄中作為 .tgz 檔案。

    helm fetch rancher-<CHART_REPO>/rancher

    您可以透過新增 --version= 標籤來取得要升級到的特定版本的 chart。例如:

    helm fetch rancher-<CHART_REPO>/rancher --version=2.6.8

3. 升級 Rancher​

本節描述如何使用 Helm 升級正常(連接網際網路)或離線安裝的 Rancher。

離線說明:

如果您在離線環境中安裝 Rancher,請跳過本頁面的其餘部分,並按照此頁面上的說明呈現 Helm 模板。

從目前安裝的 Rancher Helm chart 取得使用 --set 傳遞的值。

helm get values rancher -n cattle-system

hostname: rancher.my.org
備註

此命令將列出更多值。這只是其中一個值的範例。

提示

您的部署名稱可能會有所不同;例如,如果您透過 AWS Marketplace 部署 Rancher,部署名稱是 'rancher-stable'。 因此:

helm get values rancher-stable -n cattle-system

hostname: rancher.my.org

如果您要從 v1.5 或更低版本升級 cert-manager 到最新版本,請按照 cert-manager 升級文件了解如何在不需要解除安裝或重新安裝 Rancher 的情況下升級 cert-manager。否則,請按照下面的升級 Rancher 的步驟操作。

升級 Rancher 的步驟​

使用所有設定將 Rancher 升級到最新版本。

取得上一步驟中的所有值,並使用 --set key=value 將它們附加到命令中。

helm upgrade rancher rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
--set hostname=rancher.my.org
備註

以上只是一個範例,上一步驟可能有更多值需要附加。

提示

如果您透過 AWS Marketplace 部署 Rancher,部署名稱是 'rancher-stable'。 因此:

helm upgrade rancher-stable rancher-<CHART_REPO>/rancher \
--namespace cattle-system \
--set hostname=rancher.my.org

或者,可以將目前值匯出到檔案並在升級期間參考該檔案。例如,僅變更 Rancher 版本:

  1. 將目前值匯出到檔案:

    helm get values rancher -n cattle-system -o yaml > values.yaml
  2. 僅更新 Rancher 版本:

    helm upgrade rancher rancher-<CHART_REPO>/rancher \
    --namespace cattle-system \
    -f values.yaml \
    --version=2.6.8

4. 驗證升級​

登入 Rancher 以確認升級成功。

提示

升級後遇到網路問題?

請參閱還原叢集網路。

已知升級問題​

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