多個 Kubernetes 版本

本主題說明如何列出可用的 Kubernetes 版本,並部署具有非預設 Kubernetes 版本的工作負載叢集。

關於 Kubernetes 版本

具有獨立管理叢集的 Tanzu Kubernetes Grid 的每個版本都提供一個預設版本和兩個非預設版本的 Kubernetes,藉由執行 tanzu kubernetes-release get 可列出這些版本。

Tanzu Kubernetes Grid 會管理具有 Tanzu Kubernetes 版本 (TKr) 物件的 Kubernetes 版本。TKr 指定與 TKr 中定義與 Kubernetes 版本相容的作業系統映像、核心 Kubernetes 元件和啟動載入套件。執行具有預設或非預設 Tkr 的 tanzu cluster create 時,Tanzu Kubernetes Grid 使用 TKr 中指定的元件和啟動載入套件來建立叢集。它還會讀取叢集組態檔,以決定建立叢集時要使用的相容作業系統映像。

有關支援的 Kubernetes 版本的完整清單,請參見《VMware Tanzu Kubernetes Grid 2.2 發行說明》中的 Tanzu Kubernetes Grid v2.2 中支援的 Kubernetes 版本

列出可用版本

若要列出所有可用的 Kubernetes 版本及其目前的相容性和升級狀態,請執行具有選用版本相符引數的 tanzu kubernetes-release get,例如:

  • 若要列出所有版本,請執行 tanzu kubernetes-release get
  • 若要列出與 v1.24.11 相符的所有版本,請執行 tanzu kubernetes-release get v1.23.10
tanzu kubernetes-release get
NAME                       VERSION                  COMPATIBLE  ACTIVE  UPDATES AVAILABLE
v1.23.17---vmware.1-tkg.1  v1.23.17+vmware.1-tkg.1  True        True
v1.24.11---vmware.1-tkg.1  v1.24.11+vmware.1-tkg.1  True        True
v1.25.7---vmware.1-tkg.1  v1.25.7+vmware.1-tkg.1  True        True

列出可用的升級

若要探索可用於特定工作負載叢集的 Tkr 版本,請執行含有叢集全名的 tanzu cluster available-upgrades get,例如:

tanzu cluster available-upgrades get my-cluster

啟動或停用 Tanzu Kubernetes 版本

可以啟用或停用 TKr。若要啟用 TKr,請輸入:

tanzu kubernetes-release activate TKR-NAME

例如:

tanzu kubernetes-release activate v1.22.11---vmware.1-tkg.1

若要停用 TKr,請輸入:

tanzu kubernetes-release deactivate TKR-NAME

例如:

tanzu kubernetes-release deactivate v1.22.11---vmware.1-tkg.1

部署具有非預設 Kubernetes 版本的叢集

每個 Tanzu Kubernetes Grid 版本都會提供 Kubernetes 的預設版本。Tanzu Kubernetes Grid v2.2 的預設版本為 Kubernetes v1.25.7。

上游 Kubernetes 發行修補程式或新版本時,VMware 會將它們發佈於公用登錄中,Tanzu Kubernetes 版本控制器會將它們匯入至管理叢集。這可讓 tanzu CLI 根據新版本來建立叢集。

  • 若要列出可用的 Kubernetes 版本,請參閱上面的可用的 Kubernetes 版本
  • 若要部署執行 Kubernetes 非預設版本的叢集,請執行以下步驟。

將 Kubernetes 版本發佈到基礎結構

在 vSphere 和 Azure 上,您還需要另外執行一個步驟,才能部署執行 Kubernetes 非預設版本的叢集:

  • vSphere:將適當的基礎映像範本 OVA 檔案匯入至 vSphere,並轉換為虛擬機器範本。如需將基礎 OVA 檔案匯入至 vSphere 的相關資訊,請參閱將基礎映像範本匯入到 vSphere

  • Azure:執行 Azure CLI 命令,以接受基礎作業系統版本的授權。接受授權後,未來即可以跳過此步驟:

    1. tanzu kubernetes-release get 命令輸出中列出的目標 Kubernetes 版本轉換為其 Azure 映像 SKU,如下所示:
      • 將前置 v 變更為 k8s-
      • 將版本號碼中的 . 變更為 dot
      • 將尾端的 +vmware.* 變更為 -ubuntu-2004,以指定 Ubuntu v20.04 (在 Azure 上,這是所有 Tanzu Kubernetes Grid 虛擬機器的預設作業系統版本)。
      • 範例:k8s-1dot25dot7-ubuntu-2004k8s-1dot23dot16-ubuntu-2004
    2. 執行 az vm image terms accept。例如:

      az vm image terms accept --publisher vmware-inc --offer tkg-capi-2022-06-24 --plan k8s-1dot25dot7-ubuntu-2004
      
  • Amazon Web Services (AWS):無需任何動作。含有支援的 Kubernetes 版本的 Amazon Linux 2 Amazon 機器映像 (AMI),會開放給所有支援的 AWS 區域中的所有 AWS 使用者使用。Tanzu Kubernetes Grid 會自動將適當的 AMI 版本用於您指定的 Kubernetes 版本。

部署 Kubernetes 叢集

如果要部署基於計劃的叢集,請將環境變數 ALLOW_LEGACY_CLUSTER 設為 true

export ALLOW_LEGACY_CLUSTER=true

如果您要部署的工作負載叢集的 Kubernetes 版本,不是 Tanzu Kubernetes Grid 的預設版本,請在 --tkr 選項中指定 Tanzu Kubernetes 版本。例如,若要部署 Kubernetes v1.23.17 叢集,請執行:

tanzu cluster create my-1-23-17-cluster --tkr v1.23.17---vmware.1-tkg

如需如何建立工作負載叢集的詳細資料,請參閱建立工作負載叢集

使用自訂機器映像來部署叢集

對於常見的「作業系統版本/Kubernetes 版本/目標基礎結構」組合,具有獨立管理叢集的 Tanzu Kubernetes Grid 會提供預設機器映像。您可以選擇性地建置自訂機器映像和 TKr。

執行此動作的原因包括:

  • 為了在 VMware 支援但不散佈的基礎作業系統 (如 Red Hat Enterprise Linux (RHEL) v8) 上建立叢集。
  • 為了將其他套件安裝到基本機器映像,或者依照《Image Builder 說明文件》中的自訂中所述來自訂它。

如需相關指示,請參閱建置機器映像

check-circle-line exclamation-circle-line close-line
Scroll to top icon