套件

本節提供的概觀說明可在 Tanzu Kubernetes Grid 中的工作負載叢集上安裝和設定的套件。

在 Tanzu Kubernetes Grid 建立的工作負載叢集上安裝套件會為叢集新增一項功能。此功能通常為叢集託管的工作負載提供服務。例如,Antrea 套件為 Antrea 容器網路介面 (CNI)、Contour 套件輸入控制服務、Harbor 套件提供私人容器登錄等。某些套件支援叢集本身的作業。

在內部,套件包含組態中繼資料和映像參考,可向套件管理員告知套件包含什麼軟體及如何安裝到 Kubernetes 叢集。套件分組為套件存放庫。有些套件自動在叢集中啟用,而有些是透過 Tanzu CLI 明確安裝。如需有關如何在 Tanzu Kubernetes Grid 中實作套件和套件存放庫的詳細資訊,請參閱下面的 Carvel API 資源

套件類型

Tanzu Kubernetes Grid 包含以下類型的套件:

  • 自動管理的套件。Tanzu Kubernetes Grid 會自動安裝和升級這些套件。請參閱下面的自動管理的套件一節。
  • CLI 管理的套件。這些套件是透過 Tanzu CLI 明確安裝和升級。位於 tanzu-standard 套件存放庫,或您新增至叢集的其他存放庫。請參閱下面的 CLI 管理的套件一節。

自動管理的套件

基本叢集功能通常需要這些套件。Tanzu Kubernetes Grid 會在您建立和升級 Kubernetes 叢集時自動安裝和升級這些套件。

附註

tanzu package CLI 外掛程式僅適用於 CLI 管理的套件。請勿使用 tanzu package CLI 外掛程式來安裝和管理自動管理的套件。其生命週期由 Tanzu Kubernetes Grid 管理。

有關如何檢視和更新自動管理的套件組態,請參閱檢視和自訂自動管理的套件組態

安裝和版本更新

Tanzu Kubernetes Grid 管理自動管理套件的生命週期。這包括自動安裝套件和更新版本。

自動管理的套件是在叢集建立期間安裝。為了確定要在工作負載叢集中安裝哪些自動管理的套件,Tanzu Kubernetes Grid 會讀取用於建立叢集的 Tanzu Kubernetes 版本和叢集特定的組態資訊。升級工作負載叢集時,在升級過程中,Tanzu Kubernetes Grid 會更新叢集中安裝的自動管理套件的版本。

自動管理套件清單

下表列出 TKG 所安裝的自動管理套件,以及其安裝所在的叢集類型。

自動管理的套件會從 tanzu-core 存放庫進行安裝,並在以下命名空間中執行,具體取決於 TKG 部署類型:

  • 主管命名空間:vmware-system-tkg
  • 獨立管理叢集命名空間:tkg-system
套件 安裝於 (具有主管) 安裝於 (具有獨立管理叢集) 說明
ako-operator 未安裝 管理 (僅限使用 NSX ALB 的 vSphere) 提供 VMware NSX Advanced Load Balancer。如果啟用了 NSX Advanced Load Balancer,則會安裝此套件。
antrea 工作負載 管理和工作負載 啟用網繭網路,並對 Kubernetes 叢集強制執行網路原則。依預設會安裝,除非選取 Calico 作為 CNI 提供者。
calico 工作負載 管理和工作負載 啟用網繭網路,並對 Kubernetes 叢集強制執行網路原則。如果選取 Calico 作為 CNI 提供者,則會安裝此項。在 Windows 上不支援。
capabilities 工作負載 工作負載 啟用功能 API。「capability」是 Kubernetes 叢集可以執行或擁有的任何內容,例如物件和 API 表面區域。Capability 探索可用於回答諸如「這是 TKG 叢集嗎?」或「此叢集是否具有資源 X?」等問題。
guest-cluster-auth-service 工作負載 未安裝 管理 vSphere Single Sign-On (SSO),讓 vSphere SSO 使用者能夠存取目標工作負載叢集
kapp-controller 工作負載 管理和工作負載 管理套件。
load-balancer-and-ingress-service (AKO) 未安裝 管理和工作負載 (僅限使用 NSX ALB 的 vSphere) 可針對在 Tanzu Kubernetes Grid 所建立的叢集中執行的應用程式,提供 L4+L7 負載平衡;用於南北向流量。如果啟用了 NSX Advanced Load Balancer,則會安裝此套件。
metrics-server 工作負載 管理和工作負載 提供度量伺服器
pinniped 工作負載 管理和工作負載 提供使用者驗證。僅當設定了身分識別提供者時,才會安裝此項。可以在獨立管理叢集建立之後,安裝於其中;請參閱在現有部署中啟用和設定身分識別管理
secretgen-controller 工作負載 工作負載 啟用 carvel-secretgen-controller
tanzu-addons-manager 管理 管理 管理 tanzu-core 套件的生命週期。
tkg-pkg 未安裝 管理 安裝 tanzu-addons-managertkr-source-controllerClusterClass 定義,以及 TKG 獨立管理叢集所需的其他元件。
vsphere-cpi 工作負載 管理和工作負載 (僅限 vSphere) 提供 vSphere 雲端提供者介面
vsphere-pv-csi 工作負載 未安裝 提供 vSphere 雲端儲存介面

CLI 管理的套件

CLI 管理的套件延伸 Tanzu Kubernetes Grid 建立的 Kubernetes 叢集。建立叢集後,您可以從 tanzu-standard 套件存放庫或從新增至叢集的其他套件存放庫安裝套件。

有關 CLI 管理的套件清單、發佈這些套件的套件存放庫以及如何安裝套件,請參閱使用 Tanzu CLI 來安裝和管理套件

Carvel API 資源

為了提供套件給 Kubernetes 叢集使用,Tanzu Kubernetes Grid 會在目標叢集中建立以下 API 資源:

  • PackageRepositorypkgr 表示單一套件存放庫。這會將 kapp-controller 套件管理員指向資源中定義的套件存放庫。套件存放庫包含 PackagePackageMetadata 資源。在目標叢集中建立 PackageRepository 後,kapp-controller 可以安裝套件存放庫包含的任何套件。此 API 資源僅用於 CLI 管理的套件。
  • Packagepkg 包含給定套件的版本特定資訊,並定義如何安裝套件。在安裝套件時,kapp-controller 會使用 Package 資源。
  • PackageMetadatapkgm 包含給定套件的版本無關資訊。
  • PackageInstallpkgi 代表目標叢集中已安裝的套件。還參考用於安裝套件的 Package 資源。

您可以使用 kubectl api-resourceskubectl get 命令列出並檢視這些資源。如需有關 Carvel API 資源的詳細資訊,請參閱 Carvel 說明文件中的封裝

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