Virtual PC Guy's Blog

-- Ben Armstrong, Hyper-V Program Manager

Talking about Virtual PC and Hyper-V at Microsoft

  • Virtual PC Guy's Blog

    Windows Virtual PC Hotfix for AMD Bulldozer Processors

    • 7 Comments


    We have just published a hotfix for Windows Virtual PC that addresses a compatibility problem when trying to install on an AMD Bulldozer system.

    You can download it here: http://support.microsoft.com/kb/2519949

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Hotfix: Guest may crash during live migration

    • 1 Comments


    We released a new hotfix for Hyper-V today.

    This hotfix addresses an issue where virtual machines may crash (with a STOP 0x000000D1, DRIVER_IRQL_NOT_LESS_OR_EQUAL error) when it is being live migrated.  While this problem is relatively hard to encounter – I would encourage anyone who is using live migration to plan to deploy this hotfix in the near future, as you do not want to hit this accidentally.

    You can download this fix directly from here: http://support.microsoft.com/kb/2636573

    Alternatively, it is also being distributed through Windows Update.  Unfortunately it is only available as an optional update though – so you will need to explicitly select to install it on your servers. 

    Either way, this hotfix does require that you reboot the physical server so you will need to plan the deployment of the fix appropriately for your environment.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Converting to a fixed virtual hard disk–for a Server core installation

    • 1 Comments


    My last challenge for getting all of my server virtual machines over to fixed-size virtual hard disks is moving some of my Windows Server 2008 R2 virtual machines.  As a reminder, the goal here is to move a virtual machine on a large dynamically expanding virtual hard disk to a smaller fixed-size virtual hard disk. I have used the same technique as I discussed here – but for obvious reasons the process is quite different, as I cannot use any of the GUI tools.  Here is the process I followed:

     

    1. Login to the virtual machine using an administrative account
    2. Run diskpart
    3. Check your disks with list disk
    4. Select the disk you want to shrink (disk 0 in my case – so select disk 0)
    5. Check your partitions with list partition
    6. Select the partition you want to shrink (partition 4 in my case – so select partition 3)
    7. Check how much space you can save with shrink querymax
    8. Shrink the partition to your desired size (in my case - shrink desired=70000 – note that the value here is how much you are shrinking the partition by, not the new size of the partition)
    9. Check that you are happy with the new size with list partition
    10. Exit diskpart with quit
      image
    11. Once you have shrunk the partition(s) use Windows Server Backup inside the virtual machine (if you have not installed this – you can do so by running start /w ocsetup WindowsServerBackup – don’t worry, this does not take up much space and does not require a reboot to install)
    12. Run a full backup on a Remote shared folder and provide a file share to use for storing the back
      1. I have a share setup on my parent partition for backing up virtual machines to when I am doing this
      2. The command that I used for this is: wbadmin start backup -backupTarget:\\Hyper-V\Backups –allCritical –include:d: –VSSfull
        image
    13. While the backup is going you can actually jump to the next step.  Creating a new fixed virtual hard disk
    14. Open the New Virtual Hard Disk Wizard
    15. Choose to create a new fixed size virtual hard disk that is the right size for your smaller partitions
    16. Once the backup is complete, and the fixed virtual hard disk is created, shutdown the virtual machine
    17. Open the virtual machine settings and replace the dynamic virtual hard disks with the new fixed size virtual hard disks
    18. Boot the virtual machine using a Windows Server 2008 R2 installation DVD
    19. After choosing your language, choose Repair your computer (instead of clicking on Install now)    
    20. Then select Restore your computer using a system image that you created earlier and click Next
    21. Click Cancel on the warning that comes up, and then click Next followed by Advanced…
    22. Select Search for a system image on the network, followed by clicking Yes
    23. When prompted – enter the network path that you used to create the backup and click OK
    24. Select your backup from the table and click Next
    25. Select the disks you want to restore and click Next, Next, Finish and Yes
    26. The virtual machine will reboot automatically once the backup is restored

    Once this is all complete, and once you have confirmed that the virtual machine is working properly, you can delete the dynamically expanding disk and the backup.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Converting to a fixed virtual hard disk–the hard way

    • 6 Comments


    Yesterday I showed you how to easily convert a dynamically expanding virtual hard disk to a fixed size virtual hard disk.  But, how do you do this if you want to keep your fixed size virtual hard disk as small as possible?  Well, here is the process that I use for my Windows Server 2008 R2 virtual machines:

     

    1. Login to the virtual machine using an administrative account
    2. Open Server Manager and select the Disk Management node under the Storage node.
    3. Right click on the partition that you want to shrink and select Shrink
    4. Select how much you want to shrink the partition by
      1. In my case I want to shrink a 250GB partition to 70GB:
        image
    5. Once you have shrunk the partition(s) open Windows Server Backup inside the virtual machine (if you have not installed this – you can do so by choosing to Add Features from Server Manager – don’t worry, this does not take up much space and does not require a reboot to install)
    6. In Windows Server Backup select Backup Once…
    7. This will open the Backup Once Wizard.  There is only one choice on the first page.  On the second page choose Full server
    8. Then select to store the backup on a Remote shared folder and provide a file share to use for storing the back
      1. I have a share setup on my parent partition for backing up virtual machines to when I am doing this
    9. Complete the wizard and wait for the backup to complete:
      image
    10. While the backup is going you can actually jump to the next step.  Creating a new fixed virtual hard disk
    11. Open the New Virtual Hard Disk Wizard
    12. Choose to create a new fixed size virtual hard disk that is the right size for your smaller partitions
      1. Here I am making a 70GB virtual hard disk for my WDS server:
        image
    13. Once the backup is complete, and the fixed virtual hard disk is created, shutdown the virtual machine
    14. Open the virtual machine settings and replace the dynamic virtual hard disks with the new fixed size virtual hard disks
    15. Boot the virtual machine using a Windows Server 2008 R2 installation DVD
    16. After choosing your language, choose Repair your computer (instead of clicking on Install now)     
    17. Then select Restore your computer using a system image that you created earlier and click Next
    18. Click Cancel on the warning that comes up, and then click Next followed by Advanced…
    19. Select Search for a system image on the network, followed by clicking Yes
    20. When prompted – enter the network path that you used to create the backup and click OK
    21. Select your backup from the table and click Next
    22. Select the disks you want to restore and click Next, Next, Finish and Yes
    23. The virtual machine will reboot automatically once the backup is restored

    Once this is all complete, and once you have confirmed that the virtual machine is working properly, you can delete the dynamically expanding disk and the backup.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Converting to a fixed virtual hard disk–the easy way

    • 1 Comments


    As I discussed yesterday – I have been working on converting my virtual machines from dynamic virtual hard disks to fixed virtual hard disks.  There are a couple of ways that you can do this.  The easiest way is to just convert the disks using Hyper-V.  To do this you need to:

    1. Shutdown the virtual machine (do not put it into a saved state)
    2. Open the virtual machine settings and select the virtual hard disks one at a time
    3. Click the Edit button on the settings page:
      image
    4. This will open the edit virtual hard disk wizard with the selected virtual hard disk.  Choose the Convert option:
      image
    5. Next, enter a file name for the new fixed virtual hard disk:
      image
    6. Wait for the virtual hard disk to be converted (this will take a while)
    7. Change the virtual machine settings to point to the new, fixed, virtual hard disk
    8. Boot the virtual machine
    9. Once you have confirmed that everything is working properly, delete the old dynamic virtual hard disks

    While this process is fairly easy to follow – it has one big drawback.  The fixed virtual hard disk will take up the maximum space of the dynamically expanding virtual hard disk.  For some of my virtual machines I had created small dynamically virtual hard disks, so this worked well.  But for some of them I had created foolishly large dynamically expanding virtual hard disks.

    Tomorrow I will document the process that I used for these virtual machines.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Time for some server maintenance

    • 3 Comments


    I have had a couple of days off for Christmas, and once the children were happily playing with their new presents, my mind naturally turned to some outstanding server maintenance that I needed to do.

    Top of my list was completing the process of switching all of my servers over to fixed virtual hard disks.

    There are two reasons why you should use fixed virtual hard disks in production environments:

    1. Performance.
    2. Avoiding oversubscription of disk space.

    Given that my servers are only used by me and my family – performance is not a big concern.  And for a long time now I have been using dynamically expanding virtual hard disks for all my server virtual machines.  But recently I had a big problem.  One of my virtual machines started chewing up huge amounts of space.  The result was that my Hyper-V server ran out of space and paused all of my virtual machines (to stop any of them from crashing).  When this happened I did some emergency space management, but left most of the virtual machines still using dynamic virtual hard disks.

    Converting a virtual machine from a dynamic virtual hard disk to a fixed virtual hard disk can be quite tricky.  So this week I am going to blog about some of the tips-and-tricks that I have picked up in the process of switching over to fixed virtual hard disks.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Using “built in” applications with Windows XP mode

    • 2 Comments


    Last week I was asked, on Twitter, if it was possible to publish a built in application (like Internet Backgammon) from Windows XP mode.  The answer is: Yes, but it is a little tricky.

    Most people use Windows XP mode to run specific applications that they have that will not run under Windows 7.  These people do not want to have their start menus cluttered with all the applications that populate the Windows XP menu – they just want to access their applications.  For this reason, we block publishing of all of the built in applications in Windows XP – but you can unblock them.

    To test this out – I published Internet Backgammon on one of my systems.  The process that you need to follow is this:

    1. Figure out the path and name of the executable that you want to publish.  In my case this was “bckgzm.exe” in “C:\Program Files\MSN Gaming Zone\Windows”:
      image
    2. Then you need to open RegEdit and go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtual Machine\VPCVAppExcludeList
    3. Search the entries here and you should find a string value with a name of the executable (“bckgzm.exe” in my case) and a data value of the path.  Delete this key.
    4. Reboot the virtual machine.

    After doing this – the application will appear in the Windows 7 start menu:

    image

    And you can run it as an integrated application:

    Capture2

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Why you should be using BitLocker on your servers

    • 12 Comments


    In Windows Vista we introduced “BitLocker” to Windows – a native full disk encryption technology for Windows.  Most people immediately saw the potential for BitLocker on laptops.  Encrypting your laptop meant that if you were ever unfortunate enough to lose your laptop (through theft or forgetfulness) you would not have to worry about someone else getting access to your data.

    But today I would like to explain to you why you want to use BitLocker on your servers too.  All of your servers.

    Recently, I had a hard disk fail in one of my servers.  This happens from time to time, and thanks to RAID it was not a big deal.  I just bought a new drive, popped out the old drive, put in the new one, rebuilt the array and I was off and running.

    But now I have a problem: what do I do with the old drive?

    It’s broken.  So broken that it is hard to delete the data that is on there – but there is data on there none the less.  And despite how unlikely it is that anyone will ever look at it – I am not entirely comfortable with just dropping it in the trash.  Personally, I have had the experience of connecting a broken drive that had been sitting on the shelf for a couple of months and finding that it would work for a couple of hours before failing again.  It is plausible to imagine that someone might find my old drive and hook it up just to see if it worked.

    So how do I get rid of that data?

    Drives these days are quite hard to destroy.  I have tried to pull them apart manually, I have hit them with a hammer, I have even driven a car over one.  They are surprisingly rugged.  You could sit magnets on them – but you won’t know how effective it has been.  Microwaving the drive should be quite good – but would probably damage the microwave as well.  Besides, there is a much simpler solution: use BitLocker.

    Once you have enabled BitLocker on a server – your data is now protected, even if the disk fails.  Especially when the disk fails.  With BitLocker on you can take that failed hard disk and drop it in the bin with no concern of anyone ever getting data off of it.

    Happy times.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Creating virtual hard disks–the slow way

    • 4 Comments


    Over the weekend I reconfigured one of my main servers.  As part of this process – I had to make some large fixed virtual hard disks (800-1600GB in size).  This took a long time…

    image

    I spent quite some a while looking at this screen…

    In the past I have talked about why this takes a long time and I have also talked about a tool that is available that can make fixed virtual hard disks quickly.  So you may be wondering why I would still create virtual hard disks the slow way.

    Well – there are two reasons:

    1. Support.  I know that all of our testing is done using virtual hard disks created by Hyper-V – not by any other tools.  This means that I can have high confidence in the fact that I am unlikely to have problems with these disks – and that if I do have any problems, we will fix them.
    2. Reliability. I like to know that every sector of the disk has been touched before I put it into production.  For the same reason, I always do a full (not quick) format of a disk before putting real workload on it.  I have personally had the experience of having a system where everything appeared to be fine – but creating a 200GB fixed virtual hard disk (the slow way) would cause the system to crash; which in turn revealed that there was a bug in the disk driver I was using.

    In my opinion – when it comes to production systems, sometimes it is just worth taking the time to do things properly.

    Cheers,
    Ben

  • Virtual PC Guy's Blog

    Testing data protection with virtual machines

    • 1 Comments


    Hopefully what I am about to say is not news to you – but it is worth saying: data protection systems that have not been tested are useless.  Whether you are backing up computers, using RAID or replicating data – the first thing you need to do once you have everything setup is to test that you are actually getting the data protection you think you are getting, and that you can actually recover from a problem.

    Too often, people setup data protection systems and believe everything is fine – until they need to recover lost data.  Then they discover that:

    1. They have been protecting the wrong data / not protecting the right data
    2. They do not know how to recover the data, and in the worst case scenario they make a mistake during the recovery process that results in the loss of data that was saved.

    So for this reason – I always test my data protection systems.  To make sure that they are working, and that I actually know how to use them.

    Ordinarily – I use a combination of Windows backup and hardware RAID1 in my home environment.  I know my hardware RAID systems like the back of my hand – and have frequently tested my backups by restoring them into a handy virtual machine (just to confirm that everything is still working).  However, recently I bought some new hard disks that did not approve of my older RAID controller.  After some thought and investigation – I decided that the easiest (and cheapest) solution would be to setup a software mirror using Windows.

    The problem with this is that it has been a long time since I used software mirroring in Windows.  “Dynamic versus basic disks”, “foreign disks”, “pack IDs” are all terms that I could remember – and I could remember that it could be a little tricky.  I needed more confidence than that to trust my data to this.

    Virtual machines to the rescue!

    It took me about an hour to:

    1. Setup a blank virtual machine
    2. Create a two disk mirror and copy some data onto it
    3. Simulate losing and replacing a disk, and then rebuilding the mirror
    4. Simulate rebuilding the system disk and reconnecting the mirror
    5. Simulate plugging one of the mirror disks into a separate system and recovering data

    image

    All of this went well – and I was soon setting up my software mirror on hardware, with complete confidence in what I was doing.

    Cheers,
    Ben

Page 1 of 110 (1,092 items) 12345»