スタンドアローン仮想マシンを vSphere with Tanzu にデプロイできるようにするには、DevOps エンジニアに特定の仮想マシン リソースに対するアクセス権が必要です。DevOps エンジニアは、これらのリソースにアクセスできること、および環境内で使用可能な仮想マシン クラスと仮想マシン テンプレートを表示できることを確認します。また、仮想マシンのセルフサービスに必要になることがあるストレージ クラスやその他のアイテムを一覧表示することもできます。

このタスクでは、スタンドアローン仮想マシンのデプロイで使用可能なリソースにアクセスするためのコマンドについて説明します。 Tanzu Kubernetes クラスタおよびこのクラスタを構成する仮想マシンをデプロイするために必要なリソースについては、 Tanzu Kubernetes クラスタの仮想マシンのクラスを参照してください。

前提条件

vSphere 管理者が次の手順を実行しています。

手順

  1. Kubernetes 環境の名前空間にアクセスします。
  2. 名前空間で使用可能な仮想マシン クラスを表示するには、次のコマンドを実行します。
    kubectl get virtualmachineclassbindings
    次の出力が表示されます。
    注: ベスト エフォート型の仮想マシン クラス タイプではリソースをオーバーコミットできるため、仮想マシンをプロビジョニングする名前空間に制限を設定していると、リソースを使い果たすおそれがあります。そのため、本番環境では保証型の仮想マシン クラス タイプを使用します。
    NAME                       VIRTUALMACHINECLASS        AGE
    
    best-effort-large          best-effort-large          44m
    best-effort-medium         best-effort-medium         44m
    best-effort-small          best-effort-small          44m
    best-effort-xsmall         best-effort-xsmall         44m
    custom                     custom                     44m
  3. 特定の仮想マシン クラスの詳細を表示するには、次のコマンドを実行します。
    • kubectl describe virtualmachineclasses name_vm_class

      仮想マシン クラスに vGPU デバイスが含まれている場合、そのプロファイルは spec: hardware: devices: vgpuDevices に表示されます。

      ......
      spec:
        hardware:
          cpus: 4
          devices:
            vgpuDevices:
            - profileName: grid_v100-q4
      ......
      
    • kubectl get virtualmachineclasses -o wide

      仮想マシン クラスに vGPU デバイスまたはパススルー デバイスが含まれている場合は、出力の VGPUDevicesProfileNames または PassthroughDeviceIDs 列に表示されます。

  4. 仮想マシン イメージを表示します。
    kubectl get virtualmachineimages​
    表示される出力は次のようになります。
    NAME                                              VERSION  OSTYPE                FORMAT  IMAGESUPPORTED  AGE
    centos-stream-8-vmservice-v1alpha1-xxxxxxxxxxxxx           centos8_64Guest       ovf     true            4d3h
  5. 特定のイメージを記述するには、次のコマンドを使用します。
    kubectl describe virtualmachineimage/centos-stream-8-vmservice-v1alpha1-xxxxxxxxxxxxx

    vGPU デバイスを備えた仮想マシンには、起動モードが EFI に設定された CentOS などのイメージが必要です。これらのイメージに確実にアクセスできるようにします。サポートされているイメージについては、 VMware Cloud Marketplace Web サイトで仮想マシン サービス イメージを検索します。

  6. ストレージ クラスにアクセスできることを確認します。
    kubectl get resourcequotas
    NAME                        AGE   REQUEST                                                                                         LIMIT
    my-ns-ubuntu-storagequota   24h   wcpglobal-storage-profile.storageclass.storage.k8s.io/requests.storage: 0/9223372036854775807
  7. ワークロード ネットワークに vSphere Distributed Switch を使用している場合は、ネットワークの名前を取得します。
    注: この情報は、 networkTypevsphere-distributed の場合に、仮想マシンの YAML ファイルで networkName パラメータを指定する場合に使用します。VMware NSX-T を使用する場合は、ネットワーク名を取得して指定する必要はありません。
    kubectl get network
    NAME      AGE
    primary   7d2h

次のタスク

仮想マシンをデプロイできるようになりました。 vSphere with Tanzu への仮想マシンのデプロイを参照してください。