A 1st look at Discrete Device Assignment in Hyper-V

Let’s take a 1st look at Discrete Device Assignment in Hyper-V

Discrete Device Assignment (DDA) is the ability to take suitable PCI Express devices in a server and pass them through directly to a virtual machine.

This sounds a lot like SR-IOV that we got in Windows 2012  It might also make you think of virtual Fibre Channel in a VM where you get access to the FC HBA on the host. The concept is similar as in that it giving the physical capabilities to a virtual machine.

But this is about Windows Server 2016 new capability which takes all this a lot further. The biggest use case for this seems to be GPUs and NVMe disks. In environment where absolute speed matters the gains by doing DDA are worth the effort. Especially when this works well with live migrations (not yet as far as I can see right now, and it’s probably quite a challenge).

There a great series of blog post on DDA

Microsoft also has a survey script available to find potential DDA devices on your hosts. It will reporting on which of them meet the criteria for passing them through to a VM.

https://github.com/Microsoft/Virtualization-Documentation/tree/master/hyperv-samples/benarm-powershell/DDA

That script is a very nice educational tool by the way. When I look at one of my servers I find that I have a couple of devices that are potential candidates:

So I’m looking at the Mellanox NICs. I wondered if this is the first step to RDMA in the guest. Probably not. The way I’m seeing the network stack evolve in Windows 2016 that’s the place where that will be handled.

image

And the Nvidia GRID K1 –  one of the poster childs of DDA and needed to compete in the high end VDI market

image

And yes the Emulex FC HBAs in the server. This is interesting and I’m curious about the vFC/DDA with FC story. But I have no further info on this. vFC is still there in W2K16 and I don’t think this DDA will replace it.

image

And finally it showed me the PERC controller as a potential candidate. Now trying to get a PERC 730 exposed to a VM with DDA sounds like and experiment I might just spend some evening hours one just to see where it leads. But only NVMe is supported. But hey a boy can play right?

image

So we have some lab work to do and we’ll see where we end up when we get TPv5 in our hands. What I also really need to get my hands on are some NVMe disks Smile But soon I’ll publish my findings on configuring this with an NVIDIA GRID K1 GPU.

The Hyper-V Amigos Episode 10

It’s with great pride that the Hyper-V Amigos ride again and for The Hyper-V Amigos Episode 10 they dive into what’s new and improved in Windows Server 2016 Failover Clustering.

image

Well OK we only discuss a few subjects in this web cast as there is only a limited amount of time. I’ll present an overview of during my session at the German Cloud and Datacenter conference on May 12th in Germany. An hour is not enough for a deep dive into everything but we will build on our session we did at the Technical Summit (November 2014) in Germany on Improvements in Failover Cluster 2012 R2 ad get you up to speed so you can select what to investigate further.

Until then, enjoy the webcast and I hope it helps prepare you for what’s coming and entices you to join us at the Cloud and Datacenter Summit in Germany on May 12th! And if clustering alone is not enough to bring you over check out the agenda and you might realize what great gathering of experts is happing at the conference. Just look at the content, the breath and depth of the cloud and datacenter technologies being discussed is vast!

Get-VMHostSupportedVersion Windows Server 2016 Hyper-V

Windows Server 2016 Technical Preview 4 has this great PowerShell command to check what virtual machine versions the Hyper-V host supports: Get-VMHostSupportedVersion

When you run this the output on Windows Server 2016 TPv4 is as below.

image

As you can see it supports 5.0 (which translates to the version on Windows Server 2012 R2). That’s logical, it’s the version your migrated VMs will have when you move them to Windows Server 2016 as the VM version is no longer automatically updated. You can read more about this here: https://msdn.microsoft.com/en-us/virtualization/hyperv_on_windows/user_guide/migrating_vms

You must also realize that updating from 5.0 to higher means moving to the newer Virtual machine configuration file format, which is way better for performance and is a binary format and not longer XML.

6.2 is the version a VM had in the Technical Preview 3 era. Which is cool as when you move your VMS between TPv3 and TPV4 they still worked and were supported. Now in reality you want to be either at 5.0 so you can still move VMs back to a W2K12R2 host or at 7.0 to have all new features and capabilities that come with W2K16 at your disposal.

7.0 is also the current default and are the version any newly created VMs or any VM you update via Update-VMVersion will be at.

Now don’t panic, if you need to stay at version 5.0 even for newly created VMs for backward compatibility in mixed Hyper-V Windows Server 2012 R2 / Windows Server 2016 environment. You can specify this with the –version parameter of New-VM

New-VM -Name “IChooseMyVersion-5.0” -Version 5.0

To know what version you can pass to that parameter you only have to look at the output of Get-VMHostSupportedVersion: 5.0, 6.2, 7.0 at the time of writing (on TPv4).

You can see the result of some fun with this in the below screenshots:

image

image

I fully expect Microsoft to keep this up for TPv5 or perhaps even with RTM to allow a smooth transition for VMs running on preview editions to RTM. We’ll see. At RTM time I can see them removing the ability to create a new VM that’s still at 6.2 or so as It’s a “intermediate” work in progress version or so on the way to the final default version number at RTM (see  Windows Server 2016 TPv4 Hyper-V brings virtual machine configuration version 7). We’ll see!

Cloud & Datacenter Conference Germany

It’s with great joy that I can share that the Cloud & Datacenter Conference Germany website is live and you can now register to attend. My fellow MVP and friend Carsten Rachfahl has realized one of his ambitions to organize a large community driven conference by and for the IT community in the DACH region. But please free to attend if you’re from outside that region, it is open to all and welcomes anyone who wishes to attend. Just note not all sessions will be in English, but in German.

Organizing such an event is not an easy undertaking and I want to applaud Carsten for making this happen. He’s one of Germany’s for most experts and via his company, Rachfahl IT-Solutions, he’s always contributed heavily into the community. Thank you Carsten, you contribute a lot and we appreciate those efforts.

image

I invite you all to attend and join us on May 12 for the first edition of the Cloud & Datacenter Conference Germany in Dusseldorf. It offers more than 25 presentations by top community speakers in five parallel tracks. These tracks cover the entire spectrum of Microsoft technologies available to help you design, build and maintain a state of the art modern IT infrastructure. The conference covers Windows Server 2016, Hyper-V, Microsoft software defined storage, networking, azure stack, System Center, OMS, failover cluster, IaaS, azure, Nano server, PowerShell, containers, and much more.

I’m happy and honored to speak at this conference with so many true real life experts that are part the global community around Microsoft technologies. My presentation will aim to get you briefed on the new and improved functionality in Windows Server 2016 Failover Clustering. In that respect it’s a nice addition to my session What’s new in Failover Clustering in Windows Server 2012 R2. I can only suggest to get up to speed on those as these are still very much valid and I’’ be focusing on the delta between Windows Server 212 R2 and 2016.

The breadth and depth of the technologies available to us cannot be overstated and is still growing. It takes a team effort with both complementary and overlapping expertise to stay on top of things. Education is a huge and important part of daily life for anyone working in IT.

Nowadays when any meeting can be held on-line an in person a conference is still very valuable. It enables you to focus on absorbing the content without being distracted by the realities and interrupts of daily work life. That’s why I still invest in attending conference and I hope you do so as well. When you attend one, be there! That might sound silly but it’s painful to see attendees working remotely and being on the phone all the time. Bart true emergencies that’s a waste of money and effort. Allow yourself or your employees to optimize the ROI of that conference by having them do why they came. Learn, get inspired and network with peers.

Register soon to secure your spot. The price is set a level to make sure it will not be an issue. Sponsoring by companies who have real investment in cloud and datacenter management and benefit from a flourishing well informed ecosystem make this possible.