P2V a GPT based Disk To Hyper-V

So anyone who’s ever tried to perform a P2V of a GPT based computer, By GPT based I mean that the boot disk is GPT and not basic, knows that after the P2V the new VM will not boot.

However, luckily, there is a way around this.

First of all perform the P2V using a toll such as Disk2VHD.
Take the newly created VHD file and attach it to an existing Virtual Machine. I would recommend a Windows 7 workstation VM if you have one. alternatively you can also mount the new VHD in your own Windows workstation using disk management. If your new file is a VHDx file then your going to need a windows 8 workstation or higher.

atatch vhd

Now install on the workstation a product called AOMEI Partition Assistant Standard. The standard version is free and can perform the functionality required to perform the following tasks.

Open Partition Assistant, locate your converted disk (it should show up as a GPT disk), right click the disk and choose the option “Convert to basic disk”, Confirm the prompt and then click apply in the top right corner.

Now that we’ve converted the disk to basic we need to reattach the VHD to our virtual machine, if you haven’t created a VM yet now is the time to do it.

The new VM still won’t boot, the next step is to boot with a Windows 2008R2 installation disk (any other version will also work).

Boot the VM from the Windows 2008R2 installation disk and choose the “repair your computer option”.

In the windows that opens choose from the top “use recovery tools”, click next and the choose the command prompt option.

Now we need to type a few commands.

1. diskpart

2. list disk

3. select disk #

4. List Partition

5. Select Partition # (this is the partition with our windows installation)

6. active

7. Exit

Now reboot the VM. Boot from installation CD again and return to the command prompt.

now type the following commands.

1. bootrec /fixmbr

2. bootrec /fixboot

3. bootrec /rebuildbcd and click y

reboot VM again and once again boot from installation CD and return to the command prompt.

run these final commands

1. cd recovery

2. startrep

reboot VM again, but this time not from the installation CD, your windows VM should now successfully boot.

Good Luck!!!




What is Storage Spaces Direct In Windows 2016?

Windows 2016 will continue to focus on Software Defined Storage. In Windows 2012 Storage spaces was introduced as a tool that would allow pooling together disk resources to create a large and redundant pool of disk space (Similar to Raid but without certain limitations-Such as all disks must be of the same size).  Storage spaces could also be used in a cluster environment as long as the Storage space as based on a JBOD with direct SAS connectivity to both nodes in the Cluster.

In Windows 2016 we’re receiving storage spaces direct. This technology will allow us to pool multiple local DAS disks from Multiple servers in to one pool. That’s correct local disks from multiple servers into one large shared pool. The pool can be used in a failover cluster for storing your Hyper-V VM’s.

just think, you can have 3 servers all with 3TB of local disk space all pooled together to create a large pool of clustered disk space. Now that’s COOL!
The pool will be fault tolerant and the loss of a single server will not bring down the pool itself.

The possibilities are endless. Smaller environments will defiantly be able create clusters without purchasing expensive Storage appliances, data can be stretched to a remote site for DR scenarios. Yes this is also totally supported.

I’ve been playing around with the preview version, and so far things look extremely cool.


Hyper-V Differential Export

Just saw this on Aidan Finn’s blog. Couldnt find any information on this from Microsoft except for this blog but have confirmed in lab 🙂

Windows Technical preview allows you to perform differential exports of VM’s using checkpoints.

What this means is that you can export a VM and at  later point perform a second export of the VM. However the second export won’t be a full export it will just export the changes since the previous export and link it to the previous export in the form of a AVHDX (checkpoint) file.

Very useful, could even be used as a poor mans backup. Also pretty sure that we’re going to see backup software take advantage of this new feature.

Hyper-V VM Backup leaves VM in Backup State

Sometime after running backups you’ll open Hyper-V Manager and see that the VM is still in backup mode even though the backup Jobs has already finished. status-backing-up So to fix this we has to find the process usually by using process explorer and kill it. Quite a nag to be honest. Anyway I just saw this patch for Windows 2012R2 & Windows 8.1 that is meant to address the issue. http://support2.microsoft.com/kb/2964439 So if you’re experiencing the same problem, I would recommend installing this patch on your systems Good Luck

Microsoft Virtual Machine Converter 3.0 Now Available

Microsoft Just released the new version of MVMC (Virtual Machine Converter).
The new version includes new features and extended support for new platforms.
The biggest change being that the tool now supports conversion of physical machines running Windows 2008 or Windows Vista and later.

The tool is totally standalone and does not require System Center or even Hyper-V to run though of course can be fully integrated with the help of powershell.

As well as performing P2V’s the tool can

  • Converts virtual disks that are attached to a VMware virtual machine to virtual hard disks (VHDs) that can be uploaded to Microsoft Azure.
  • Provides native Windows PowerShell capability that enables scripting and integration into IT automation workflows
  • Supports conversion and provisioning of Linux-based guest operating systems from VMware hosts to Hyper-V hosts.
  • Supports conversion of offline virtual machines.
  • Supports the new virtual hard disk format (VHDX) when converting and provisioning in Hyper-V in Windows Server 2012 R2 and Windows Server 2012.
  • Supports conversion of virtual machines from VMware vSphere 5.5, VMware vSphere 5.1, and VMware vSphere 4.1 hosts Hyper-V virtual machines.
  • Supports Windows Server 2012 R2, Windows Server 2012 and Windows 8 as guest operating systems that you can select for conversion.
  • Converts and deploys virtual machines from VMware hosts to Hyper-V hosts on any of the following operating systems:
    o Windows Server® 2012 R2
    o Windows Server® 2012
    o Windows Server 2008 R2 SP1
  • Converts VMware virtual machines, virtual disks, and configurations for memory, virtual processor, and other virtual computing resources from the source to Hyper-V.
  • Adds virtual network interface cards (NICs) to the converted virtual machine on Hyper-V.
  • Supports conversion of virtual machines from VMware vSphere 5.5, VMware vSphere 5.0, and VMware vSphere 4.1 hosts to Hyper-V.
  • Has a wizard-driven GUI, which simplifies performing virtual machine conversions.
  • Uninstalls VMware Tools before online conversion (online only) to provide a clean way to migrate VMware-based virtual machines to Hyper-V.
  • Supports Windows Server and Linux guest operating system conversion.
  • Includes Windows PowerShell capability for offline conversions of VMware-based virtual hard disks (VMDK) to a Hyper-V–based virtual hard disk file format (.vhd file).

You can download the tool from Microsoft here

Windows Server Technical Preview – Whats New for Hyper-V?

Along with yesterdays announcement of Windows 10, Yes that is correct 10 and not 9, Windows Server Technical Preview was also announced.

For now it just being refered to as Windows Server Technical Preview.

So, whats new for Hyper-V with this new release? Well quite a lot.

1. Rolling Hyper-V ClusterUpgrade

  • You can add a Windows Server technical preview node to a windows 2012R2 cluster and live migrate virtual machines. Allowing for a totally non disruptive migration of all VM’s to the new platform.
  • New features won’t be available untill you complete the migratin and run the following command from powershell – Update-ClusterFunctionalLevel

2. storage QoS

  • You can now create storage QoS policies on a Scale-Out File Server and assign them to one or more virtual disks on Hyper-V virtual machines. Storage performance is automatically readjusted to meet policies as the storage load fluctuates.

3. Virtual Machine Configuration Version

  • Configuration Version 6 is now available for virtual Machines.
  • Existing virtual machhine can be upgraded using the following command (The vm need to be powered off first): Update-VmConfigurationVersion vmname

4. New Virtual Machine File Configuration Format

  • Virtual machines now have a new configuration file format which is designed to increase the efficiency of reading and writing virtual machine configuration data. It is also designed to reduce the potential for data corruption in the event of a storage failure. The new configuration files use the .VMCX extension for virtual machine configuration data and the .VMRS extension for runtime state data.

5. Production Checkpoints

  • Production checkpoints allow you to easily create “point in time” images of a virtual machine, which can be restored later on in a way that is completely supported for all production workloads. This is achieved by using backup technology inside the guest to create the checkpoint, instead of using saved state technology. For production checkpoints, the Volume Snapshot Service (VSS) is used inside Windows virtual machines. Linux virtual machines flush their file system buffers to create a file system consistent checkpoint. If you want to create checkpoints using saved state technology you can still choose to use standard checkpoints for your virtual machine.

6. Hyper-V Manager Improvments

  • Alternate credentials support – you can now use a different set of credentials in Hyper-V manager when connecting to a remote host. You can also choose to save these credentials to make it easier to log on again later.
  • Down-level management – you can now use Hyper-V manager to manage more versions of Hyper-V. With Hyper-V manager in the Windows Server Technical Preview and Windows 10 Technical Preview, you can manage computers running Hyper-V on Windows Server 2012, Windows 8, Windows Server 2012 R2 and Windows 8.1.
  • Updated management protocol – Hyper-V manager has been updated to communicate with remote Hyper-V hosts using the WS-MAN protocol, which permits CredSSP, Kerberos or NTLM authentication. Using CredSSP to connect to a remote Hyper-V host allows you to perform a live migration without first enabling constrained delegation in Active Directory. Moving to the WS-MAN-based infrastructure also simplifies the configuration necessary to enable a host for remote management because WS-MAN connects over port 80, which is open by default.

7. Integration Services will be updated using Windows Update

  • Starting shortly after the release of the Windows Server Technical Preview, updates to integration services for Windows guests will begin being distributed through Windows Update. For service providers and private cloud hosters, this will put control of updates into the hands of the tenants who own the virtual machines. Tenants can now update their Windows virtual machines with all updates, including the integration services, using a single method.

8. Hot add for Memory and Networks Adapters (Been waiting a while for this one)

  • You can now add or remove a Network Adapter while the virtual machine is running, without incurring downtime. This works for generation 2 virtual machines running both Windows and Linux operating systems.
  • You can also adjust the amount of memory assigned to a virtual machine while it is running, even if you haven’t enabled Dynamic Memory.

9.Linux Secure Boot

  • Linux operating systems running on generation 2 virtual machines can now boot with the secure boot option enabled.  Ubuntu 14.04 and later, and SUSE Linux Enterprise Server 12, are enabled for secure boot on hosts running the Technical Preview. Before you boot the virtual machine for the first time, you must specify that the virtual machine should use the Microsoft UEFI Certificate Authority.  At an elevated Windows Powershell prompt, type: Set-VMFirmwarevmname-SecureBootTemplateMicrosoftUEFICertificateAuthority

As you can see quite a lot has been updated and this is just on the Hyper-V side.

I’m looking forward to testing these new features and keeping you all updated on how they work.

Update rollup 3 for SCVMM 2012R2 & update rollup 7 for SCVMM 2012SP1 released

Update rollup 3 for SCVMM 2012R2 has been released. It includes multiple resolved issues and adds support for Ubuntu Linux 14.04

Issues that are fixed in this update rollup

  • Total storage for a User role is reported incorrectly. For example, the User role can use only half of the allowed quota.
  • A host cluster update fails intermittently because of a locked job.
  • Virtual machine (VM) refreshers do not update highly available virtual machines (HAVMs) after failover to another node.
  • A cluster IP address for a guest cluster configuration in a Hyper-V Network Virtualization (HNV) environment is not updated correctly by using HNV policies during failover. For more information about this issue, see the following article in the Microsoft Knowledge Base:2981736 (http://support.microsoft.com/kb/2981736/ )
    The cluster IP address in an HNV environment is updated incorrectly during failover
  • Server Message Block (SMB) shares may not be usable by high availability (HA) workloads if they are also connected to stand-alone hosts.
  • Storage objects discovery does not occur on a Virtual Machine Manager server if the discovery item is too big.
  • A Virtual Machine Manager job that assigns network service backend connectivity fails.
  • Enable maintenance mode fails when you evacuate failed-state VMs.
  • The Virtual Machine Manager service cannot be restarted because of database corruption.
  • The ZH-TW language incorrectly appears in the tooltip of the VM Network icon.
  • Library refresher rewrites the alternative data stream on every file during every update.
  • For iSCSI hardware storage-based array, when the MaskingPortsPerView property option is set to “multi-port per view,” the target endpoint is not obtained as the port address.
  • The virtual hard disk (VHD) is left in the source folder after storage migration is completed.
  • The addition of a bandwidth limitation to an existing virtual private network (VPN) connection is not added to the generated script.
  • A VM that is attached to an HNV VM network loses connectivity when it is live migrated to another node in the failover cluster that is not currently hosting other VMs that belong to the same VM network.
  • VM network shared access is lost after a service restart or an update interval.
  • The Remove-SCFileShare command fails for a network-attached storage SMI-S provider.
  • Setting the template time zone to UTC (GMT +0:00) is incorrectly displayed as “Magadan Standard Time.”
  • The System Center 2012 R2 Virtual Machine Manager crashes when you add groups that contain the at sign (@) character in User roles.
  • VM deployment fails in a VMWare environment when you have virtual hard disk (.vmdk) files of the same size in your template.
  • Deployment of an application host on HAVMM fails and generates a 22570 error.
  • Live migration of an HAVM cross cluster creates a duplicate VM role in the target cluster.
  • An error occurs when you apply physical adapter network settings to a teamed adapter.
  • A VMM agent crashes continuously when the HvStats_HyperVHypervisorLogicalProcessor query returns a null value.
  • A host refresh does not update the VMHostGroup value of a VMWARE cluster after the cluster is moved from VCENTER.
  • VMM reports an incorrect Disk Allocation size for dynamic VHDs that are mapped to a virtual machine.
  • A VMM service template script application does not work for a self-service role.
  • VM creation fails if Virtual Machine Manager undergoes failover during the creation process.
  • The Access Status value of a file share is incorrect in the user interface.
  • The Virtual Machine Manager service crashes because of an invalid ClusterFlags value.
  • VMs cannot be deployed from a service template to a cloud across multiple host clusters (multiple datacenters).

Features that are added in this update rollup

  • This update includes a Linux guest agent upgrade to support the following new operating systems:
    • Ubuntu Linux 14.04 (32-bit)
    • Ubuntu Linux 14.04 (64-bit)
  • This update also includes the following:
    • Host DHCP extension driver upgrade
    • Several performance improvements
    • Several Management Pack package improvements

Also released is update 7 for SCVMM 2012 SP1.

Issues that are fixed in this update rollup

Virtual Machine Manager

  • A host refresh does not update the VMHostGroup value of a VMWARE cluster after the cluster is moved from VCENTER.
  • A service reconfiguration does not finish when the servicing generic command executable (GCE) has an application payload.

ABM Swithces from VMware to Hyper-V

Just read this interesting post on Networkworld, regarding ABM’s transition from VMware to Hyper-V.

ABM have around 60 Hosts running their Virtual enviroment. They have been running VMware for 3 years, and decided to migrate their workload over to Hyper-V. The article discusses their decision making process and how they decided to approach the project. All in all it makes for quite an interesting read.

The full article is available here: http://www.networkworld.com/article/2358254/virtualization/abm-overcomes-pro-vmware-bias-to-adopt-microsoft-s-hyper-v.html



Savision Cloud Advisor

I’ve Just been checking out Savision Products.

They have two great products.

1. Live Maps – A SCOM Extension for improved dashboards.
Or as the manufacture says “Live Maps is a powerful, unifying tool for monitoring service health and performance, bringing IT and business together by letting them speak the same language”

2. Cloud Reporter –  A Capacity planning/monitoring solution for Hyper-V.
Or as the manufacture says “Cloud Reporter for System Center is a robust capacity planning solution for private clouds based on Microsoft’s Hyper-V. Plan for the future and meet your service level objectives, with the ability to predict when memory, processors and storage resources will be exhausted”

Both these products work great and are very interesting. in my case the cloud reporter especially, as I have customers who are constantly creating, changing, deleting and adding new VM’s to theire environment and they need a products that can keep track and warn them of capacity issues.

However they also have a 3rd product call Cloud Advisor. Now the first thing to note is that Cloud provider is a totally free Product. It’s basically a small add-in for System Center Virtual Machine Manager. Installation is very simple, simply download the zip file from Savision, navigate to setting tab in VMM, and choose the option to import an add-in.


Once installed an Icon named Tuning Tips is added to the navigation Bar. Simply clicking this icon will present you with various warning & tips regarding your environment.

This includes warning such as; Present checkpoints on VM’s, sufficient memory, sufficient disk space etc.


It’s a great little program that is totally free. defiantly worth a download and import into your SCVMM environment.

Can’t remove Hyper-V Backup Checkpoint/Snapshot from VM

As I mentioned in a previous post Hyper-v 2012R2 uses checkpoints to aid the backup process of VM’s.

These checkpoints are created and deleted by the backup Process, the actual checkpoint can not be deleted using hyper-V manager GUI and will not show up in SCVMM at all.
Why you may ask? Well the reason is simple these checkpoints are actually differencing disks. Thats right the backup process creates a differecing disk, while this is basically the same as a checkpoint it can’t be deleted using any available GUI. It should actually be deleted by the backup Process.

So last week a customer found that he had a checkpoint of this kind on one of his VM’s


Now you may notice that the icon is slighty different from that of a regular checkpoint, that is because this is a differencing disk. Running an inspection of the VHDX file will reveal this.


In this case a failed backup of the VM left the hindering checkpoint. The only way to deal with it is by using Powershell.

The following command will help you determine that a checkpoint is currently open on the VM:

Get-VMSnapshot -VMName vmwithcheckpoint.domain.com -ComputerName hyper-v.domain.com| fl – this returns the VM state

and his command will remove the checkpoint and merge the AVHDX file into it’s parent VHDX file.

Get-VMSnapshot -VMName vmwithcheckpoint.domain.com -ComputerName hyper-v.domain.com| Remove-VMSnapshot

Hope this helps if you find yourself in a similiar situation.