Jorge's Quest For Knowledge!

All About Identity And Security On-Premises And In The Cloud – It's Just Like An Addiction, The More You Have, The More You Want To Have!

(2012-05-26) Using Both Microsoft Hyper-V And VMware Workstation On The Same Machine

Posted by Jorge on 2012-05-26


I have been using VMware workstation since the beginning of time, well almost then! Smile. Yes, I’m a huge Vmware workstation fan because it gives me all the flexibility I need on my work laptop to give demos, perform tests, etc. Features I really like are: USB support, network redirector to access data on the host without IP connectivity, copy paste to/from VM from/to host, easiness to copy/distribute VMs between VMware workstation instances, and some more.

However, sometimes I also need to use Hyper-V. Previous I was only able to use Hyper-V on Windows Server and because I did not feel like using Windows Server as my desktop OS I always needed additional hardware. What I DO NOT mean is to use both Hyper-V and VMware workstation at the same time. I DO mean that I want to use either one at a time when I need to.

However, now with Windows 8, BOTH the desktop and server OS have Hyper-V as OS feature/role. That’s good news! BUT….how to get both Hyper-V and VMware workstation on the same machine without wither complaining. Until now I have not found anything on how to do this, until a person in the VMware forums (this post) pointed me to a link explaining the steps to achieve what I have wanted for ages! Read it here.

The first thing you need to determine is which virtualization technology will be used very frequent and which virtualization technology will be used sporadically. In my personal case VMware workstation will be used very frequent, and is therefore the default, and Hyper-V only as needed. As my desktop OS I’m using Windows 8 client.

After installing Windows 8, go to the Control Panel (lower right corner of the desktop –> Settings –> Control Panel) –> Programs And Features –> Turn Windows Features On Or Off. Then make sure all Hyper-V components are checked as shown below. Then click “OK”. Close all windows when done.

image

Figure 1: Installing The Hyper-V Windows Feature On Windows 8 (Client)

Hyper-V is now installed and now it is time to install VMware Workstation. The latter won’t even install if it detects Hyper-V is installed AND running. In other words, Hyper-V is already claiming the Hypervisor and because of that VMware workstation can’t use it.

Make sure the following is done with admin credentials AND elevated! Open a command prompt window by pressing [WINDOWS KEY]+[R] and then type CMD.

Then type: BCDEDIT /ENUM

image

Figure 2: Enumerating The Boot Options In The Boot Menu (After Installing Hyper-V)

Check out the last element called “hypervisorlaunchtype”.

Now Type: BCDEDIT /COPY {DEFAULT} /D “No Windows Hypervisor”

image

Figure 3: Creating A Copy Of The Original Boot Option

Note the GUID that is mentioned at the end between brackets. Now for the just create copy of the original boot option you will disable the automatic claim/use of the hypervisor by Hyper-V.

Now type: BCDEDIT /SET {d9cbf0e2-786c-11e1-b1f9-abcdd5349459} HYPERVISORLAUNCHTYPE OFF

image

Figure 4: Disabling Hyper-V To Claim/Use The Hypervisor In The Copy Of The Original Boot Option

Now type: BCDEDIT /ENUM /V

image

Figure 5: Enumerating The Boot Options In The Boot Menu

Currently, the boot option  with the description “Windows 8 Consumer Preview” is set as the default, and that’s the boot option I need to select when I want to use Hyper-V. However, when I want to use VMware Workstation I need to select the boot option with the description “No Windows Hypervisor” and I use VMware Workstation as my default virtualization solution I need to set the corresponding boot option as the default choice.

Now type: BCDEDIT /DEFAULT {d9cbf0e2-786c-11e1-b1f9-abcdd5349459}

image

Figure 6: Setting The Copy Of The Original Boot Option

Now type: BCDEDIT /ENUM /V

image

Figure 7: Enumerating The Boot Options In The Boot Menu

Now when you reboot Windows 8, you will see something similar like…

image

Figure 8: Choosing A Boot Option During The Booting Of The OS

If you do not choose an option it will by default continue with the default option and in this that will be “No Windows Hypervisor” boot option.

If you do make a choice and choose the boot option called “No Windows Hypervisor” you will be able to use VMware Workstation, but you will not be able to use Hyper-V.

If you do make a choice and choose the boot option called “Windows 8 Consumer Preview” you will be able to use Hyper-V, but you will not be able to use VMware Workstation. In this case the OS would reboot again and allow you to start Hyper-V afterwards.

Remember, you can only have ONE virtualization technology running at a time! If you want to switch between using a virtualization technology, you will need to reboot the computer again!

Have fun!

I have been using this for a few weeks now, and this is quite cool and now I’m happy as I can use both without having additional hardware!

PS: Although I have not tested it, this will also work with W2K8 and W2K8R2.

Cheers,
Jorge
———————————————————————————————
* This posting is provided "AS IS" with no warranties and confers no rights!
* Always evaluate/test yourself before using/implementing this!
* DISCLAIMER:
https://jorgequestforknowledge.wordpress.com/disclaimer/
———————————————————————————————
############### Jorge’s Quest For Knowledge #############
#########
http://JorgeQuestForKnowledge.wordpress.com/ ########
———————————————————————————————

8 Responses to “(2012-05-26) Using Both Microsoft Hyper-V And VMware Workstation On The Same Machine”

  1. Peter said

    Hi Jorge,

    Very slick! I’m going to employ this on my test Win8 laptop as well. 🙂

    Peter
    Exit.the.Fast.Lane

    Liked by 1 person

  2. Assad Arram said

    Hi
    nice work but just for information I have the same situation and what I actually do is windows 8 starts normally and I use VMware normally and when I want to use
    Hyoper-v i just run this command “bcdedit /set hypervisorlaunchtype auto” and restart than i will be working with Hyper-v until i want to use vmware NeXT time
    i than run this command “bcdedit /set hypervisorlaunchtype off” and rebbot

    Like

    • Jorge said

      we are basically doing the same things, with some subtle differences.
      YOUR METHOD: You only have one profile. You either enable or disable the hyper-v launch type within the one and only OS profile.

      MY METHOD: I use two profiles. Each profile has been configured. One has the hyper-v launch type enabled and the other has it disabled. Whenever I need to use a specific profile I just select the correct profile to be able to use the corresponding virtualization product. Because I use VMware very frequent I have configured the profile with the hyper-v launch type disabled to be the default profile

      there is no wrong or right here, just a different way of working to achieve the same result.

      Like

  3. s_48k said

    Thanks, Thanks, Thanks…

    Like

  4. Galileu said

    Thanks!!! Very Good

    Like

  5. Survivor said

    Great article! However once you start using Hyper-V it will make changes to the network configuration at the point that VMware VMs won’t be able to connect to the Internet anymore. I would like to see an article on how to keep Hyper-V and VMware VMs still connect whether you boot on either.
    Thanks!

    Like

    • Jorge said

      To connect my VMs to the internet I use an additional VM that contains routing/proxy functionality. That functionality within that VM is provided by M0n0wall, IPcop or pFSense. Google for those names and you will find it. I have a separate VM for VMWare and another for Hyper-V. Those VMs are configure with for example 10.1.1.254 and all Windows VMs point to it as the gateway

      Like

  6. […] To run Hyper-V and VMware on same machine – https://jorgequestforknowledge.wordpress.com/2012/05/26/using-both-microsoft-hyper-v-and-vmware-work… […]

    Like

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.