VMware Cloud Director で Kubernetes を使用することにより、テナントにマルチテナントの Kubernetes サービスを提供できます。
Container Service Extension
Kubernetes Container Clusters は VMware Cloud Director 用の VMware Cloud Director Container Service Extension プラグインです。サービス プロバイダおよびテナントが Kubernetes クラスタを作成するには、Kubernetes Container Clusters プラグインを使用する必要があります。互換性のある最新の Kubernetes Container Clusters プラグインは、関連する VMware Cloud Director バージョンの VMware Cloud Director ダウンロード ページからダウンロードして、VMware Cloud Director Service Provider Admin Portal にアップロードすることができます。テナントで Kubernetes クラスタを作成できるようにするには、プラグインをテナント組織に公開する必要があります。
ネイティブ クラスタと VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) クラスタを作成するには、サービス プロバイダとテナントの両方が Container Service Extension バージョン 3.1 を使用する必要があります。Container Service Extension 3.1 サーバのセットアップを完了し、Container Service Extension ネイティブ配置ポリシーを 1 つ以上の組織 VDC に公開する必要があります。
VMware Cloud Director の vSphere with Tanzu
VMware Cloud Director の vSphere with Tanzu を使用すると、スーパーバイザー クラスタによってバッキングされているプロバイダ仮想データセンター (VDC) を作成できます。vSphere with Tanzu が有効になっているホスト クラスタは、スーパーバイザー クラスタと呼ばれます。リソースの使用に制限を設定し、組織、ユーザー、グループあたりの Kubernetes クラスタの数など、使用可能なリソースを制限することができます。詳細については、組織のリソース使用に対する割り当て容量の管理を参照してください。
VMware Cloud Director で vSphere with Tanzu を使用するには、まず vSphere 7.0 以降のクラスタで vSphere with Tanzu 機能を有効にして、そのクラスタをスーパーバイザー クラスタとして構成する必要があります。vSphere ドキュメントの『vSphere with Kubernetes の構成および管理』ガイドを参照してください。使用する vCenter Server インスタンスには、ホスト クラスタとスーパーバイザー クラスタを両方含めることができます。
クラスタを作成するには、Tanzu Kubernetes プロバイダ VDC Kubernetes ポリシーを組織に公開し、作成時に組織 VDC Kubernetes ポリシーを適用する必要があります。ネイティブ クラスタおよび TKGI クラスタは、プロバイダ VDC Kubernetes ポリシーと組織 VDC Kubernetes ポリシーを使用しません。
Kubernetes クラスタ タイプ
- ネイティブ クラスタ - Kubernetes Container Clusters プラグインは、ネイティブの Kubernetes ランタイムを使用してクラスタを管理します。これらのクラスタは制御プレーン ノードが 1 台で、High Availability 機能は削減されています。また、パーシステント ボリュームの選択肢は少なく、ネットワークの自動化機能もありません。ただし、コストが低くなる場合があります。ネイティブの Kubernetes クラスタ環境では、Container Service Extension サーバをセットアップする必要があります。Container Service Extension (CSE) のドキュメントの「CSE サーバ管理」の章を参照してください。
- Tanzu Kubernetes Grid の通称は TKG です。VMware Cloud Director 10.3.1 以降では、Tanzu Kubernetes Grid クラスタを作成できます。Tanzu Kubernetes Grid は、VMware によって強化された署名付きのアップストリーム互換 Kubernetes、単一の制御プレーン ノード、パーシステント ボリュームに対する独立したディスクベースの動的プロビジョニング、および L4 ロードバランサの自動化をサポートします。Tanzu Kubernetes Grid クラスタの詳細については、VMware Tanzu Kubernetes Grid のドキュメントを参照してください。
- VMware Tanzu® Kubernetes Grid™ サービス クラスタ(通称 TKGS)- vSphere with Tanzu ランタイム オプションを使用して、vSphere with Tanzu で管理される Tanzu Kubernetes Grid Service クラスタを作成できます。Tanzu Kubernetes Grid Service は、VMware によって強化された署名付きのアップストリーム互換 Kubernetes、複数の制御プレーン ノード、パーシステント ボリュームに対する First Class Disk ベースの動的および静的プロビジョニング、および L4 ロードバランサの自動化をサポートします。このオプションを使用すると、機能は増えますが、コストが高くなる可能性があります。詳細については、vSphere ドキュメントの『vSphere with Tanzu の構成および管理』ガイドを参照してください。
- TKGI クラスタ - VMware Tanzu Kubernetes Grid Integrated Edition は、マルチクラウドのエンタープライズ プロバイダおよびサービス プロバイダが運用できる Kubernetes を対象とする、専用のコンテナ ソリューションです。これらの機能には、Kubernetes クラスタの高可用性、自動拡張、健全性チェック、自己修復、ローリング アップグレードなどがあります。TKGI クラスタの詳細については、VMware Tanzu Kubernetes Grid Integrated Editionのドキュメントを参照してください。
Tanzu Kubernetes クラスタ作成用のワークフロー
- vSphere with Tanzu 機能が有効になっている vCenter Server 7.0 以降のインスタンスを VMware Cloud Director に追加します。『vCenter Server インスタンスを単独、または NSX Manager インスタンスと共に接続する』を参照してください。
- 各スーパーバイザー クラスタのネットワーク設定を確認して、Kubernetes のワークロードを実行できるようにします。
重要: Ingress CIDRs および Services CIDR パラメータの IP アドレス範囲が、 services および pods パラメータのデフォルトの vSphere の値である IP アドレス 10.96.0.0/12 および 192.168.0.0/ 192.16 と重複することはできません。『 vSphere with Kubernetes の構成および管理』ガイドの Tanzu Kubernetes クラスタの構成パラメータに関する情報を参照してください。注: VMware Cloud Director 10.2.2 以降で、初期セットアップ後にスーパーバイザー クラスタのネットワーク設定を変更した場合は、 vCenter Server インスタンスを更新して、クラスタが作成された組織仮想データセンターの外部にある Tanzu Kubernetes クラスタからのアクセスをブロックする自動ファイアウォール ポリシーおよび NAT ルールを調整する必要があります。
- スーパーバイザー クラスタによってバッキングされるプロバイダ VDC を作成します。『プロバイダ仮想データセンターの作成』を参照してください。
または、既存のプロバイダ VDC にスーパーバイザー クラスタを追加することもできます。vSphere 6.7 以前の環境を使用している場合は、環境をバージョン 7.0 にアップグレードして、既存のクラスタで vSphere with Tanzu を有効にすることもできます。
スーパーバイザー クラスタによってバッキングされているプロバイダ VDC は、すべてのプロバイダ VDC が表示されているグリッド内に、名前の横に Kubernetes アイコンが付いた状態で表示されます。
- (オプション)VMware Cloud Director によって、スーパーバイザー クラスタでバッキングされているプロバイダ VDC のデフォルトのプロバイダ VDC Kubernetes ポリシーが自動的に生成されます。Tanzu Kubernetes クラスタに対して、追加のプロバイダ VDC Kubernetes ポリシーを作成できます。『プロバイダ VDC Kubernetes ポリシーの作成』を参照してください。
- [プロバイダ VDC] タブのプロバイダ VDC Kubernetes ポリシーの組織 VDC への公開 または [組織 VDC] タブの 組織 VDC Kubernetes ポリシーの追加。
- サービス プロバイダに Kubernetes Container Clusters プラグインを公開します。『組織からのプラグインの公開または公開解除』を参照してください。テナントで Kubernetes クラスタを作成できるようにするには、これらの組織に Kubernetes Container Clusters プラグインを公開する必要があります。VMware Cloud Director プラグインの管理の詳細については、プラグインの管理を参照してください。
- Tanzu Kubernetes クラスタを作成および管理する権限をテナントに付与する場合は、クラスタを使用する組織に vmware:tkgcluster 資格権限バンドルを公開する必要があります。権限バンドルを共有したら、Tanzu Kubernetes クラスタを作成および変更するロールに編集:Tanzu Kubernetes ゲスト クラスタ権限を追加する必要があります。ユーザーがクラスタの削除も行う場合は、ロールに完全コントロール:Tanzu Kubernetes ゲスト クラスタ権限を追加する必要があります。さらに、組織内のすべての Tanzu Kubernetes クラスタを表示するユーザーや、サイト間でクラスタを管理するユーザーに、管理者権限を割り当てることもできます。ランタイム定義エンティティ (RDE) の権限およびアクセス レベルの詳細については、定義済みエンティティの管理を参照してください。
- アクセス コントロール リスト (ACL) エントリを作成して、テナントまたはシステム管理者にアクセス権を付与します。ランタイム定義エンティティ (RDE) の共有の詳細については、定義済みエンティティの共有を参照してください。
- Tanzu Kubernetes クラスタの作成
ネイティブ クラスタおよび TKGI クラスタ作成のワークフロー
- サービス プロバイダに Kubernetes Container Clusters プラグインを公開します。『組織からのプラグインの公開または公開解除』を参照してください。テナントで Kubernetes クラスタを作成できるようにするには、これらの組織に Kubernetes Container Clusters プラグインを公開する必要があります。VMware Cloud Director プラグインの管理の詳細については、プラグインの管理を参照してください。
- Container Service Extension サーバをセットアップし、Container Service Extension ネイティブ配置ポリシーまたは TKGI 有効化メタデータを組織 VDC に公開します。CSE サーバの設定の詳細については、Container Service Extension (CSE) のドキュメントの「CSE サーバ管理」の章を参照してください。
- ネイティブ クラスタを作成および管理する権限をテナントに付与する場合は、ネイティブ クラスタを使用する組織に cse:nativeCluster 資格権限バンドルを公開する必要があります。権限バンドルを共有したら、ネイティブ クラスタを作成および変更するロールに 編集:CSE:NATIVECLUSTER 権限を追加する必要があります。ユーザーがクラスタの削除も行う場合は、ロールに完全コントロール:CSE:NATIVECLUSTER 権限を追加する必要があります。さらに、組織内のすべての Tanzu Kubernetes クラスタを表示するユーザーや、サイト間でクラスタを管理するユーザーに、管理者権限を割り当てることもできます。ランタイム定義エンティティ (RDE) の権限およびアクセス レベルの詳細については、定義済みエンティティの管理を参照してください。
- TKGI クラスタを作成および管理する権限をテナントに付与する場合は、特定の組織に {cse}:PKS DEPLOY RIGHT 権限を公開し、TKGI クラスタを作成および管理するロールに {cse}:PKS DEPLOY RIGHT 権限を追加する必要があります。{cse}:PKS DEPLOY RIGHT は、Container Service Extension サーバのインストール中に作成されます。
- ネイティブ クラスタのアクセス コントロール リスト (ACL) エントリを作成して、テナントまたはシステム管理者にアクセス権を付与します。ランタイム定義エンティティ (RDE) の共有の詳細については、定義済みエンティティの共有を参照してください。
- ネイティブ Kubernetes クラスタの作成またはVMware Tanzu Kubernetes Grid Integrated Edition クラスタの作成。
Tanzu Kubernetes Grid クラスタ作成用のワークフロー
VMware Cloud Director 10.3.1 以降では、Tanzu Kubernetes Grid クラスタを作成できます。
- サービス プロバイダに Kubernetes Container Clusters プラグインを公開します。『組織からのプラグインの公開または公開解除』を参照してください。テナントで Kubernetes クラスタを作成できるようにするには、これらの組織に Kubernetes Container Clusters プラグインを公開する必要があります。VMware Cloud Director プラグインの管理の詳細については、プラグインの管理を参照してください。
- ネイティブ クラスタを作成および管理する権限をテナントに付与する場合は、Tanzu Kubernetes Grid クラスタを使用する組織に cse:nativeCluster 資格権限バンドルを公開する必要があります。権限バンドルを共有したら、Tanzu Kubernetes Grid クラスタを作成および変更するロールに編集:CSE:NATIVECLUSTER 権限を追加する必要があります。ユーザーがクラスタの削除も行う場合は、ロールに完全コントロール:CSE:NATIVECLUSTER 権限を追加する必要があります。さらに、組織内のすべての Tanzu Kubernetes クラスタを表示するユーザーや、サイト間でクラスタを管理するユーザーに、管理者権限を割り当てることもできます。ランタイム定義エンティティ (RDE) の権限およびアクセス レベルの詳細については、定義済みエンティティの管理を参照してください。
- VMware Tanzu Kubernetes Grid クラスタの作成.