要能够在 vSphere with Tanzu 中部署独立虚拟机,DevOps 工程师必须有权访问特定虚拟机资源。作为 DevOps 工程师,请确认可以访问这些资源,并查看环境中可用的虚拟机类和虚拟机模板。还可以列出虚拟机自助服务所需的存储类和其他项目。
此任务涵盖用于访问可用于部署独立虚拟机的资源的命令。有关部署
Tanzu Kubernetes 集群和构成集群的虚拟机所需资源的信息,请参见
用于 Tanzu Kubernetes 集群的虚拟机类。
过程
- 在 Kubernetes 环境中访问命名空间。
- 要查看命名空间中的可用虚拟机类,请运行以下命令。
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
- 要查看特定虚拟机类的详细信息,请运行以下命令。
- 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 列中显示该设备。
- 查看虚拟机映像。
kubectl get virtualmachineimages
显示的输出类似以下内容:
NAME VERSION OSTYPE FORMAT IMAGESUPPORTED AGE
centos-stream-8-vmservice-v1alpha1-xxxxxxxxxxxxx centos8_64Guest ovf true 4d3h
- 要描述特定映像,请使用以下命令。
kubectl describe virtualmachineimage/centos-stream-8-vmservice-v1alpha1-xxxxxxxxxxxxx
具有 vGPU 设备的虚拟机需要将引导模式设置为 EFI 的映像,例如 CentOS。确保有权访问这些映像。有关受支持映像的信息,请在 VMware Cloud Marketplace 网站上搜索虚拟机服务映像。
- 验证您是否有权访问存储类。
kubectl get resourcequotas
NAME AGE REQUEST LIMIT
my-ns-ubuntu-storagequota 24h wcpglobal-storage-profile.storageclass.storage.k8s.io/requests.storage: 0/9223372036854775807
- 如果要将 vSphere Distributed Switch 用于工作负载网络连接,请获取网络的名称。
注: 当
networkType 为
vsphere-distributed 时,可以使用此信息在虚拟机 YAML 文件中指定
networkName 参数。如果使用 VMware NSX-T,无需获取和指定网络名称。
kubectl get network