Posts in category Hans Vredevoort

Hotfix: VM Virtual Fibre Channel Loses Access to LUN after Live Migration

A hotfix has been released today for Windows Server 2012 Hyper-V servers which are unable to access LUNs over a Synthetic Fibre Channel after a VM is live migrated to another host in the cluster.

This problem can occur if the following conditions are met:

  • You have two Windows Server 2012-based computers that have the Hyper-V role installed
  • You install a virtual machine on one of the Windows Server 2012 Hyper-V hosts
  • You set up a guest failover cluster, and then you make the virtual machine a cluster node
  • The virtual machine is configured to access LUNs over a Synthetic Fibre Channel
  • You try to perform live migration to move the virtual machine to another host.

This issue is caused by the inability of the Hyper-V host to restore the Synthetic Fibre Channel LUN on behalf of the virtual machine during live migration.

The problem applies to Windows Server 2012 Standard and Datacenter.

For further details look up the Microsoft Support Article:



Notes From The Field Using ODX With HP 3PAR Storage Arrays

Several months ago I had a very short encounter with a Dell Compellent storage array which had just been installed for a customer in their New Jersey office. In a short blog I showed that creation of a 250GB VHDX could be done in just a few seconds. This was the result of Compellent’s support for Microsoft Offloaded Data Transfer (ODX).

In the current project I have access to an HP 3PAR P10000 V400 with HP 3PAR OS v3.1.2 and just wanted to get some idea of 3PAR’s ODX capability in a customer environment with Windows Server 2012 servers. HP 3PAR StoreServ storage is ODX compatible beginning with the HP 3PAR OS v3.1.2 (December 2012). The servers we are testing with are HP ProLiant DL380 Gen8 (32 logical processors, 256GB RAM) and are configured as Windows Server 2012 Hyper-V servers and some as SMB3 Scale-Out File Servers directly connected with 3PAR for the backend storage. The servers I use for testing are using a 10Gb Ethernet ISCSI connection using redundant Juniper EX3300 switches. The SMB3 File Servers and Hyper-V Fabric Management cluster nodes are connected to redundant 10Gb Ethernet Arista switches, just like the Internet facing Hyper-V tenant cluster nodes. The tests are done on servers with direct 10Gb Ethernet ISCSI connections to the 3PAR storage array.



Some More Background on Windows Update KB2855336

Not very often do I remember a Windows Update KB article off the top of my head, but this time I have talked and written about KB2855336 so often that it was probably written into my short term read-cache..

If you have been careful and missed the first version of this update because you rather wait and see what others run into after Patch Tuesday, I must compliment your smartness!

This time I have an update on the update for you. First of all the rewritten version of the KB article and secondly a link to a blog of Microsoft’s Escalation Engineer, Rob Scheepens

The part of the July update rollup KB2855536 that corrects the AD corruption risk was KB2853952. The updated KB article, which is now titled “Loss of consistency with IDE-attached virtual hard disks when a Windows Server 2012-based Hyper-V host  server  experiences an unplanned restart”, can be found here: 

The blog by Rob Scheepens details a debug for the 0xD1 bug check after installing the first release of KB2855336: This blog refers to the source of the bug check while live migrating virtual machines:


In the past week we have not seen any problems after updating all clusters with the latest Windows Updates and hotfixes. So make sure you reserve some extra testing time when next Patch Tuesday arrives. Tell your boss you definitely need a test cluster to try these updates on first. I know of several customers who found about the 0xD1 STOP by first deploying the updates to their test clusters.


Keeping your Virtual Active Directory Domain Controllers Safe

In my last blog I sent out a red alert on a killer Windows Update that had not been sufficiently tested. The net result was a full crash of a two-node System Center fabric management cluster. The fabric was still in the making and backups were only provisionally taken in the form of Virtual Machine exports of the most important virtual machines.  As fellow Hyper-V MVP Aidan Finn wrote unambiguously: “Something Has Gone Very Wrong With Microsoft Patch Testing

Where did it go wrong?

I was actually demonstrating the fantastic Cluster Aware Updating functionality in Windows Server 2012 clusters, which would automatically move all VMs off a host, update it, reboot it, live migrate the VMs back to the updated cluster node and move on to the next.

The problematic July Update Rollup KB2855336 – which was one of the updates to be processed – is actually a collection of originally 20 issues that solves problems in several areas. A still unidentified part of that rollup caused a 0x000000D1 Stop error while live migrating a VM on a Windows Server 2012-based server. So Cluster Aware Updating using the Live Migration mechanism to place a host in maintenance mode, combined with the mentioned update, sent shockwaves through the cluster. In this case both cluster nodes crashed within minutes.

Catch 22

Ironically enough this same July Update Rollup also contained an important fix for a problem that has been around for some time: Active Directory database becomes corrupted when a Windows Server 2012-based Hyper-V host server crashes (KB2853952).


Assume that you have a Windows Server 2012-based virtualized domain controller on a Windows Server 2012-based Hyper-V host server. When the Hyper-V host server crashes or encounters a power outage, the Active Directory database may become corrupted.


This issue occurs because the guest system requests the Hyper-V server to turn off disk caching on a disk. However, the Hyper-V server misinterprets the request and keeps disk caching enabled.

If you try to disable the write caching manually you will see this error: “Windows could not change the write-caching setting for the device. Your device might not support this feature or changing the setting.”  On a physical domain controller this has never been a problem.



It takes very little imagination to guess what happened to Active Directory if you combine the full STOP of the fabric management cluster and the AD domain controllers that were virtualized on that same Hyper-V cluster without the required updates and hotfixes.


[RESOLVED] Avoid KB2855336 Rollup with NIC Teaming and VLANs

[Update July 13, 2013 - I was able to deploy the newly issued KB2855336 to all of my physical and guest cluster nodes. There have been no issues so far. The same KB will also show up in most of your VMs as it is a collection of 21 updates touching all kinds of bugs including four stop errors]

[Update July 13, 2012 – For a thank you to Microsoft testers, may I kindly refer to Aidan Finn’s very direct blog called “Something Has Gone Very Wrong With Microsoft Patch Testing”]

[Update July 12, 2013 - Meanwhile Microsoft has expired KB2855336. In WSUS you can no longer approve installation of this update and you are recommended to decline this update


Problem has been acknowledged and KB2855336 has been reissued ]



Unfortunately we again see a problem with Hyper-V clusters just after installing the Windows Updates. The previous one only broke Cluster Failover Manager which could be solved by uninstalling the responsible update or install the fix which came out very quickly afterwards.

This time we face a much more serious problem and should be a strong warning for those responsible for testing updates at Microsoft.

After updating the cluster nodes with the Windows Server 2012 update rollup (July 2013) and when Windows Server 2012 NIC teaming is used with VLANs (not entirely uncommon), you may get a 0x000000d1 bug check on one or more of your cluster nodes. If you analyze the debug, it points to MsLbfoProvider.sys which is for NIC teaming. The upgraded version of MsLbfoProvider.sys is 6.2.9200.16628.

Uninstalling KB2855336 will return you to 6.2.9200.16451 of MsLbfoProvider.sys


Please avoid the July rollup until we find out which part of the rollup is responsible for this problem.

[See updated info top of blog!]

Fifth MVP Award

Today I received word from Microsoft that I am re-awarded as a Microsoft Most Valuable Professional for Virtual Machine. When I received my first award for Cluster back in 2009, I could not begin to understand its consequences and how much such an award would mean in terms of recognition, access to knowledge, direct contact with the product teams and all those forums crowded by fellow MVPs in Hyper-V, cluster, System Center, file & storage.

Today you can’t live on an island anymore and only specialize in one direction. Although my focus has always been Hyper-V, clusters, servers, storage, I now see so many other technologies need be be learnt to provide high level services in the private, service provider and public clouds. Networking is one subject which is difficult to ignore, although I must admit I have tried. Especially NVGRE and Hyper-V Network Virtualization, the in-box Gateway in Windows Server 2012 R2, the Hyper-V Extensible Switch, physical switch integration with the OMI standard …… there are so many technologies in networking alone, that this will easily be the subject I will be studying in the coming year.

My sincere thanks to all my fellow MVPs, the EMEA MVP team, my book and blog readers, the Windows Server and System Center product teams, my colleagues and my family who’ve all made this possible.

This morning my new colleague at INOVATIV, Marc van Eijk had to remind me that my MVP was due. I had simply been too busy after TechEd and had forgotton all about it. Then again I did not think of my re-award until Microsoft sent me this email message:


Looking forward to another great year being part of a superb community!

Windows Server 2012 R2 and Windows 8.1 Boot From VHDX

This blog is intended to help you get started with Windows Server 2012 R2 and Windows 8.1 real easy. It is just a quick reminder of an older blog of mine describing the Boot from VHDX process, which is sometimes also referred to as Native VHD boot. The idea is that you boot off a self-created VHDX and have all the functionalities of the operating system at your disposal. Running Hyper-V is just one of these options.

Wait for the upcoming new Preview builds of Windows which you will be able to download next week as ISO files. To make Boot from VHDX work as intended, you need to convert that ISO file to either a VHD or VHDX. If you are running Windows Server 2008 R2 or Windows 7, I suggest you use VHD because VHDX was not supported at the time. If you are running Windows 8 or Windows Server 2012, you can convert the OS ISO file to VHDX by running this handy script created by Mike Kolitz.

The Convert-WindowsImage.ps1 script does all the work.


All you need to do is have the ISO file available, use above script and make the VHDX bootable.

Start Windows PowerShell in Administrator mode and run the script like this:


If you run it with –ShowUI parameters a menu will appear asking you to fill out some details:


The script will run for a will so wait till the VHX has been created.


As soon as the VHDX is ready, place it in the preferred directory. In my case I have placed the VHDX in the c:VHDX directory:

Finally you can make the VHDX bootable by just two steps:

  • Right-click the VHDX to mount it (check the drive letter, e.g. F: )
  • Run this command in an administrative prompt: bcdboot F:Windows

And you are done. The bootable VHDX is now at the top of your boot order list. As soon as you reboot your machine, it starts he new operating system without hurting your current installation.

Have fun testing the great new Windows versions for both server and client!

Updated: Windows Server 2012 Hyper-V and Cluster Hotfixes and Updates

Update June 26, 2013: Cristian Edwards notified me that he has updated the script to now support using a cluster name. That will save you some typing if you cluster counts 64 nodes. See end of blog

Update July 1, 2013: Great to see that Niklas Akerlund and Trond Hindenes made great extensions on the update script:

Recently I was contacted by Frank Lesniak who informed me that he had updated the Technet Wiki which keeps an up-up-to-date list of hotfixes for Windows Server 2012 Hyper-V. Because the list was getting longer and longer, also several items had already been updated by a newer version (solving new problems, causing new ones too I’m afraid). Frank did a great job reorganizing the WiKi and there is now a split between the active updates and the superseded updates. The list of superseded updates also describes by which update it is replaced.

In a previous blog I drew your attention to a great script by Cristian Edwards who wrote HyperV2012UpdatesCheck.ps1 which gives you a quick overview of the installation status of an update for one or multiple servers. The script uses two XML files. For your convenience I have updated both XML files to reflect all updates till June 22, 2013.

You can download these files here

I also updated the Windows Server 2012 Cluster list based on the official TechNet article “Recommended hotfixes and updates for Windows Server 2012-based Failover Clusters” which is maintained by the Failover Cluster product team.


Hyper-V: Update List for Windows Server 2012

Recommended hotfixes and updates for Windows Server 2012-based Failover Clusters

See Cristian’s blog for the updated script:

Windows Server and Hyper-V: What’s Next?

We already know that we wouldn’t have to wait four years to get significant new features in Windows Server & Hyper-V. Looking at the list of builds since the first version of Hyper-V, we can observe there were considerable intervals between the releases of Windows Server 2008 (R2) and Windows Server 2012.

We’ve seen three major releases of Hyper-V since June 2008. If development progresses well, we might even see an updated version of Hyper-V within only about 1 year from GA of Windows Server 2012. The Windows Server 2012 operating system was already packed with spectacular new functionality and scalability with major focus on the Hyper-V and Cloud OS feature set.

Builds of Windows Server including Hyper-V

  • 2008 (February 4) – RTM Windows Server 2008 SP1 – February 2008 (with beta version of Hyper-V)
  • 2008 (June 26) – Release of Hyper-V 1.0 which shipped as a free download
  • 2008 (October 24) – Release of first Service Pack SP2
  • 2009 (July 22) – RTM of Windows Server 2008 R2 including Hyper-V 2008 R2
  • 2009 (August 19) – General Availability of Windows Server 2008 R2 including Hyper-V 2008 R2
  • 2009 (October 22) – Release of Windows Server 2008 R2 including Hyper-V 2.0
  • 2011 (February 9) – RTM of SP1 for Windows Server 2008 R2
  • 2011 (February 22) – General Availability of SP1 for Windows Server 2008 R2
  • 2011 (September 9) – Developer Build of Windows Server 8
  • 2012 (March 1) – Beta of Windows Server 8
  • 2012 (August 1) – RTM of Windows Server 2012 including Hyper-V 3.0
  • 2012 (September 4) – General Availability of Windows Server 2012 including Hyper-V 3.0
  • 2013 (June ?) – On May 14 Microsoft’s Tami Reller, head of marketing and finance for Windows announced that Windows Blue would be officially called Windows 8.1. A public preview of the software would be available on June 26th. There was no mention of the official name for Windows Server Blue and whether a public preview would be available on the same day as Windows 8.1

When Windows Server 2012 became generally available, the System Center Suite was not able to support the new OS until its SP1 release (RTM – December 16, 2012, GA – January 2, 2013). The new OS was even so feature rich that System Center 2012 SP1 was unable to include all of the treasures in Windows Server 2012. For example features like Hyper-V Replica and Virtual Fibre Channel can still not be managed from within Virtual Machine Manager 2012 SP1.

Questions, Questions, Questions

If there is a new Server OS version just around the corner …. What will this mean for Hyper-V?  How will it impact Windows Azure Services for Windows Server (WASfWS)? And what will this mean for the successor of System Center 2012 SP1?  Will the management suite be able to manage all of features of the new operating system?  To what extent will Private, Hosted and Public Cloud be more aligned in the CloudOS? What’s with SMB3? What’s with Software Defined Networking (SDN) and how about the storage integration direction Microsoft is taking? Will Microsoft be able to set itself apart from the competition even more than it did with Windows Server 2012?

In other words, there are plenty of questions that remain to be answered. There’s a very good chance that some or maybe all of these questions will be answered during the live streamed TechEd North America 2013 keynote in New Orleans by Brad Anderson.


Keep an eye on this blog because we will soon announce a joint event by the System Center User Group ( and which will focus on the expected new exciting releases.


Validating Hyper-V 2012 and Failover Clustering Hotfixes and Cumulative Updates

Some time ago I blogged about a great TechNet Wiki listing available hotfixes and updates for Windows Server 2012 Hyper-V and Failover Clustering:

As many of you know, keeping your Windows Server 2012 Hyper-V clusters up-to-date has become a whole lot easier with Cluster Aware Updating, which assists not only in a managed installation of relevant Windows Updates such as the monthly cumulative updates, but also for any relevant hotfixes or even BIOS/device driver updates. Fellow Hyper-V MVP Didier van Hoye aka @WorkingHardInIT has published a number of interesting blogs on this topic.

It can still be a laborious task to verify which updates and hotfixes have already been installed on your servers and which are missing. Once again my Twitter feed proved very helpful. Someone had noticed a great blog by Cristian Edwards, dealing exactly with this problem.

Using two XML files with entries for each hotfix class (Hyper-V or Cluster), you can simply check your servers by issuing this PowerShell script:

.HyperV2012UpdatesCheck.ps1 server1, server2, serverX


Of course you are still responsible for selecting only those hotfixes that apply to your configuration. Windows Server 2012 cumulative updates should always be installed.

You can download the PowerShell script from Christian Edwards’ blog.