Per poter distribuire una macchina virtuale autonoma in vSphere with Tanzu, un tecnico DevOps deve avere accesso a risorse di macchina virtuale specifiche. I tecnici di DevOps verificano che di poter accedere a queste risorse e visualizzare le classi di macchine virtuali e i modelli di macchine virtuali disponibili nell'ambiente. Possono inoltre elencare le classi di storage e gli altri elementi che potrebbero essere necessari per il self-service di una macchina virtuale.

Questa attività riguarda i comandi utilizzati per accedere alle risorse disponibili per la distribuzione di una macchina virtuale autonoma. Per informazioni sulle risorse necessarie per distribuire cluster di Tanzu Kubernetes e macchine virtuali che costituiscono i cluster, vedere Classi di macchine virtuali per i cluster di Tanzu Kubernetes.

Prerequisiti

Un amministratore di vSphere ha eseguito questa procedura:

Procedura

  1. Accedere allo spazio dei nomi nell'ambiente Kubernetes.
  2. Per visualizzare le classi di macchine virtuali disponibili nello spazio dei nomi, eseguire il comando seguente.
    kubectl get virtualmachineclassbindings
    È possibile visualizzare l'output seguente:
    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. Per visualizzare i dettagli di una classe di macchine virtuali specifica, eseguire i comandi seguenti.
    • kubectl describe virtualmachineclasses name_vm_class

      Se una classe di macchine virtuali include un dispositivo vGPU, è possibile visualizzarne il profilo in spec: hardware: devices: vgpuDevices.

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

      Se la classe di macchine virtuali include una vGPU o un dispositivo passthrough, l'output la mostra nella colonna VGPUDevicesProfileNames o PassthroughDeviceIDs.

  4. Visualizzare le immagini della macchina virtuale.
    kubectl get virtualmachineimages​
    L'output visualizzato è simile al seguente.
    NAME                                              VERSION  OSTYPE                FORMAT  IMAGESUPPORTED  AGE
    centos-stream-8-vmservice-v1alpha1-xxxxxxxxxxxxx           centos8_64Guest       ovf     true            4d3h
  5. Per descrivere un'immagine specifica, utilizzare il comando seguente.
    kubectl describe virtualmachineimage/centos-stream-8-vmservice-v1alpha1-xxxxxxxxxxxxx

    Le macchine virtuali con dispositivi vGPU richiedono immagini con modalità di avvio impostata su EFI, ad esempio CentOS. Assicurarsi di poter accedere a queste immagini. Per informazioni sulle immagini supportate, cercare VM Service image sul sito Web di VMware Cloud Marketplace.

  6. Verificare che sia possibile accedere alle classi di storage.
    kubectl get resourcequotas
    NAME                        AGE   REQUEST                                                                                         LIMIT
    my-ns-ubuntu-storagequota   24h   wcpglobal-storage-profile.storageclass.storage.k8s.io/requests.storage: 0/9223372036854775807
  7. Se si utilizza vSphere Distributed Switch per la rete del carico di lavoro, ottenere il nome della rete.
    Nota: Queste informazioni vengono utilizzate per specificare il parametro networkName nel file YAML della macchina virtuale quando networkType è vsphere-distributed. Non è necessario ottenere e specificare il nome della rete se si utilizza VMware NSX-T.
    kubectl get network
    NAME      AGE
    primary   7d2h

Operazioni successive

A questo punto è possibile distribuire le macchine virtuali. Vedere Distribuzione di una macchina virtuale in vSphere with Tanzu.