Using Hyper-V Resource Pools to ease migration between different configurations

Today I was asked about the following configuration: A user has a stretched Hyper-V cluster running between two datacenters.  This stretched cluster is sitting on top of replicated storage.  However, the storage appears in a different location on either side of the cluster.  How can this be made to work? So the configuration is like… Read more

Performance Tuning Windows Server 2016

While we were working on developing Windows Server 2016 – we had a team dedicated to testing the many aspects of the performance of Windows.  We rely heavily on this team to make sure that we are continuously improving our performance in many ways. Well – they have recently created an amazing set of documentation… Read more

Editing a .VMCX file

In Windows Server 2016 we moved from using .XML for our virtual machine configuration files to using a binary format – that we call .VMCX. There are many benefits to this – but one of the downsides is that it is no longer possible to easily edit a virtual machine configuration file that is not… Read more

Phone Emulator + Containers + VMs + Networking == Finally working!

I have had a problem for a little while now – the problem is that on my personal laptop I want to use: Visual Studio with the Windows Phone Emulator The Hololens emulator Windows Containers Linux Containers (through Docker for Windows) My virtual machines However, all of these solutions keep on tripping over each other. … Read more

New Hypervisor Top-Level Functional Specification

At the end of last week we published version 5.0 of the Hypervisor Top Level Functional Specification.  This version details the state of the hypervisor in Windows Server 2016.  You can download it from here: Be warned – this is a very complicated technical document.  However, it has also become the first place that… Read more

Giving a Workgroup Server an FQDN

Recently I needed to be able to securely, remotely manage a set of Windows Servers that were not domain joined.  One problem that I hit while setting this up was that each of the servers did not believe that they had a valid FQDN. For example – I could: Set the name of a computer… Read more

Hyper-V vs. KVM for OpenStack performance

During the development of Windows Server 2016 we spent a lot of time working on delivering the best core performance as a cloud platform.  At the same time the Cloudbase team have spent a lot of time optimizing the performance of the Hyper-V OpenStack drivers as part of their work on the Mitaka release of… Read more

Bulk changing virtual hard disk path

I received this in email today: “I have XCOPY’d a bunch of VHDX files from one volume to another on WS2016.    What’s the easiest / fastest way to fix up the paths for the VM’s???” The answer to this is quite simple.  Open PowerShell and run: $oldPath = “C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks” $newPath = “D:” get-vm… Read more

Creating a remote PowerShell Direct shortcut

So here is the scenario: I have a remote Hyper-V server running Nano Server. I have PowerShell remoting setup to manage this system (details on how to do this here: I then have a number of Nano Server virtual machines running on the this system. What I want is to be able to easily… Read more