SCE 2010 Windows 2000 P2V Made Easy!

Yea … so that’s the diagram. And that’s supposed to somehow increase your understanding of the whole P2V thing. In fact – this article – is what everyone links to when you search for how to P2V a Windows 2000 Sp4 Server. Here’s the whole interesting part of that article when it comes to W2K Server:

Offline Conversion

Offline P2V is the most reliable way to ensure data consistency because it creates an exact copy of the source computer while it is not in use. Also, offline P2V is the only option for converting Windows 2000 Server, domain controllers, and non-NTFS volumes. Unlike online conversions, the user must provide any missing drivers if Windows PE does not support the source computer. The offline conversion consists of four steps:

  1. Agent installation. Virtual Machine Manager installs the VMM agent on the source computer.
  2. The VMM agent installs a Windows PE image on the source computer, modifies the boot record, and restarts in Windows PE instead of the base operating system.
  3. VMM begins streaming physical disks. There are no snapshots in this process.
  4. The remainder of the process is similar to the Fix-Up phase and Create Virtual Machine Phase in an online P2V.

Fat lot of good that does me. Doesn’t tell much of anything really… Just that you’ll possibly need some drivers. No steps, nothing. Just – “hey, do this and it should work”. Problem is IT DOESN’T. Trying to convert an existing SCE 2010 managed W2K Server using the P2V wizard just provides you with an instant failure and some cryptic error code (which thanks Microsoft) doesn’t event provide a troubleshooting link to tell you what you did wrong.

Yes, I know this image says online… but the wizard has offline selected and grey’d out! So after you’ve beat your head against your desk all day … once again…

PowerShell to the rescue. Yay!!! Command line BS for a GUI OS. How is it you can spend OVER 20 YEARS building a GUI environment, but you still need a command line in order for the GUI shit to work right? Oh, well. Love it or leave it. Glad I can use it.

Here’s the first thing you need:

Windows PowerShell Virtual Machine Manager Cmdlet Reference

Once you have that in hand… locate page number 81 of 355. See that handy little switch -Offline? Great. Now scroll to page 84. There’s an example, but it doesn’t really do the -Offline. So, let’s add it.

Open Start –> All Programs –> Microsoft System Center –> Virtual Machine Manager 2008 R2 –> Windows PowerShell – VMM

Then one line at a time:

  PS C:\> $Credential = Get-Credential

PS C:\> Get-VMMServer -ComputerName “”

PS C:\> $VMHost = Get-VMHost -ComputerName “”

PS C:\> New-P2V -SourceComputerName “” -VMHost $VMHost -Name “VM01” -Path “C:\MyVMs” -MemoryMB 256 -Credential $Credential -RunAsynchronously -Offline

The doc shows you what all the commands mean. Anyway, wait a couple minutes and then you’ll be dumped back out to a prompt with a summary of what you just did:

MostRecentTask                    : Physical-to-virtual conversion
ServerConnection                  : Microsoft.SystemCenter.VirtualMachineManage
ID                                : 8f2607ce-c5ab-4e80-8c42-8aef21c6761b
MarkedForDeletion                 : False
IsFullyCached                     : True

Problem is – there’s no way a whole server got moved that fast from P2V. Not possible. So open up SCE and go to your VMs. You can monitor the progress from here. Another way to watch all of this (at least you can see the stages) is to run a DRAC or ILO depending on your hardware.

Have patience. This is definitely not a fast process. Soon enough you’ll see:


One thought on “SCE 2010 Windows 2000 P2V Made Easy!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s