Posts in category Hans Vredevoort

Boot from VHDX for Windows 8.1 Update

You may have seen my previous blogs on how to very quickly make your computer multi-boot into another operating system.

Now that Windows 8.1 Update and Windows Server 2012 R2 Update has been released, I’ll briefly repeat the steps.

  1. Download Convert-WindowsImage.ps1 and copy it to a temporary directory
  2. Start Windows PowerShell ISE in Administrator mode
  3. Run it with .\Convert-WindowsImage.ps1 -ShowUI
  4. Choose the required ISO file
  5. Choose the SKU
  6. Choose the VHD/VHDX Format, Type and Size
  7. Modify the Working Directory if necessary
  8. Type a name for the VHDX
  9. Optionally add an existing Unattend.xml file for further customization
  10. Hit Make the VHD!

You will see

My Windows 8.1 Enterprise VHDX was only 7.6GB small which came as a pleasant surprise.

The VHDX should still be mounted under a drive letter. If not, right-click the VHDX and mount it.
In my case I had ejected the mounted disks and manually re-mounted under drive F:

The following steps are needed to make your computer boot from the VHDX file:

  1. Open an administrative command prompt via WIN+X Command Prompt (Admin)
  2. Type bcdboot F:\Windows
  3. Type bcdedit /v to see the result in the Windows Boot Loader section

Taking the identifier you can change the description in your bootlist by typing:

bcdedit /set {545a3023-1918-11e2-bed1-bd8926e5c774} description “Windows 8.1 Enterprise with Update”

If you had configured Hyper-V on your Windows 8.1 computer, don’t forget to enable the hypervisor launchtype:

bcdedit /set hypervisorlaunchtype auto

Memory Leak on HP ProLiant Servers with NIC Teaming

HP recently published a customer advisory explaining that HP ProLiant servers running Microsoft Windows 2012 as well as Windows Server 2012 R2 and using Microsoft Windows NIC Agent 9.40 may report a memory leak up to 5Mb/hour.

The memory leak is caused by HP’s Microsoft Windows NIC Agent 9.40.

The problem can be easily observed in Task Manager under Processing as you can see in below diagram.

Windows Server 2012 R2 Update is Important

Today we received a note from Microsoft about the importance of Windows Server 2012 R2 Update which is coming to Windows Update on April 8th, 2014. For MSDN and TechNet subscribers this update is already available in the form of an ISO of Windows Server 2012 R2 with the Update included and a smaller collection of 6 updates for Windows 8.1 and Windows Server 2012 R2

In a blog post published on April 2nd, the Microsoft Windows Server Team explains the importance of this update as it provides an easy way to get up to date with the patches, bug-fixes, and improvements that Microsoft has provided since the release of Windows Server 2012 R2. For failover clustering, this update is certainly important as it contains many of the “hoster patches” that Microsoft has worked on in the past six months. The Update consists of six files:

Microsoft recommends to install the Update in this order:

  1. KB2919442
  2. KB2919355
  3. KB2932046
  4. KB2937592
  5. KB2938439
  6. KB2949621

I tried the update on my Windows 8.1 tablet. Because of the large size of KB2919355 (707MB) this update can take a while, so a little patience is required. Of course for multiple clustered Hyper-V hosts, the manual update method is not to be advised. If you have not yet tried Cluster Aware Updating (CAU), an automated cluster aware update tool included with Failover Clustering and available since Windows Server 2012, I strongly advise you to try this out. It not only allows you to install Windows Updates, but also hotfixes, drivers and firmware for your server hardware. Take a look at fellow MVP Didier van Hoye’s blog and video Hands on with Hyper-V Clustering Maintenance Mode & Cluster Aware Updating TechNet Screencast. Another good explanation can be found in chapter 8 of Windows Server 2012 Hyper-V Installation and Configuration Guide by Aidan Finn, Patrick Lownds, Michel Luescher and Damian Flynn.



Makeover Hyper-V Update List for Windows Server 2012 and R2

There are several update lists available on TechNet. Some are curated by the product team and some are kept up-to-date by MVP’s and other people in the community. For easy reference we decided to place a shortcut to these lists in the header of

The following hotfix and update lists are available:

  • Hyper-V: Update List for Windows Server 2012
  • Recommended hotfixes and updates for Windows Server 2012-based failover clusters (updated by Cluster product team)
  • Hyper-V: Update List for Windows Server 2012 R2
  • Recommended hotfixes and updates for Windows Server 2012 R2-based failover clusters clusters (updated by Cluster product team)

Because notably the Windows Server 2012 list had become a bit of a mess, I have rearranged the list, removed outdated or replaced hotfixes and added a sorted date column.

I have also updated the XML file for both Windows Server 2012 and R2 so that you can use a PowerShell cmdlet to quickly scan your Hyper-V hosts if a hotfix or update is installed or not. These files can be downloaded from my OneDrive.

Run the update checker like this:
.\HyperV2012R2UpdatesCheck.ps1 [name host1]



Recommended hotfixes and updates for Windows Server 2012-based failover clusters

VConnect – A Windows Azure Pack Extension for VMware Hosts

While searching for new content for the Windows Azure Pack Wiki, I stumbled on a blog by RaviCK called Ravi’s Cloud 360o which pointed me to a video on how to integrate VMware hosts with Windows Azure Pack. In a recent project we integrated VMware hosts with Windows Azure Pack by means of Virtual Machine Manager and adding vCenter Servers and indirectly adding VMware hosts to a Microsoft Cloud. This approach has a few disadvantages because only standalone Virtual Machines can be deployed and Console Connect does not work for VMs deployed to VMware hosts. All the wealth of VMRole Gallery Items are lost in this solution.

So I was surprised to find that someone has actually written a custom extension for Windows Azure Pack called VConnect from Cloud Assert which brings VMware hypervisors to the platform. Administrators of Windows Azure Pack can now setup plans that provides Virtual Machine services based on VMware hosts.

VConnect is still in beta and only supports a few basic operations such as:

  • Adding a VSphere endpoint of a VMWare hypervisor server
  • Lists the Virtual Machines from all the added servers
  • Basic operations such as Power On, Power Off, Suspend and Reset VM
  • Connect to the VM via Remote Desktop (VMWare tools has to be installed on the VM)
  • Take a screenshot of the Virtual Machine screen
  • ShutDown, Standby and Reboot of Guest OS (VMWare tools has to be installed on the VM)

Take a look at the demo at

HP 3PAR and support for ODX

Over the weekend my fellow MVP Flemming Riis from Denmark contacted me about a new customer bulletin (c04205854) from HP about HP 3PAR StoreServ Storage with HP 3PAR OS 3.1.2 which warns for a serious issue when used with Windows Server 2012 and Windows Server 2012 R2. In the past year we saw and heard of several cases with Live Storage Migration causing corruption of VHDX caused by a bad implementation of ODX in HP 3PAR’s firmware. Previously we advised users to disable ODX at the operating system level as a temporary workaround. Now it seems, HP has found the issue and offers a patch for HP 3PAR OS.


An issue has been discovered with the HP 3PAR OS and the use of Windows Server 2012 Off-loaded Data Transfer (ODX) commands, which may result in a number of blocks incorrectly zeroed beyond the requested range under certain conditions. This issue is not observed with ODX disabled.

Detailed analysis

When the Write Using Token requests using Block Device Zero Token is greater than 16 MBs in size, and the size is not a multiple of 16 MBs, a number of blocks may be zeroed beyond the end of the requested range. Disabling ODX eliminates the use of Write Using Token requests using Block Device Zero Token.


Windows Server 2012 or Windows Server 2012 R2 hosts with ODX in use with HP 3PAR StoreServ Storage running HP 3PAR OS version 3.1.2 GA, 3.1.2 MU1, 3.1.2 MU2, 3.1.2 EMU2, or 3.1.2 MU3.


Upgrade the HP 3PAR OS on the HP 3PAR StoreServ Storage to 3.1.2 MU2 or later if running a lower HP 3PAR OS version. Next apply the patch as follows:

  • For 3.1.2 MU2 and 3.1.2 EMU2, apply Patch 11 followed by Patch 36.
  • For 3.1.2 MU3, apply Patch 30.


Disable ODX on the Windows 2012 or Windows 2012 R2 hosts. To disable ODX:

Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem -Name “FilterSupportedFeaturesMode” -Value 1

A server reboot is required for all servers in which the registry value is modified.

If you have an opportunity to test this patched version of HP 3PAR in your own environment, I would strongly advise you to do this first!

You can find the customer advisory here

Wish List For Next Version of Windows Azure Pack

Microsoft Azure Pack 2013 can be considered a version 2 of Microsoft’s on premise cloud services. Its predecessor, Windows Azure Services for Windows Server, was offered for free with System Center 2012 SP1 and required Windows Server 2012 and Hyper-V as a platform. WAS4WS can be considered as a typical V1 and offered a first look on how Windows Azure like services can also be offered as a hosted or private cloud. Windows Azure Pack 2013 has been available now for only 6 months, but we can’t imagine it not being available to us. The Windows Azure Pack has had a huge impact on the world of Microsoft cloud services and WAP is here to stay. It not only offers first class IaaS services like the VM Role but also PaaS services with Web Sites and Databases. WAP also offers the platform for new Automation capabilities called SMA or Service Management Automation, which will soon fully replace Orchestrator. Learning PowerShell Workflows has never been more important since the release of SMA.

Windows Azure Pack so far has proven to be a fairly solid product and this can be explained because the Service Management API and the portal software is identical to the public Windows Azure. If you compare the Windows Azure Pack portal to the Windows Azure portal, you can clearly see the advancements that public Windows Azure has made and some of the new functionality that it has acquired.

WAP currently offers Web Site Clouds, VM Clouds, Service Bus Clouds, SQL Servers, MySQL Servers, Automation, Plans and User Accounts.

Windows Azure offers many other services such as Mobile Services, Storage, HDInsight, Media Services, Visual Studio Online, Cache, Biztalk Services, Recovery Services, Traffic Manager, Management Services, Active Directory, Add-Ons and Settings.

For a list of recently added features visit Scott Guthrie’s blog.

In general we could say that both platforms share a common Service Management API and some of the services are identical such as Web Sites and Service Bus. Others rely specifically on features in Virtual Machine Manager and some are only possible because of possibilities/limitations in the operating system. Windows Azure is currenlty still built on Windows Server 2012 and does not support VHDX disks and Console Connect functionality which are both possible in Windows Azure Pack. On the other hand Windows Azure VMs allows adding new disks online, whereas Windows Azure Pack requires the VM to be turned off for adding or expanding a VHDX. This is not a limitation of Windows Server 2012 R2.

Unlike Windows Azure, Windows Azure Pack heavily relies on System Center 2012 R2 and specifically Virtual Machine Manager and Service Provider Foundation. If Usage is added, also Operations Manager is also a required component.


Troubleshooting a Failed Windows Azure Pack Installation

We regularly need fresh labs with Windows Azure Pack and after having used the PowerShell Deployment Toolkit for deploying System Center 2012 R2 and Windows Azure Pack in a production environment, I felt quite confident to use PDT again for my new lab. So what could go wrong?

I took a variable.xml file from a previous installation and modified the variables in it to reflect the VMs I had already created via my Windows Azure Pack portal. Yes you are reading this correctly, I was building a Windows Azure Pack lab right from my own WAP tenant portal. I had to go easy on the memory and cpu resources so I was not able to make everything redundant. For the purpose of this lab it was fine.

Because I wanted to focus on Usage and CloudCruiser, I needed at least Operations Manager, Virtual Machine Manager, Service Provider Foundation and Windows Azure Pack. I added Service Management Automation to get some work done on SMA later. All I needed to do was use the correct user accounts, groups and passwords to get things going.


Definitive Guide to Hyper-V 2012 R2 Network Architectures

Back in May 2011, I posted a blog called Definitive Guide to Hyper-V Networking Optimizations, which in fact was a tribute and pointer to the blog series that a respected Premier Field Engineer called Cristian Edwards Sabathe had written. The blog was one of our most read blogs in 2011 and Cristian’s blog received a lot of hits via

Yesterday I spent some time on the phone with Cristian who is now EMEA Virtualization Lead responsible for the PFEs in EMEA. Cristian reached out to me because of a long thread on the Cluster MVP distribution list which is a closed channel for MVPs dealing with server, storage, network, cluster, etc. I had been discussing the ongoing problems we see with network device drivers for Windows Server 2012 R2 which keep on nagging us. Cristian had been testing at a customer with similar hardware but a different network configuration using the Emulex driver and firmware made available in the HP ProLiant Service Pack 2014.02, two weeks ago.

Two of the blogs (blog1, blog2) that Marc van Eijk and Peter Noorderijk posted received an incredible amount of comments around either the specific HP/Emulex network problem with HP Virtual Connect Flex-10 configurations, but many other similar cases from other network adapter vendors. Most people who have responded to these blogs were able to circumvent their problems by turning off Virtual Machine Queuing (VMQ) or some other hardware offload.

Meanwhile Cristian has written a new and updated blog series, which I will again list as a must read if you want to learn about Hyper-V network architecture in Windows Server 2012 R2:

Hyper-V 2012 R2 Network Architectures Series (Part 1 of 7) – Introduction

Hyper-V 2012 R2 Network Architectures Series (Part 2 of 7) – Non-Converged Networks, the classical but robust approach

Hyper-V 2012 R2 Network Architectures Series (Part 3 of 7) – Converged Networks Managed by SCVMM and PowerShell

Hyper-V 2012 R2 Network Architectures Series (Part 4 of 7) – Converged Networks using Static Backend QoS

Hyper-V 2012 R2 Network Architectures Series (Part 5 of 7) – Converged Networks using Dynamic QoS

Hyper-V 2012 R2 Network Architectures Series (Part 6 of 7) – Converged Network using CNAs

Hyper-V 2012 R2 Network Architectures Series (Part 7 of 7) – Conclusions and Summary

And don’t forget to read the bonus blog which Cristian wrote yesterday based on our specific setup with HP c7000, HP BL460c Gen8, HP/Emulex 554FLC NICs and Windows Server 2012 R2 Hyper-V:

Hyper-V 2012 R2 Network Architectures (Part 8 of 7) – Bonus

In the meantime, I’ve been having some good discussions with one of my contacts in HP Labs in California. We now know for certain that the HP/Emulex 554FLB firmware and driver that became available with HP ProLiant Service Pack 2014.02 does not yet fix the vNIC disconnect problems we are seeing when VMQ is enabled. The latest available firmware for the Emulex 10Gb CNA is v4.9.311.20 and the driver version is 10.0.430.1109 (18 Feb 2014) which can be download as part of the Service Pack or as a separate executable cp022157.exe.

The ETA of the Emulex 554FLB driver that finally supports VMQ properly is four to six weeks from now (so around end of March/early April). By then Windows Server 2012 R2 will have been RTM for over half a year. If this is representative of the quality control of network adapter vendors, we must fear for the worst with ever faster release schedules by Microsoft for Windows Server.

Unless the new leadership at Microsoft decides this is now enough and dramatically scales up testing capacity and qualification procedures.

Delivery of a networking driver that basically works is a no go!








Windows Azure Pack Update 1 Breaks Usage Metering

Updated Feb 28, 2014

If you have usage configured for Cloud Cruiser or Service Reporting, you may find that after installing Update 1 for Windows Azure Pack that data collection stops working and no new data is flowing into the usage.Records table. In the event viewer you will see: Completed retrieving usage records from start id [number]. Records count: 0

Meanwhile you will not see any errors in the analytics event log of usage services.

The Windows Azure Pack team is aware of this problem and is working on a fix. Yesterday I was asked to place a hold on my published workaround which I derived from the support description accompanying Windows Azure Pack Update 1. Yesterday, Anders Ravnholt sent me a draft of his upcoming blog and I was able to review this blog before it was published:
Windows Azure Pack 2013 Update Rollup 1: Known Issues and Workarounds

As a side effect you may be getting an Event ID 244 in the MgmtSvc-Usage Operational Log:

Usage service discovered that database version 3.10.8198.9 is different from service version 3.12.8190.0. This could be by design, but could be a problem, in which case you are likely to see other errors in the log

This error message is still under investigation.