Welcome to MSDN Blogs Sign in | Join | Help

Hyper-V: VM on USB Disk fails to start

If you are trying to start a virtual machine on a USB Disk (or any other external disk) and receive the following error message:

error

The most likely cause is that the physical disk is FAT32 formatted.  Hyper-V requires that you use NTFS for storing virtual machines for security purposes, and will fail to create the files needed to start a virtual machine on non-NTFS storage..

Cheers,
Ben

Posted by Virtual PC Guy | 4 Comments
Filed under:

Hyper-V - Export & Import (Part 2)

Yesterday I looked at how to do a basic export / import operation.  One thing I glossed over was the Reuse old virtual machine IDs option in the Import Virtual Machine dialog.

import

As I mentioned in yesterday, the virtual machine ID is what Hyper-V uses to uniquely identify a virtual machine.

Simply put: if you are making a copy of an existing virtual machine, you want to generate a new virtual machine ID and will leave this option unchecked.  If you are moving a virtual machine, or restoring a backup copy of a virtual machine, then you will want to reuse the old virtual machine IDs.

Note that if you select to reuse the old virtual machine IDs and the original virtual machine is still present on Hyper-V the import operation will fail as the virtual machine ID has to be unique.

Cheers,
Ben

Posted by Virtual PC Guy | 2 Comments
Filed under:

Hyper-V - Export & Import (Part 1)

Before I get going I want to get this out of the way:  Export / import in Hyper-V is by no means intuitive or easy to use.  It is definitely something that I hope we can improve in a future release - but for this release it is functional.

So with that behind us, let's start pulling this apart.

If you want to move or copy a virtual machine with Hyper-V, then you will need to use the export / import functionality provided by Hyper-V. 

The first thing you need to do is to pick the virtual machine that you want to copy and / or move, and then select Export... from the action menu / pane.  You will be presented with the following dialog:

export

Today I will be looking at the case where you specify an export path (in my case: "C:\Export") but do not check the option to Export only the virtual machine configuration.

Before going further I need to cover virtual machine names and IDs.  Each Hyper-V virtual machine has one of each of these. 

The virtual machine name is what you called the virtual machine.  For today's post I am using a virtual machine with a name of "Test Export VM".  While you are likely to give each of your virtual machines different names - the virtual machine name is not required to be unique.

The virtual machine ID is a GUID that Hyper-V generates automatically for each virtual machine.  This ID is used to uniquely identify one virtual machine from another.  For the most part the virtual machine ID is never displayed in the Hyper-V user interface (with the exception of error messages).  The virtual machine I am using for today's post has a virtual machine ID of "6D59FE56-6D20-4129-9BF3-2457DDB58A9A".

Beyond this, each snapshot that a virtual machine has has its own name and ID.

Hitting Export will result in Hyper-V copying everything that makes up the selected virtual machine into a new folder under the export path you specify.  This new folder will be named after the virtual machine name (in my case: "C:\export\Test Export VM").  Under this new directory will be the following items:

  • The Virtual Machines folder

    • This folder will contain a single .exp file, which will use the virtual machine ID for its name (in my case: "6D59FE56-6D20-4129-9BF3-2457DDB58A9A.exp").  The .exp file is the exported configuration of the virtual machine. 

      There will also be another folder in this folder, which is also named use the virtual machine ID.  If the virtual machine was in a saved state when it was exported this sub-folder will contain two saved state files (a .vsv and a .bin file), otherwise it will be empty.

  • The Virtual Hard Disks folder

    • This folder contains copies of each of the virtual hard disks associated with the virtual machine.  Note that if you have two virtual hard disks with the same name (but different locations) associated with a virtual machine, exporting the virtual machine will fail.

  • The Snapshots folder

    • This folder will contain:
      • A .exp file for each snapshot the virtual machine had (name after the snapshot ID)
      • A folder named after the snapshot ID that contains the saved state files for the snapshot in question.
      • A folder named after the virtual machine ID that will contain the differencing disks used by all of the snapshots associated with the virtual machine (.avhd files).

  • config.xml

    • I will look at this file in more detail another day.  It is not necessary for standard export / import usage.

You can freely move / copy / backup this entire directory structure now.  When you are ready to import the virtual machine you will need to go the the Hyper-V Manager and select Import Virtual Machine... from the action menu / pane.  You will see:

import

Before clicking Import there are three important things to know:

  • You need to specify the folder that was created during export, not the folder that was used for export.  So in my case I need to specify "C:\Export\Test Export VM" instead of "C:\Export".

  • When you import a virtual machine it will be left in its current directory (in my case "C:\Export\Test Export VM") and it will be impossible to move the virtual machine after import.  So make sure that you move the exported virtual machine to your desired location before you import it.

  • Importing a virtual machine deletes the .exp files, which stops you from importing it again.  If you want to use an exported virtual machine as a backup / template that you will import multiple times - you need to make a copy of it before importing it.

After you click Import the file structure of the exported virtual machine will remain roughly the same, with the following exceptions:

  • The .exp files will be deleted and will be replaced with .xml configuration files.
  • The config.xml file will be deleted.

And now the virtual machine will appear under the Hyper-V manager and you will be able to interact with it directly.

Cheers,
Ben

Posted by Virtual PC Guy | 5 Comments
Filed under:

TechEd Australia and New Zealand

Next week I am going to be jumping on a plane and going to New Zealand and Australia to talk virtualization.

Here is my speaking schedule:

New Zealand:

Session: Windows Server 2008 Hyper-V Architecture, Scenarios and Networking Deep Dive
Date:  Tuesday September 2nd  2008
Timeslot: 9:00am – 10:15am

Session: Deploying Windows Server 2008 Hyper-V and Microsoft System Center Virtual Machine Manager: Best Practices
Date:  Tuesday September 2nd  2008
Timeslot:  10:45am – 12:00PM

Australia:

Session: Windows Server 2008 Hyper-V Architecture, Scenarios and Networking Deep Dive
Date:  Thursday September 4th 2008
Timeslot: 3:45PM – 5:00PM

Session: Deploying Windows Server 2008 Hyper-V and Microsoft System Center Virtual Machine Manager: Best Practices
Date:  Friday September 5th 2008
Timeslot:  11:45am – 1:00PM

I will also be at the "Ask the Experts" session at both shows.

Finally, this year at TechEd Australia they are running an *Ultimate Expert* competition for all of us speakers.  To help me out in this competition you need to log into CommNet, ask a question, and nominate me as the expert.

Cheers,
Ben

Microsoft Server Software and Supported Virtualization Environments

This KB Article:

http://support.microsoft.com/?kbid=957006

Outlines all of the Microsoft Server Software products that are supported under Hyper-V and other virtualization platforms that are part of the Server Virtualization Validation Program.

Cheers,
Ben

Ben is back, some quick links

You may have noticed my absence for the last couple of weeks - I have been on vacation for some post-Hyper-V release unwinding.  But I am back at work now (and digging through a mountain of email).  To kick off blogging again I am going to throw out some links for things that have happened recently:

Cheers,
Ben

Processor topology inside of Hyper-V virtual machines

A number of people have noticed that they can create a virtual machine with four virtual processors, and then successfully run Windows XP on it and have it utilize all four virtual processors.  This strikes them as odd, because Windows XP supposedly only supports the use of one or two processors in a computer.

To understand what is happening we need to talk about processor topology.

A long time ago, the universe used to be quite simple.  When you talked about a processor you meant a physical chip that you put inside a computer that was capable of handling one stream of execution.  Then along came concepts such as hyper-threading and multi-core processors.  These technologies allow a single physical processor to handle multiple streams of execution, and effectively appear like multiple physical processors.

In this new world, in order to differentiate between the physical chip that you put in a computer and a single stream of execution on the chip, we use the terms "package", "socket" or "physical processor" to refer to the actual physical chip that you put inside the computer,  and the term "logical processor" to refer to a single stream of execution on the chip.

"Processor topology" is simply the ratio, and nature, of logical processors to physical processors in a computer.

This all gets interesting when it comes to the question of how virtual processors are represented inside of a virtual machine.

When hyper-threading and multi-core processors first came onto the scene, Microsoft made the decision to license all of its software based on the number of physical processors [and not logical processors] in a system.  This means that when you try to create a "four processor" virtual machine the way in which we represent those four processors can affect how the software that runs inside the virtual machine will need to be licensed.

Obviously, as Microsoft, we do not want you to be able to run software that utilizes more processing power than you are correctly licensed to use.  On the flip side, we understand that you do not want to have to pay more for your software than you actually need to. 

To this end, Hyper-V examines the processor topology of your physical computer and exposes that into the virtual machine.

Thus, a virtual machine with four virtual processors that is running on a physical computer with a single quad-core physical processor will appear to only have a single physical processor with four logical processors.  The same virtual machine running on a system using two dual-core physical processors would appear to have two physical processors with four logical processors [two logical processors per physical processor].

And this is what allows Windows XP to run on your "four virtual processor" virtual machine and utilize all of the virtual processors, because it is still within its licensing right of one or two physical processors, if you are running on a hyper-threaded or multi-core system.

Cheers,
Ben

UPDATE: To help visualize this, below is a table that shows you the processor topology that will be reported inside the virtual machine, given the processor topology of the physical computer and the number of virtual processors configured for the virtual machine.

# Virtual Processors / Physical Processor Topology 1 Virtual Processor 2 Virtual Processors 4 Virtual Processors
4 single-core processors 1 single-core processor 2 single-core processors 4 single-core processors
2 dual-core processors 1 single-core processor 1 dual-core processor 2 dual-core processors
1 quad-core processor 1 single-core processor 1 dual-core processor 1 quad-core processor

Hyper-V Clustering without shared storage

Jose has a great post over on his blog that talks about how to setup a Hyper-V cluster using a file share instead of traditional shared storage:

http://blogs.technet.com/josebda/archive/2008/07/16/failover-clustering-for-hyper-v-with-file-server-storage.aspx

This is especially handy for anyone who wants to try their hand at clustering without investing in the hardware - as you can do this with three standard physical computers.

Cheers,
Ben

Posted by Virtual PC Guy | 1 Comments
Filed under:

Confusion over Multi-Processor Guest OS Support with Hyper-V

After posting a link to our supported guest operating system list (http://support.microsoft.com/kb/954958/en-us) I have received a number of queries about the issue of multi-processor support.  You see, while we state that we only support Windows Server 2003 with up to virtual processors, and Windows Vista / XP with a single virtual processor - multiple people have let me know that they are running these operating systems with greater numbers of virtual processors, and are seeing no problems.

This is not surprising.

We have no idea what operating system you are going to run inside a virtual machine, and allow you to configure up to 4 virtual processors for any operating system you want.

The point of the support statement above is that these are the configurations that we have specifically tested, and will officially support.

Case in point - if you configure a Windows Server 2003 virtual machine with 4 virtual processors it will appear to correctly identify and utilize all 4 virtual processors.  However, as we have not formally tested this configuration and do not support it, if you encountered an issue while running in the configuration and needed to contact Microsoft product support - you would be asked to reproduce the problem with only 2 virtual processors first.

To summarize:

  • If you are running production / critical workloads - please stick to the supported list of operating systems / number of virtual processors.
  • If you are just playing around - feel free to try running greater than the officially supported number of virtual processors, but don't get mad at me if things blow up / fail in mysterious ways.

Cheers,
Ben

Posted by Virtual PC Guy | 4 Comments
Filed under:

PowerShell Management Library for Hyper-V

James O'Neill posts here: http://hypervoria.com/hyper-v/hyper-v-powershell-library-now-on-codeplex.aspx to let us know that he has provided a PowerShell Management Library for Hyper-V available here: http://www.codeplex.com/PSHyperv

Cheers,
Ben

Hyper-V RTM now on Windows Update!

So now updating to the final release is easier than ever. Hurray!

Cheers,
Ben

Posted by Virtual PC Guy | 3 Comments
Filed under:

Hyper-V: Supported Guest Operating Systems

In case you missed this one, with the RTM of Hyper-V we expanded the list of supported guest operating systems.  You can see the full official list here:

http://support.microsoft.com/kb/954958/en-us

Cheers,
Ben

Posted by Virtual PC Guy | 3 Comments
Filed under:

Ronald Beekelaar on Hyper-V

There is a great post today on the team blog where Ronald Beekelaar, Microsoft Virtualization MVP, talks about Hyper-V.  Read more here: http://blogs.technet.com/virtualization/archive/2008/07/01/Top-5-things-to-know-about-Hyper_2D00_V.aspx

Cheers,
Ben

Posted by Virtual PC Guy | 0 Comments
Filed under:

Hyper-V RTM!

Okay - this is going to be a short post as I am off to party for the rest of the day.

Hyper-V has RTM'd!

Press release here: http://www.microsoft.com/presspass/features/2008/jun08/06-26hyperv.mspx

John Howard has install directions here: http://blogs.technet.com/jhoward/archive/2008/06/26/hyper-v-rtm-announcement-available-today-from-the-microsoft-download-centre.aspx

And my favorite - QLogic reports getting up to 180,000 IOPs at 88 - 97% native performance on Hyper-V RTM:

http://ir.qlogic.com/phoenix.zhtml?c=85695&p=irol-newsArticle&ID=1169854&highlight=

Cheers,
Ben

Posted by Virtual PC Guy | 5 Comments
Filed under:

Whitepaper: Hyper-V and BitLocker

There is a new whitepaper on how to use BitLocker with Hyper-V for securing Hyper-V server installations.  This is great for branch office / other situations where there is a potential physical security issue.  Read more here:

http://www.microsoft.com/downloads/details.aspx?FamilyID=2c3c0615-baf4-4a9c-b613-3fda14e84545&DisplayLang=en

Cheers,
Ben

Posted by Virtual PC Guy | 2 Comments
Filed under:
More Posts Next page »
 
Page view tracker