このセクションでは、Tanzu Kubernetes Grid のワークロード クラスタにインストールして構成できるパッケージの概要について説明します。
Tanzu Kubernetes Grid によって作成されたワークロード クラスタに package をインストールすると、クラスタに機能が追加されます。この機能は通常、クラスタがホストするワークロードにサービスを提供します。たとえば、Antrea パッケージは Antrea コンテナ ネットワーク インターフェイス (CNI)、Contour パッケージは入力方向制御サービス、Harbor パッケージはプライベート コンテナ レジストリを提供するなどです。一部のパッケージは、クラスタ自体の操作をサポートします。
内部的には、パッケージは構成メタデータとイメージ リファレンスで構成され、パッケージに含まれるソフトウェアと Kubernetes クラスタへのインストール方法をパッケージ マネージャに通知します。パッケージは、パッケージ リポジトリにグループ化されます。一部のパッケージはクラスタで自動的に有効になりますが、他のパッケージは Tanzu CLI を使用して明示的にインストールされます。Tanzu Kubernetes Grid でのパッケージとパッケージ リポジトリの実装方法の詳細については、以下の「Carvel API リソース」を参照してください。
Tanzu Kubernetes Grid には、次のタイプのパッケージが含まれています。
tanzu-standard
パッケージ リポジトリ、またはクラスタに追加するその他のリポジトリにあります。後述の「CLI で管理されるパッケージ」セクションを参照してください。これらのパッケージは通常、基本的なクラスタ機能に必要です。Kubernetes クラスタを作成してアップグレードすると、Tanzu Kubernetes Grid によって自動的にインストールおよびアップグレードされます。
注
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 クラスタにネットワーク ポリシーを適用します。CNI プロバイダとして Calico が選択されていない限り、デフォルトでインストールされます。 |
calico |
ワークロード | 管理とワークロード | ポッド ネットワークを有効にし、Kubernetes クラスタにネットワーク ポリシーを適用します。CNI プロバイダとして Calico が選択されている場合にインストールされます。Windows ではサポートされていません。 |
capabilities |
ワークロード | ワークロード | ケイパビリティ API を有効にします。「ケイパビリティ」とは、オブジェクトや API 対象領域など、Kubernetes クラスタが実行する、または持つことができるものを指します。ケイパビリティ検出を使用して、「これは TKG クラスタか?」や、「このクラスタにはリソース X があるか?」などの質問に答えることができます。 |
guest-cluster-auth-service |
ワークロード | 未インストール | vSphere シングル サインオン (SSO) を管理し、vSphere SSO ユーザーがターゲット ワークロード クラスタにアクセスできるようにします。 |
kapp-controller |
ワークロード | 管理とワークロード | パッケージを管理します。 |
load-balancer-and-ingress-service (AKO) |
未インストール | 管理とワークロード(NSX ALB を使用する vSphere のみ) | Tanzu Kubernetes Grid によって作成されたクラスタで実行されているアプリケーションに対する L4+L7 ロード バランシングを提供します。これは、North-South トラフィックに使用されます。このパッケージは、NSX Advanced Load Balancer が有効になっている場合にインストールされます。 |
metrics-server |
ワークロード | 管理とワークロード | メトリック サーバを提供します。 |
pinniped |
ワークロード | 管理とワークロード | ユーザー認証を提供します。ID プロバイダが構成されている場合にのみインストールされます。すでに作成されたスタンドアローン管理クラスタにインストールできます。詳細については、「既存の環境での ID 管理の有効化と構成」を参照してください。 |
secretgen-controller |
ワークロード | ワークロード | carvel-secretgen-controller を有効にします。 |
tanzu-addons-manager |
管理 | 管理 | tanzu-core パッケージのライフサイクルを管理します。 |
tkg-pkg |
未インストール | 管理 | tanzu-addons-manager 、tkr-source-controller 、ClusterClass 定義、および TKG スタンドアローン管理クラスタに必要なその他のコンポーネントをインストールします。 |
vsphere-cpi |
ワークロード | 管理とワークロード(vSphere のみ) | vSphere クラウド プロバイダ インターフェイスを提供します。 |
vsphere-pv-csi |
ワークロード | 未インストール | vSphere クラウド ストレージ インターフェイスを提供します。 |
CLI で管理されるパッケージは、Tanzu Kubernetes Grid によって作成された Kubernetes クラスタを拡張します。クラスタを作成したら、tanzu-standard
パッケージ リポジトリ、またはクラスタに追加した他のパッケージ リポジトリからパッケージをインストールできます。
CLI で管理されるパッケージのリスト、パッケージが公開されているパッケージ リポジトリ、およびパッケージのインストール方法については、「Tanzu CLI を使用したパッケージのインストールと管理」を参照してください。
Kubernetes クラスタでパッケージを使用できるようにするために、Tanzu Kubernetes Grid によってターゲット クラスタに次の API リソースが作成されます。
PackageRepository
または pkgr
は、単一のパッケージ リポジトリを表します。パッケージ マネージャ kapp-controller
は、リソースで定義されているパッケージ リポジトリを参照します。パッケージ リポジトリには、Package
および PackageMetadata
リソースが含まれています。ターゲット クラスタに PackageRepository
が作成されると、kapp-controller
はパッケージ リポジトリに含まれるパッケージをインストールできます。この API リソースは、CLI で管理されるパッケージにのみ使用されます。Package
(pkg
) は、特定のパッケージに関するバージョン固有の情報を含み、パッケージのインストール方法を定義します。kapp-controller
は、パッケージのインストール時に Package
リソースを使用します。PackageMetadata
(pkgm
) には、特定のパッケージに関するバージョンに依存しない情報が含まれています。PackageInstall
(pkgi
) は、ターゲット クラスタにインストールされているパッケージを表します。また、パッケージのインストールに使用された Package
リソースを参照します。これらのリソースを一覧表示および表示するには、kubectl api-resources
および kubectl get
コマンドを使用します。Carvel API リソースの詳細については、Carvel ドキュメントの「パッケージング (Packaging)」を参照してください。