SCVMM Beta 2 first impressions

8. May 2007 00:08 by Jaguilar in General  //  Tags: ,   //   Comments (0)

Today I finally got a chance to play with Beta 2 of the System Center Virtual Machine Manager. Here are my preliminary impressions:

  • First of all, the product has improved significantly. It has tons of new features, and uses tons of new pre-requisites. Fortunately, you can download a pre-configured VHD with SCVMM, ready to go, from Microsoft Connect.
  • This version of SCVMM uses the new Windows Remote Management (WinRM) package to manage remote servers. This is a step in the right direction, IMHO, since it is Microsoft’s implementation of the WS-Management Protocol. The downside is that I had to install the WinRM package on the servers, but well, its a nice trade-off for getting a SOAP-based, standard management product.
  • One thing I really like about it is the Powershell integration. It is finally included in this version of SCVMM, and the implementation rocks – at the end of most wizard, you get a button that says “View Powershell Script”:
    Pressing that button shows you the Powershell script equivalent to the options you selected:

So far I’ve only been able to add hosts and manage the virtual machines on those hosts. I am looking forward to working with the new advanced features, including (and especially) the physical to virtual migration. Overall I think the new features are great, and you should give it a try.

WinPE 2.0: Lessons on capturing images

25. April 2007 15:33 by Jaguilar in General  //  Tags:   //   Comments (0)

This past two weeks I have been working on a deployment that involves technologies like PXE, WinPE, Windows Deployment Services, the Windows Automated Installation Kit, and others. I was stuck for a while with WinPE, having issues when trying to capture a Windows image using the WDS Capture disk.

Most of the issues I had were driver-related. When I started, neither the network nor the hard drive of the machine (SATA drivers!! argh!!) were available to WinPE.

So, I did the following:

  1. Get the storage drivers from Intel’s website. You can download them from here. Make sure you download the Vista version of the drivers.
  2. Unpack them on a temporary directory. In my case I ran:
             iata621_enu.exe -A -PF:\intel
  3. Mount the Capture WinPE 2.0 wim image (generated through the WDS console) to a directory:
             imagex /mountrw d:\temp\capture.wim 1 d:\temp\wpe
  4. Copy the file C:\Program Files\Windows AIK\Tools\x86\imagex.exe to d:\temp\wpe or where you mounted the wim image).
  5. Now, add the drivers to the WinPE image with the following command:
             peimg PF:\intel\*.inf d:\temp\wpe\Windows
  6. Unmount the WinPE wim image:
             imagex /unmount /commit d:\temp\wpe
  7. Add the WIM image to WDS. On the console, select Windows Deployment Services->Servers->->Boot Images->(Right Click)->Add Boot Image, and browse to the WIM you just unmounted
  8. Boot the target machine using PXE and make sure it loads the correct WIM image
  9. Ok, so here is where I had issues:
    • First, the WDS Image Capture Wizard didn't list the SATA drives. Turns out the driver loaded correctly, but for some reason it couldn't see the drive.
    • If you run into an issue where the driver won't load, try using the drvload command from the WinPE command prompt..
  10. Because of those issues, I had to fall back to the command line. To do this, press Shift-F10 in the Capture Wizard, and that will open a command prompt.
  11. Once in the command prompt, create the image using imagex:
             imagex /capture c: c:\myimage.wim "My Image" /compress maximum
  12. With the image created, map a network drive on the server, and copy it back:
             net use i: \\\share * /user:
  13. Copy the image back to the server (I: drive)
  14. Turn the machine off.
  15. Enjoy your newly captured image!!!!

System Center Virtual Machine Manager Beta 2 is out

25. April 2007 06:21 by Jaguilar in General  //  Tags:   //   Comments (0)

Today Microsoft released the Beta 2 of Carmine System Center Virtual Machine Manager. This Beta 2 release adds long-awaited functionality, like P2V and V2V migration, among others. From the release notes:

  • Completely new look-and-feel (same as System Center Operations Manager 2007, Service Desk and System Center Essentials)
  • Physical-to-Virtual (P2V) Conversions
  • Virtual-to-Virtual (V2V) Conversions
  • 64-bit VMM server support
  • EveryVMM component is now remotely installable
  • Full Windows PowerShell support
  • Better overall performance and scalability
  • Every feature from Beta 1 with more functionality and enhancements

I am currently downloading it, and will post back once I get a chance to play with it a little bit. One of the features that I’m dying to try out is the Powershell support – as powerful as vbscript is, I’m not particularly fond of it, and replacing its use on yet another MS product is another step in the right direction.

You can download Beta 2 from Remember you have to register first!

Ok, there's one more... another Virtualization Lab scheduled!

24. April 2007 07:45 by Jaguilar in General  //  Tags:   //   Comments (0)
Last week it seemed that the Paris and Zaragoza events were going to be the last ones in the Virtualization for Developers lab series. Well, due to popular demand, there's a new lab scheduled for Singapore, on May 16-18. Click the link to sign up, or check out the series at the Virtualization for Developers Lab Series homepage.

Sign up for the last Virtualization for Developers Labs!!

20. April 2007 05:51 by Jaguilar in General  //  Tags:   //   Comments (0)

In a couple of weeks we’ll have the last of the scheduled Virtualization for Developers Labs. The two labs will take place on the same week – one in Zaragoza, Spain, on May 8–10, and the other one in Paris, France on May 9–11.

If you are interested in Virtual Server, the upcoming Windows Server Virtualization, or Virtualization in general, I suggest you check them out. So far we’ve had some great reviews of the labs, and it is a great opportunity to get hands-on training with Virtual Server and its APIs.


Spring Cleaning or How to Optimize the Performance of Your PC Using a Free Tool

20. April 2007 04:53 by Jaguilar in General  //  Tags:   //   Comments (0)

Ever since we saw this post over at the Virtual PC Guy’s Weblog, we have been using Dave Whitney's Free Defragmenter on our virtual machines’ dynamic VHDs to improve the compaction process. The results so far have been great – we have managed to shrink dynamic VHD files to levels far beyond what we could with the standard Windows Disk Defragmenter.

This week I decided to do a little spring cleaning on my work laptop. I installed Windows on it around 2 years ago, and have been installing/uninstalling tons of software ever since. The machine, predictably, had become painfully slow.

Yesterday I managed to remove about 3.5GB of old software and files, leaving the hard drive horribly fragmented. So I decided to leave the Whitney’s defrag tool running overnight… today in the morning I am surprised on how responsive it is! Outlook now takes a few seconds to startup (with a multi-GB pst file), compared to over a minute yesterday. And I can’t believe how quickly the Windows Live Messenger and Visual Studio .NET 2005 started up. I was so surprised, I even decided to write about it here!

HOT TIP: I also recommend an utility called CCleaner to help you optimize your system. It removes all sorts of temporary files and safely cleans up the Registry. I my laptop it freed up around 750MB!

Virtual Server 2005 R2 SP1 RC

19. April 2007 09:08 by Jaguilar in General  //  Tags:   //   Comments (0)

You can now download the Release Candidate for Virtual Server 2005 R2 SP1 from Remember that you need to be registered in the beta program to be able to download the files.

This release contains bug fixes from Beta 2 – other than that, it doesn’t have any additional functionality.

Resize VHDs

13. March 2007 07:39 by Jaguilar in General  //  Tags:   //   Comments (0)

I just saw over at the Virtual PC Guy’s Blog that a new tool is available that allows you resize existing VHDs. You can check it out at the vmToolkit website.

According to the announcement, with this tool, you can resize VHDs (both increase and decrease their size), and can also be used to convert between Fixed and Dynamic disks.

Virtualization's downsides and how to minimize them/overcome them

9. March 2007 09:01 by Jaguilar in General  //  Tags:   //   Comments (0)

Today I saw an article over at ComputerWorld that talks about Virtualization's downsides. It brings out some interesting points, but I think you can easily overcome them. Here are my comments on some of the points they criticize.
(Since I am more familiar with Virtual Server than with competing products, I will concentrate on Virtual Server’s features)

  • Increased uptime requirements: This is something that has been on my mind since I started working with Virtual Server. Recently I had the change to setup a Virtual Server host cluster, and I think that is the way to go to minimize this concern. With Windows’ clustering capabilities, you can take out a node in the cluster, and another node will continue running the virtual machines. The virtual machines will only be unavailable for a few seconds while the resource group changes from one node to the other.
  • Bandwith problems: One of the recommended scenarios for running Virtual Server is to remove everything from a NIC on the host server except for the virtualization driver. You can extend this recommendation, and use several NICs on the host, each NIC associated with just one VM. Still, if you have something like a very high-traffic website, you’ll probably be better of running it on a physical server instead.
  • Cost accounting - license compliance: Microsoft has released new licenses for their server products that make them virtualization-friendly. You can review it here, and see how many licenses you need for your planned configuration. Licenses for other application may be messy, though.
  • Vendor support: This is something that the industry will have to sort out. Something similar happened with the move to multi-core systems. Some vendors treated dual-core CPUs as two processors (thus requiring two licenses), while other adapted a “per-socket” approach. Other even adapted even stranger policies (dual-core = 1.75 licenses ???). Again, the market will have to adapt to the new virtualization paradigm.
  • Management Complexity: Managing virtual machines as opposed to physical machines is definitely more complex – you basically have to perform all the management tasks that you normally do for physical boxes, PLUS the overhead of managing virtual machines. Management tools are still in their infancy, but with the eventual release of CarmineSystem Center Virtual Machine Manager plus a fully WMI-based API, the management effort should be reduced significantly.

Then again, there are some workloads that don’t work well when virtualized. Database servers are a classical example of this – IMHO it is a better idea  to have one large database server and hosts several database in that SQL Server instance (for example), than to have several virtual machines each one with a separate SQL Server instance hosting different databases.

Virtualization Events in Europe

1. March 2007 05:20 by Jaguilar in General  //  Tags:   //   Comments (0)

In a couple of weeks we will be teaching two Virtualization for Developer Labs in Europe. The first one will be in Munich, on March 13–15, and the second one will be the following week in Reading, on March 20–23.

In this labs we show you in great detail how to leverage Virtual Server’s COM API and WMI methods in you own management applications. You will also learn how to create scripts to automate the management of Virtual Server installations, and you’ll also get to use the betas for the System Center Virtual Machine Manager.

For more information, don’t forget to check out the Virtualizacion Events website.

HP Developer Workshops - Long Beach, CA

1. March 2007 04:58 by Jaguilar in General  //  Tags:   //   Comments (0)

The first HP Integrity Developer Workshop for 2007 is coming up in a couple of weeks. It will be held in Long Beach, CA, on March 13-15.

In this workshop you get 3 days of training in your OS of choice (HP/UX, OpenVMS, Linux or Windows), plus an HP Integrity rx2620 server with the new dual core “Montecito” Itanium chip. It is an excellent deal, so make sure to check out the Workshop overview and the agenda (PDF link) and reserve a space today!

Virtual Machine Additions for Linux download link

22. February 2007 04:26 by Jaguilar in General  //  Tags:   //   Comments (0)

For some reason, several people have told me that they are not getting the link to download the Virtual Machine Additions for Linux on Microsoft Connect anymore. If that happens to you, try the direct link: . You will still need to enter your Passport Live ID in order to access the Connect website, but that link should take you directly to the Linux Additions page.

Virtual PC 2007 FINAL is out!

19. February 2007 08:36 by Jaguilar in General  //  Tags:   //   Comments (0)

Today Microsoft released the final version of Virtual PC 2007. You can download it here. This version fully supports Vista, both as a Host and a Guest, supports AMD and Intel hardware virtualization, and also supports 64–bit Host operating systems.

You can get some more information at the Virtual PC Guy’s WebLog, or directly on the VPC 2007 homepage.

NTBackup and Acronis TrueImage Server VSS troubles

1. February 2007 14:40 by Jaguilar in General  //  Tags:   //   Comments (0)

Today I decided to test out the Volume Shadow Copy (VSS) support in Virtual Server 2005 R2. In theory, as I mentioned in an earlier post, with VSS, virtual server can create a consistent “snapshot” of a running virtual machine so other applications, such as backup clients, can use that snapshot without interrupting the virtual machine itself.

The only VSS-aware backup application I had installed was Windows’ very own NTBackup. So, I enabled VSS on the volumes, run NTBackup, and proceed to make a backup of my virtual machine. Everything started out OK, until NTBackup got stuck with the message “Waiting to retry shadow copy…”. Following my standard error-solving checklist, I checked the Event Viewer, and I found this message logged:

Volume Shadow Copy Service error: Error calling a routine on the Shadow Copy Provider {f5dbcc43-b847-494e-8083-f030501da611}. Routine details BeginPrepareSnapshot({f5dbcc43-b847-494e-8083-f030501da611},\\?\Volume{0cb1b616-8ea6-11db-88de-806e6f6e6963}\) [hr = 0x80070002].

We use Acronis imaging solution for deploying our server, and it turns out that Acronis’ VSS Provider has an issue with Microsoft’s VSS provider. Apparently the issue is well-known, and is documented in two forums posts. It is solved in the latest version of Acronis’ products, but I didn’t really had time to perform an upgrade (and Acronis’ products are notoriously stubborn when you try to uninstall them). So, I applied the solution suggested in one of the forum posts. I unregistered Acronis’ VSS provider using the command:

regsvr32 /u \windows\system32\snapapivss.dll

After that, the backup went without problems:


Opening up the log once the backup is complete shows you that all files from the virtual machine were backed up succesfully:


 This was done without turning the virtual machine off, taking advantage of the VSS functionality in Virtual Server 2005 R2 SP1 Beta. I performed the same operation on a Windows XP box, disabling NTBackup’s VSS support, and the backup predictably failed.

Here’s some information on VSS: Volume Shadow Copy Service (VSS)

Evaluation version of Windows 2003

31. January 2007 10:17 by Jaguilar in General  //  Tags: ,   //   Comments (0)

All of you are probably aware that you can download MSDN Pre-Configured Virtual Machine Images and of configurations you can get with the VHD Test Drive. There is another option, though, if you want to evaluate a Windows 2003 R2 installation by itself on a virtual machine or as a host for Virtual Server 2005 R2. You can get a 180–day evaluation of Windows 2003 Server R2 at the trial software page over at Microsoft. This makes it easier to evaluate the performance of the server product, for virtualization, or for any other tasks that you may be considering it.

Link: Windows Server 2003 R2: How to Get Trial Software

Installing Virtual Machine Additions on a Linux Guest

24. January 2007 06:40 by Jaguilar in General  //  Tags:   //   Comments (0)

The first step is to download the actual VM Additions. You can read more about the Linux VM Additions here. To download the additions, you need to log into Microsoft Connect, and the look in the available programs for the Virtual Machine Additions for Linux. Once you download and install the file VMAdditionsForLinux32Bit.MSI, you will have an additional ISO file under C:\Program Files\Microsoft Virtual Server\Virtual Machine Additions\, called VMAdditionsForLinux.iso. This ISO file will appear on the Known image files on the virtual machine’s CD/DVD Drive properties:


Once you mount the ISO, installing the additions is straightforward. You only need to change the directory to the CD-ROM drive from a terminal (in this case, /media/cdrom), and run the script This script takes several parameters, depending on what part of the additions you wish to install. You can, for example, only install the SCSI driver, or the X11 driver, or any other component. I installed all of them using the command line ./ all:


You can also install the additions using the RPM packages, if your distro supports it. Once the additions were installed, the VM worked like a charm. The mouse integration works perfectly, and the performance increase is noticeable.

Moving a VMDK with Linux installed to a VHD

23. January 2007 09:44 by Jaguilar in General  //  Tags: ,   //   Comments (0)

As suggested in this post by Christian, I went ahead and downloaded the vmdk2vhd utility to convert virtual hard drives from VMWare’s VMDK format to Microsoft’s VHD format. To test it out, I also downloaded Red Hat Enterprise Linux trial virtual appliance from VMWare’s site, and ran the converter on it. These are my results.

First, running the converter is pretty straightforward. You just launch the utility, and it presents you with a simple UI, where you select the vmdk you want to convert, and the path to the destination VHD.


Once you select the vmdk and the vhd, press the convert button to start the conversion process:


The tool shows you a dialog box when it completes the conversion:

I created a new virtual machine in Virtual Server 2005 R2 SP1 Beta 2 using this newly converted VHD,  and, not knowing what to expect, I started it. The redhat OS started the boot up process normally:


After making some adjustments to the configuration, including the X Server configuration, I finally got the X Windows server to come up. I am currently playing with the OS, and will proceed to install the VM Additions … I will document the process in another post soon.


As you can see, the process for converting a VMWare virtual hard disk to a Virtual Server VHd is very straightforward. This will work, ideally, in a migration scenario, but this also enables a scenario to try out the large amount of Virtual Appliances that you can download from VMWare’s website.

Getting started with Powershell

4. January 2007 12:39 by Jaguilar in General  //  Tags:   //   Comments (0)

This week I finally manage to sit down and start using the 1.0 release of PowerShell. So far I’m impressed with its capabilities and ease of use. Here are a couple of tips to get you started with PowerShell scripting:

The commands in PowerShell follow the format verb-noun. It is very easy to “guess” a command once you’ve been using PS for a little while. To get the processes on the system, for example, you use the command get-process. To get the contents of a file you use get-contents -path . An so on.

So, guess what command is used to get help? Too easy, isn’t it? get-help is your greatest ally when working with PowerShell. If you are unsure of what a command does or how it works, you just need to invoke the get-help command, followed by the name of the command:

 PS C:\> get-help get-process


    Gets the processes that are running on the local computer.

Also, get-help supports wildcards, so you can use it to search for commands (in case you’re not 100% positive on the exact command name). So, for example, you can do a:

PS C:\> get-help get-*

Name                                 Category                                Synopsis
----                                    --------                                --------
Get-Command                    Cmdlet                                  Gets basic information about cmdlets...
Get-Help                             Cmdlet                                  Displays information about Windows P...
Get-History                         Cmdlet                                  Gets a list of the commands entered ...

Script Security
PowerShell scripts have the extension *.ps1. To execute scripts, you need to do two things:

  1. Enable script execution. This is achieved with the command Set-ExecutionPolicy. To learn more about this command, you can type:
  2. PS C:\> get-help set-executionPolicy

  3. Enter the path to the script. If it is in the local directory, enter .\.ps1. If not, enter the fully qualified path.

Scripting in PowerShell is very easy – the syntax is very C#-like, and it has the power of both the .NET Framework AND COM objects at your disposal.

Use .NET Data Types
PowerShell is built on top of the .NET Framework. Because of that, you can use .NET Data Types freely in your scripts and in the command prompt. You can do things like:

PS C:\> $date = new-object -typeName System.DateTime
PS C:\> $date.get_Date()

Monday, January 01, 0001 12:00:00 AM

Further help
Some great places to get you started with Powershell are:

Windows PowerShell Team blog
Technet’s PowerShell Scripting Center
Just PowerShell it
PowerShell For Fun

Don’t forget to get the Windows PowerShell Help Tool, for free, from Sapien’s website.

Virtual PC 2007 Release Candidate

3. January 2007 04:13 by Jaguilar in General  //  Tags:   //   Comments (0)

Virtual PC 2007 has moved to the Release Candidate stage. You can download it from here.

You can also check out the new features of this release on the Virtual PC Guy's WebLog .

Virtualization Overview

2. January 2007 09:20 by Jaguilar in General  //  Tags:   //   Comments (0)

Over at IBM developerworks there is an overview of virtualization technologies, starting with the history of virtualization, virtualization methods, and some more information on the current status of virtualization in the IT industry. The article focuses on Linux Virtualization solutions, but the information it contains and the background it gives is worth a read.

Link: Virtual Linux.