On my thread about deployment on virtual hosts, someone wondered if it works on the Xen Hypervisor, the answer is… no. MDT is not able to detect XenServer as an Hypervisor. However… there’s another way get it work:

Execute the following command on a server installed on a XenServer:

wmic csproduct get name

You will hopefully get this output on a XenServer 5.6:

HVM domU

If you get something else, that’s fine, just write it down, exactly as its spelled. This is the model of your server. If this was a physical server, you would have gotten the model name of the hardware.

Now, we need to make sure that MDT identifies the model correctly. We do this in the Customsettings.ini file.

First thing we need to do is to tell MDT to start looking for different models. This is done by changing the priority and add model:

Priority=Model, Default

Second, we need to create a section named the after the model. This section can be created anywhere in the Customsettings.ini file since it will be prioritized over the [Default]-section anyway:

[HVM domU]

This section can contain whatever we want.  The above image shows a sample where XenServer Tools will be automatically installed. If it’s XenServer Tools you’re going to install, you’ll need xensetup.exe from the xs-tools.iso which you can mount on any XenServer VM and then manually copy it to a temporary location. Then create a new application using MDT:s built in wizard. To install XenServer tools silently you run xensetup.exe /S /norestart.

Does this trick work for VMware and Hyper-V as well? Yes. Just run the wmic csproduct get name command and copy the output, you can add as many models as you want, as I said, works great on real hardware as well.

Here’s a hint of the output on different Hypervisors, the output changes very rarely so it should work on other versions as well:

Hypervisor Output
Windows Server 2008 R2 SP1 Hyper-V Virtual Machine
XenServer 5.6 HVM domU
VMware ESX 3.5 VMware Virtual Platform