スーパーバイザーvSphere 名前空間 を作成して構成する方法を確認します。vSphere 管理者は vSphere 名前空間 の作成後、この名前空間にリソース制限を設定し、DevOps エンジニアがアクセスできるように権限を設定します。DevOps エンジニアに Kubernetes 制御プレーンの URL を提供し、権限が付与されている名前空間でワークロードを実行できるようにします。

VDS ネットワーク スタックが構成されている スーパーバイザー の名前空間と、 NSX が構成されているクラスタの名前空間では、ネットワークの構成と機能が異なります。3 つの vSphere Zones にデプロイされた スーパーバイザー 上に構成した名前空間では、1 つのゾーンの スーパーバイザー 上の名前空間とは異なる機能セットがサポートされます。
  • NSX を使用して構成された 1 ゾーンの スーパーバイザー。そのような スーパーバイザー 上の vSphere 名前空間 では、vSphere ポッド、仮想マシン、Tanzu Kubernetes Grid クラスタ、スーパーバイザー サービス がサポートされます。これらの vSphere 名前空間 に対するワークロード ネットワークのサポートは、NSX によって提供されます。
  • NSX を使用して構成された 3 ゾーンの スーパーバイザーNSX を使用して構成された 3 ゾーン スーパーバイザー 上の vSphere 名前空間 では、Tanzu Kubernetes Grid クラスタおよび仮想マシンのみサポートされます。vSphere ポッドスーパーバイザー サービス はサポートされません。
  • VDS を使用して構成された 1 ゾーンの スーパーバイザー。VDS を使用した 1 ゾーン スーパーバイザー 上の vSphere 名前空間 では、Tanzu Kubernetes Grid、仮想マシン、スーパーバイザー サービス がサポートされます。スーパーバイザー サービス が独自の用途でデプロイするものを除き、vSphere ポッド はサポートされません。
  • VDS を使用して構成された 3 ゾーンの スーパーバイザー。VDS を使用した 3 ゾーン スーパーバイザー を実行する vSphere 名前空間 では、Tanzu Kubernetes Grid クラスタおよび仮想マシンのみサポートされます。vSphere ポッドスーパーバイザー サービス はサポートされません。

詳細については、『vSphere IaaS 制御プレーンの概念と計画』の「Requirements for Enabling a Three-Zone Supervisor with HA Proxy Load Balancer」および「Requirements for Enabling a Single-Cluster Supervisor with VDS Networking and HAProxy Load Balancer」を参照してください。

また、名前空間へのリソース制限の設定、権限の割り当てや、名前空間サービスをテンプレートとしてクラスタ上でプロビジョニングしたり、有効にしたりできます。したがって、DevOps エンジニアはセルフ サービス方式でスーパーバイザー名前空間を作成し、その中にワークロードをデプロイすることができます。詳細については、『vSphere IaaS control plane でのセルフサービス名前空間テンプレートのプロビジョニング』を参照してください。

スーパーバイザーNSX を使用する場合は、 vSphere 名前空間 レベルでネットワーク設定をオーバーライドするオプションがあります。このオプションを選択する場合は、以下の点に注意してください。
表 1. vSphere 名前空間 ネットワーク プランニングに関する考慮事項
検討事項 説明
NSX インストール 特定の vSphere 名前空間スーパーバイザー ネットワーク設定をオーバーライドするには、NSX に、Tier-0 ゲートウェイ(ルーター)専用の Edge クラスタと、Tier-1 ゲートウェイ専用の別の Edge クラスタを含める必要があります。ガイド「vSphere IaaS 制御プレーンのインストールと構成」に記載されている NSX のインストール手順を参照してください。
必要な IP アドレス管理 特定の vSphere 名前空間スーパーバイザー ネットワーク設定をオーバーライドする場合、新しい vSphere 名前空間 ネットワークでは、スーパーバイザー および他の vSphere 名前空間 ネットワークについて一意の Ingress サブネット、Egress サブネット、および名前空間ネットワーク サブネットを指定する必要があります。設定に応じて、IP アドレスの割り当てを管理する必要があります。
スーパーバイザー ルーティング スーパーバイザー は、TKG クラスタ ノードと Ingress サブネットに直接ルーティングできる必要があります。vSphere 名前空間 に Tier-0 ゲートウェイを選択する場合、必要なルーティングを構成する方法は 2 つあります。
  • Virtual Routing and Forwarding (VRF) ゲートウェイを使用して、スーパーバイザー Tier-0 ゲートウェイから構成を継承する
  • Border Gateway Protocol (BGP) を使用して、スーパーバイザー Tier-0 ゲートウェイと専用 Tier-0 ゲートウェイの間にルートを構成する

これらのオプションの詳細については、NSX Tier-0 ゲートウェイのドキュメントを参照してください。

前提条件

  • スーパーバイザー をデプロイします。
  • vSphere 名前空間 にアクセスする必要がある DevOps エンジニアおよび開発者のユーザーとグループを作成します。vCenter Single Sign-On に接続されている ID ソース、または スーパーバイザー を使用して構成された OIDC プロバイダにユーザーまたはグループを作成します。
  • パーシステント ストレージのストレージ ポリシーを作成します。名前空間が 3 ゾーン スーパーバイザー にある場合は、トポロジ対応のポリシーを使用します。トポロジに対応していないストレージ ポリシーを 3 ゾーン名前空間に割り当てることはできません。
  • スタンドアローン仮想マシンの仮想マシン クラスおよびコンテンツ ライブラリを作成します。
  • 必要な権限:
    • 名前空間.クラスタ全体の構成の変更
    • 名前空間.名前空間構成の変更

手順

  1. vSphere Client ホーム メニューから、[ワークロード管理] を選択します。
  2. [名前空間] タブを選択します。
  3. [名前空間の作成] をクリックします。
  4. vSphere 名前空間 を置く スーパーバイザー を選択します。
  5. 名前空間の名前を入力します。
    名前は DNS 準拠の形式にする必要があります。
  6. [ネットワーク] ドロップダウン メニューから、vSphere 名前空間 のワークロード ネットワークを選択します。
    注: この手順を使用できるのは、vSphere ネットワーク スタックが構成されたクラスタに名前空間を作成する場合のみです。
  7. スーパーバイザーNSX ネットワーク スタックが構成済みの場合は、[クラスタ ネットワーク設定のオーバーライド] を選択して スーパーバイザー ネットワーク設定をオーバーライドし、名前空間のネットワーク設定を構成できます。
    名前空間の次のネットワーク設定を構成します。
    オプション 説明
    Tier-0 ゲートウェイ 名前空間の Tier-1 ゲートウェイに関連付ける Tier-0 ゲートウェイを選択します。

    Tier-0 ゲートウェイを選択すると、クラスタを有効にするときに構成した Tier-0 ゲートウェイがオーバーライドされるため、再度 CIDR 範囲を構成する必要があります。

    注: スーパーバイザー は、TKG クラスタ ノードと Ingress サブネットに直接ルーティングできる必要があります。
    • Tier-0 ゲートウェイにリンクされている VRF ゲートウェイを選択すると、ネットワークとサブネットが自動的に構成されます。
    • NAT モードを選択済みの場合は、サブネット、Ingress、および Egress の CIDR を構成する必要があります。
    • NAT モードを選択解除した場合は、サブネットと Ingress CIDR のみを構成する必要があります。
    注: Tier-0 ゲートウェイは、一度選択すると変更できません。
    NAT モード NAT モードは、デフォルトで選択されています。
    このオプションを選択解除すると、 vSphere ポッド、仮想マシン、 Tanzu Kubernetes Grid クラスタ ノードの IP アドレスなどのワークロードがいずれも Tier-0 ゲートウェイの外から直接アクセスできるようになります。Egress CIDR を構成する必要はありません。
    注: 名前空間モードは、一度有効にすると変更できません。
    ロード バランサのサイズ 名前空間の Tier-1 ゲートウェイ上のロード バランサ インスタンスのサイズを選択します。
    名前空間ネットワーク 1 つ以上の IP CIDR を入力してサブネット/セグメントを作成し、名前空間に接続されているワークロードに IP アドレスを割り当てます。
    注: クラスタに CIDR 範囲を構成していない場合は、CIDR 範囲を入力します。名前空間を作成した後、名前空間ネットワーク設定を編集して追加の CIDR を構成できます。
    名前空間サブネット プリフィックス 名前空間セグメント用に予約されるサブネットのサイズを指定する、サブネット プリフィックスを入力します。デフォルトは 28 です。
    注: サブネット プリフィックスは、一度指定すると変更できません。
    入力方向 vSphere ポッド または Tanzu Kubernetes Grid クラスタのロード バランサ サービスによって公開される仮想 IP アドレスの Ingress IP アドレス範囲を決定する CIDR 注釈を入力します。

    名前空間を作成した後、名前空間ネットワーク設定を編集して追加の CIDR を構成できます。

    出力方向 SNAT IP アドレスの Egress IP アドレス範囲を決定する CIDR 注釈を入力します。

    名前空間を作成した後、名前空間ネットワーク設定を編集して追加の CIDR を構成できます。

  8. 説明を入力し、[作成] をクリックします。
    名前空間が スーパーバイザー に作成されます。
  9. 名前空間にアクセスできるユーザーの権限を設定します。
    vSphere 名前空間 に対する権限は、名前空間にアクセスする必要がある開発者および DevOps エンジニアのために、vSphere 管理者が設定します。1 つのユーザー アカウントで複数の名前空間にアクセスできます。管理者グループのメンバーであるユーザーは、 スーパーバイザー 上のすべての名前空間にアクセスできます。
    1. [権限] ペインで [権限の追加] を選択します。
    2. ID ソース、ユーザーまたはグループ、およびロールを選択し、[OK] をクリックします。
      ロール 説明
      表示可能 ユーザーまたはグループの読み取り専用アクセス。ユーザーまたはグループは、スーパーバイザー 制御プレーンにログインして、vSphere 名前空間 で実行されているワークロード(vSphere ポッドTanzu Kubernetes Grid クラスタ、仮想マシンなど)を一覧表示できます。
      編集可能 ユーザーまたはグループは、vSphere ポッドTanzu Kubernetes Grid クラスタ、仮想マシンを作成、読み取り、更新、および削除できます。管理者グループに属するユーザーには、スーパーバイザー 内のすべての名前空間に対する編集権限があります。
      所有者

      所有者権限を持つユーザー アカウントでは、次のことができます。

      • 名前空間でワークロードをデプロイおよび管理する。
      • 名前空間を他のユーザーまたはグループと共有する。
      • kubectl を使用して追加の vSphere 名前空間 を作成および削除する。所有者権限を持つユーザーは名前空間を共有する場合、表示、編集、または所有者権限を他のユーザーまたはグループに割り当てることができます。
      注: 所有者ロールは、vCenter Single Sign-On ID ソースで使用可能なユーザーに対してサポートされます。外部 ID プロバイダからのユーザーまたはグループで所有者ロールを使用することはできません。
      ユーザーまたはグループを 表示可能ロールまたは 編集可能ロールに割り当てると、システムでは RoleBinding を作成して ClusterRole にマッピングします。たとえば、 編集可能ロールに割り当てられたユーザーまたはグループは、RoleBinding を使用して Kubernetes edit ClusterRole にマッピングされます。 edit ロールにより、ユーザーはクラスタのプロビジョニングと運用を行うことができます。このマッピングを表示するには、ターゲットの vSphere 名前空間 から kubectl get rolebinding コマンドを使用します。
      kubectl get rolebinding -n tkg2-cluster-namespace
      NAME                                                           ROLE                         AGE
      wcp:tkg-cluster-namespace:group:vsphere.local:administrators   ClusterRole/edit             33d
      wcp:tkg-cluster-namespace:user:vsphere.local:administrator     ClusterRole/edit             33d

      ユーザーまたはグループに所有者ロールを割り当てると、システムでは ClusterRoleBinding を作成して ClusterRole にマッピングします。これにより、そのユーザーまたはグループが kubectl を使用して vSphere 名前空間 を作成および削除できます。このマッピングを表示するには、スーパーバイザー 制御プレーン ノードに SSH 接続します。

  10. 名前空間にストレージを割り当てます。
    名前空間にストレージ ポリシーを割り当てると、DevOps チームはパーシステント ストレージを使用できるようになります。
    1. [ストレージ] ペインで [ストレージの追加] を選択します。
    2. パーシステント ボリュームのデータストアの配置を制御するストレージ ポリシーを選択して、[OK] をクリックします。
    ストレージ ポリシーを割り当てると、 vSphere IaaS control plane によって、一致する Kubernetes ストレージ クラスが vSphere 名前空間 に作成されます。 Tanzu Kubernetes Grid を使用する場合、ストレージ クラスは名前空間から Tanzu Kubernetes Grid クラスタに自動的に複製されます。名前空間に複数のストレージ ポリシーを割り当てると、ストレージ ポリシーごとに個別のストレージ クラスが作成されます。
  11. [容量と使用量] ペインで [制限の編集] を選択し、名前空間に対するリソース制限を構成します。
    オプション 説明
    CPU 名前空間に予約する CPU リソースの量。
    メモリ 名前空間に予約するメモリの量。
    ストレージ 名前空間に予約するストレージ容量の合計。
    ストレージ ポリシーの制限 名前空間に関連付けた各ストレージ ポリシーに専用のストレージ容量を個別に設定します。
    名前空間のリソース プールが vCenter Server に作成されます。名前空間で使用可能なストレージの総容量は、ストレージ制限によって決まる一方で、関連付けられたストレージ クラスにおける vSphere ポッド のパーシステント ボリュームの配置は、ストレージ ポリシーによって決まります。
  12. スタンドアローン仮想マシン用の仮想マシン サービスをセットアップします。
    詳細については、『 vSphere IaaS control plane での仮想マシンのデプロイと管理』を参照してください。

次のタスク

vSphere 向け Kubernetes CLI Tools を介して スーパーバイザー にログインするためのユーザー名と Kubernetes 制御プレーン URL を DevOps エンジニアと共有します。DevOps エンジニアには、複数の名前空間へのアクセス権を付与できます。「 vSphere IaaS 制御プレーン クラスタへの接続」を参照してください。
注: この『 vSphere IaaS 制御プレーンのサービスとワークロード』ガイドには、 Tanzu Kubernetes Grid クラスタで実行されているワークロードの情報は含まれていません。 Tanzu Kubernetes Grid クラスタを使用する方法については、「 Using Tanzu Kubernetes Grid on Supervisor with vSphere IaaS Control Plane」を参照してください。