VMware Cloud Director で Kubernetes を使用することにより、テナントにマルチテナントの Kubernetes サービスを提供できます。

Container Service Extension

Kubernetes Container ClustersVMware Cloud Director 用の Container Service Extension プラグインです。サービス プロバイダおよびテナントが Kubernetes クラスタを作成するには、Kubernetes Container Clusters プラグインを使用する必要があります。VMware Cloud Director 10.2 以降では、プラグインの手動ダウンロードや、VMware Cloud Director Service Provider Admin Portal へのアップロードを行う必要はありません。VMware Cloud Director では、デフォルトでこのプラグインを使用できますが、Kubernetes クラスタを作成できるようにするには、テナントにプラグインを公開する必要があります。

ネイティブ クラスタと VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) クラスタを作成するには、サービス プロバイダとテナントの両方が Container Service Extension バージョン 3.0 を使用する必要があります。Container Service Extension 3.0 サーバのセットアップを完了し、Container Service Extension ネイティブ配置ポリシーを 1 つ以上の組織 VDC に公開する必要があります。

VMware Cloud DirectorvSphere with VMware Tanzu

VMware Cloud DirectorvSphere with VMware Tanzu を使用すると、スーパーバイザー クラスタによってバッキングされているプロバイダ仮想データセンター (VDC) を作成できます。vSphere with VMware Tanzu が有効になっているホスト クラスタは、スーパーバイザー クラスタと呼ばれます。リソースの使用に制限を設定し、組織、ユーザー、グループあたりの Kubernetes クラスタの数など、使用可能なリソースを制限することができます。詳細については、組織のリソース使用に対する割り当て容量の管理を参照してください。

VMware Cloud DirectorvSphere with VMware Tanzu を使用するには、まず vSphere 7.0 以降のクラスタで vSphere with VMware Tanzu 機能を有効にして、そのクラスタをスーパーバイザー クラスタとして構成する必要があります。vSphere ドキュメントの『vSphere with Kubernetes の構成および管理』ガイドを参照してください。使用する vCenter Server インスタンスには、ホスト クラスタとスーパーバイザー クラスタを両方含めることができます。

クラスタを作成するには、Tanzu Kubernetes プロバイダ VDC Kubernetes ポリシーを組織に公開し、作成時に組織 VDC Kubernetes ポリシーを適用する必要があります。ネイティブ クラスタおよび TKGI クラスタは、プロバイダ VDC Kubernetes ポリシーと組織 VDC Kubernetes ポリシーを使用しません。

Kubernetes クラスタ タイプ

  • ネイティブ クラスタ - Kubernetes Container Clusters プラグインは、ネイティブの Kubernetes ランタイムを使用してクラスタを管理します。これらのクラスタはマスター ノードが 1 台で、高可用性機能は削減されています。また、パーシステント ボリュームの選択肢は少なく、ネットワークの自動化機能もありません。ただし、コストが低くなる場合があります。ネイティブの Kubernetes クラスタ環境では、Container Service Extension サーバをセットアップする必要があります。Container Service Extension (CSE) のドキュメントのCSE サーバ管理 の章を参照してください。
  • Tanzu Kubernetes クラスタ - vSphere with Tanzu ランタイム オプションを使用して、vSphere with VMware Tanzu で管理される Tanzu Kubernetes クラスタを作成できます。このオプションを使用すると、機能は増えますが、コストが高くなる可能性があります。詳細については、vSphere ドキュメントの『vSphere with Kubernetes の構成および管理』ガイドを参照してください。
  • TKGI クラスタ - VMware Tanzu Kubernetes Grid Integrated Edition は、マルチクラウドのエンタープライズ プロバイダおよびサービス プロバイダが運用できる Kubernetes を対象とする、専用のコンテナ ソリューションです。これらの機能には、Kubernetes クラスタの高可用性、自動拡張、健全性チェック、自己修復、ローリング アップグレードなどがあります。TKGI クラスタの詳細については、VMware Tanzu Kubernetes グリッド統合エディションのドキュメントを参照してください。

Tanzu Kubernetes クラスタ作成用のワークフロー

  1. vSphere with VMware Tanzu 機能が有効になっている vCenter Server 7.0 以降のインスタンスを VMware Cloud Director に追加します。『vCenter Server インスタンスを単独、または NSX Manager インスタンスと共に接続する』を参照してください。
  2. 各スーパーバイザー クラスタのネットワーク設定を確認して、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 クラスタの構成パラメータに関する情報を参照してください。
  3. スーパーバイザー クラスタによってバッキングされるプロバイダ VDC を作成します。『プロバイダ仮想データセンターの作成』を参照してください。

    または、既存のプロバイダ VDC にスーパーバイザー クラスタを追加することもできます。vSphere 6.7 以前の環境を使用している場合は、環境をバージョン 7.0 にアップグレードして、既存のクラスタで vSphere with VMware Tanzu を有効にすることもできます。

    スーパーバイザー クラスタによってバッキングされているプロバイダ VDC は、すべてのプロバイダ VDC が表示されているグリッド内に、名前の横に Kubernetes アイコンが付いた状態で表示されます。

  4. (オプション)VMware Cloud Director によって、スーパーバイザー クラスタでバッキングされているプロバイダ VDC のデフォルトのプロバイダ VDC Kubernetes ポリシーが自動的に生成されます。Tanzu Kubernetes クラスタに対して、追加のプロバイダ VDC Kubernetes ポリシーを作成できます。『プロバイダ VDC Kubernetes ポリシーの作成』を参照してください。
  5. [プロバイダ VDC] タブのプロバイダ VDC Kubernetes ポリシーの組織 VDC への公開 または [組織 VDC] タブの 組織 VDC Kubernetes ポリシーの追加
  6. サービス プロバイダに Kubernetes Container Clusters プラグインを公開します。『組織からのプラグインの公開または公開解除』を参照してください。テナントで Kubernetes クラスタを作成できるようにするには、これらの組織に Kubernetes Container Clusters プラグインを公開する必要があります。VMware Cloud Director プラグインの管理の詳細については、プラグインの管理を参照してください。
  7. Tanzu Kubernetes クラスタを作成および管理する権限をテナントに付与する場合は、クラスタを使用する組織に vmware:tkgcluster 資格権限バンドルを公開する必要があります。権限バンドルを共有したら、Tanzu Kubernetes クラスタを作成および変更するロールに編集:Tanzu Kubernetes ゲスト クラスタ権限を追加する必要があります。ユーザーがクラスタの削除も行う場合は、ロールに完全コントロール:Tanzu Kubernetes ゲスト クラスタ権限を追加する必要があります。さらに、組織内のすべての Tanzu Kubernetes クラスタを表示するユーザーや、サイト間でクラスタを管理するユーザーに、管理者権限を割り当てることもできます。ランタイム定義エンティティ (RDE) の権限およびアクセス レベルの詳細については、定義済みエンティティの管理を参照してください。
  8. アクセス コントロール リスト (ACL) エントリを作成して、テナントまたはシステム管理者にアクセス権を付与します。ランタイム定義エンティティ (RDE) の共有の詳細については、定義済みエンティティの共有を参照してください。
  9. vSphere with VMware Tanzu クラスタの作成

ネイティブ クラスタおよび TKGI クラスタ作成のワークフロー

  1. サービス プロバイダに Kubernetes Container Clusters プラグインを公開します。『組織からのプラグインの公開または公開解除』を参照してください。テナントで Kubernetes クラスタを作成できるようにするには、これらの組織に Kubernetes Container Clusters プラグインを公開する必要があります。VMware Cloud Director プラグインの管理の詳細については、プラグインの管理を参照してください。
  2. Container Service Extension サーバをセットアップし、Container Service Extension ネイティブ配置ポリシーまたは TKGI 有効化メタデータを組織 VDC に公開します。CSE サーバの設定の詳細については、Container Service Extension (CSE) のドキュメントのCSE サーバ管理 の章を参照してください。
  3. ネイティブ クラスタを作成および管理する権限をテナントに付与する場合は、ネイティブ クラスタを使用する組織に cse:nativeCluster 資格権限バンドルを公開する必要があります。権限バンドルを共有したら、ネイティブ クラスタを作成および変更するロールに 編集:CSE:NATIVECLUSTER 権限を追加する必要があります。ユーザーがクラスタの削除も行う場合は、ロールに完全コントロール:CSE:NATIVECLUSTER 権限を追加する必要があります。さらに、組織内のすべての Tanzu Kubernetes クラスタを表示するユーザーや、サイト間でクラスタを管理するユーザーに、管理者権限を割り当てることもできます。ランタイム定義エンティティ (RDE) の権限およびアクセス レベルの詳細については、定義済みエンティティの管理を参照してください。
  4. TKGI クラスタを作成および管理する権限をテナントに付与する場合は、特定の組織に {cse}:PKS DEPLOY RIGHT 権限を公開し、TKGI クラスタを作成および管理するロールに {cse}:PKS DEPLOY RIGHT 権限を追加する必要があります。{cse}:PKS DEPLOY RIGHT は、Container Service Extension サーバのインストール中に作成されます。
  5. ネイティブ クラスタのアクセス コントロール リスト (ACL) エントリを作成して、テナントまたはシステム管理者にアクセス権を付与します。ランタイム定義エンティティ (RDE) の共有の詳細については、定義済みエンティティの共有を参照してください。
  6. ネイティブ Kubernetes クラスタの作成またはVMware Tanzu Kubernetes Grid Integrated Edition クラスタの作成