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: https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/tlfs 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: https://technet.microsoft.com/en-us/windows-server-docs/get-started/manage-nano-server). 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

Delay when opening VM Connect on disconnected systems

When I am building Hyper-V systems for big public demonstrations – I often build them with zero Internet connectivity.  The reason why I do this is because I never know what level of internet connection I am going to have as I travel around the world showing off cool new features. For a while now… Read more

Project “Lift and Shift”–Phase 1: Triage

This is the first blog post in what is going to be a series that I am tagging “Lift and Shift”. Recently, I had an experience that I know many people have had.  I discovered that my parents were approaching the age where it is no longer possible for them to safely live in their… Read more

Scaling out PowerShell with PowerShell Direct

I have spent a bunch of time this week working on various demos for Ignite in Atlanta.  While building these demos I have been heavily using PowerShell Direct to orchestrate large sets of virtual machines. A common pattern that I encounter is that I will write one piece of code – and then want to… Read more