vmware introduction

background

sooner or later, we are in the direction of gpu virtualization, previously hypervisor and gpu virtual is the first blog. recently, I’d went through openstack/kvm, vnc and now vmware. there is no doubt, any licensed product is not my prefer, but on the hand, it’s more expensive to hire an openstack engineer, compared to pay vmware.

vmware is not a windows-only, I had to throw my old mind first. the basic or back-end idea looks very similar to kvm. anyway, the core is hypervisor layer. once get understand one type of virtualization, it’s really easy to understand another.

VMware ESXi

ESXi hypervisor is a Type1 or “bare metal” hypervisor, also called vmware hypervisor, is a thin layer of software that interacts with the underlying resources of a physical computer(host machine), and allocates those resources to other os(guest machine).
and can support remotely access, just like kvm.

check vSphere doc about how to set BIOS and manage ESXi remotely.

BIOS boot configuration can be setted by configuring the boot order in BIOS during startup or by selecting a boot device from the boot device selection menu. the system BIOS has two options. One is for the boot sequence (floppy, CD-ROM, hard disk) and another for the hard disk boot order (USB key, local hard disk).

VMware workstation

workstation support multi guest os in a single host os(either windows or Linux), is a Type2 hypervisor, run as an app on host OS. one limitation of workstation is it only works in local host, can’t access remotely.

  • free version, workstation player

  • licensed version, workstation prof

in one word, workstation is good enough to multiple hardware usage, but not useful if remote access is required

VMware vSphere

the arch of vSphere has three layers:

  • virtualization layer

  • management layer

  • interface layer(web, sdk, cli, virtual console)

ESXi is the core hypervisor for VMware products, and also is the core of the vSphere package, the other two is: vSphere client and vSphere server.

vSphere server is enterprise-oriented, which is run based on ESXi layer. vSphere client is a client console/terminal.

nowadays there are no limitations on Physical CPU or RAM for Free ESXi. here

1
2
3
4
5
Specifications:
Number of cores per physical CPU: No limit
Number of physical CPUs per host: No limit
Number of logical CPUs per host: 480
Maximum vCPUs per virtual machine: 8

virtual desktop integration (VDI)

VDI virtualize a desktop OS on a server. VDI offers centralized desktop management. the vmware tool is VMware Horizon

Horizon

VMware Horizon can run VDI and apps in IT data center, and make VDI and apps as services to users. Horizon auto manage VDI and apps by simple setup configure files, then deliver apps or data from data center to end-user.

the modules in Horizon is extended-able and plug-in available: physical layer, virtualization layer, desktop resource layer, app resource layer and user access.

Horizon basically delivers desktops and apps as a service. there are three versions:

  • Horizon standard, a simple VDI.

  • Horizon advanced, can deliver desktops and apps through a unified workspace

  • Horizon enterprise, with a closed-loop management adn automation

the Horizon 7 has new features:

  • Blast extrem display protocol

  • instant clone provisioning

  • vm app volumes app delivery

  • user env manager

  • integrated into remote desktop session host(RDSH) sessions

gpu support in vmware

for vSphere, PCI passthrough can be used with any vSphere, including free vSphere Hypervisor. the only limitation is HW, may not supprot virtual well. GPU remotely accessible is our first-priority concern.

but vmware recommend their Horzion with NV’s vGPU
which has better flexibility and scalability.

Horizon support vGPU, the user must install the appropriate vendor driver on the guest vm, all graphics commands are passed directly to GPU without having to be translated by the hypervisor. a vSphere Installation Bundle(VIB) is installed, which aids or perform the scheduling. depending on the card, up to 24 vm can share a GPU. most NV’s GPU which has vGPU feature can support.

on the other hand, the price of vGPU products(e.g. T4, M10, P6, V100, RTX8000 e.t.c) are 5 ~ 10 times higher than normal customer GPUs. e.g. GeFS not 5~10 times better. and the license fee for vgpu is horrible.

however, most enterprise still choice the Horzion and vGPU solution, even with this high cost.

VMware compatibility guide

GPU VDI service in cloud

the gpu types for video decoding is Tesla P4, for AI and HPC is Tesla v100, and for image workstation(VDI) is an AMD S7150.

the product is call GA1(S7150), which is specially for cloud desktop.

s7150x2 MxGPU with Horizon 7.5

vnc vs vm

virtual network computing (vnc), applications running on one computer but displaying their windows on another. VNC provides remote control of a computer at some other location, any resources that are avaiable at the remote computer are available. vpn simply connect you to a remote network.

no doubt, vm is much heavier than vnc. check this blog for compartion from vdi(a vm app) to vnc. vnc can’t tell if the remote is a physical server or a virtual server. come to our user case, we need about 100 separated user space, so virtualization provide better HW efficient and security, compared to deploy a single bare metal OS on the physical machine.

there are a few Linux based vnc client/server, e.g. vncviewer CLI, as well as which supports OpenGL well, which helps to support better GPU usage.

refee

an essential vmware introduction from IBM

what are vsphere, esxi, vcenter in Chienese

vSphere Hypervisor

vmware vsphere doc

how to enable nvidia gpu in passthrough mode on vSphere

nvidia vgpu for vmware release notes

how to enable vmware vm for GPU pass-through

openstack PCI passthrough

how can openGL graphics be displayed remotely using VNC

vmware Horizon introduction in Chinese

vmware ESXi 7.0 U1 test env build up

云游戏能接盘矿卡市场吗

王哥哥的博客

企业存储的博客

in-depth: nv grid vGPU with vmware horizon 6.1

nvidia gpus recommended for virtualization

GPU SRIOV and AMD S7150