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

Hyper-V @ Ignite

I am busily getting ready for my Hyper-V session at Ignite this year – and went to check for other sessions that I could be pointing people to.  Initial results where not hopeful: Umm.  What?  Well – after a short discussion with the team running the Ignite website, it seems that the session search can’t… Read more

Script to Inventory VM Guest OSes – Updated

The other day a colleague asked me how to use PowerShell to gather information about what operating system was running inside of each virtual machine on a Hyper-V server.  I went to point them to this blog post: Scripts to Inventory Virtual Machines [Hyper-V].  But then realized that there were two problems: This script uses… Read more

Fixing Network Adapter settings on Checkpoints

Here is an interesting question from the Hyper-V forums: https://social.technet.microsoft.com/Forums/en-US/a6012994-de98-41f9-8b96-2139ee2ad631/hyperv-resource-pool-nic?forum=winserverhyperv In essence – the situation is that the user has: Created a virtual machine Connected it to a virtual switch Taken a checkpoint Deleted and recreated the virtual switch Now, whenever they apply the old checkpoint – they get a configuration error message.  They can… Read more