Archive for the ‘vm’ Category


 Virtual Machines Have Prevented Disasters More than Once

Let me tell you about the latest situation where I look like a hero instead of a fool.  How can you not love someone who does that for you?

I have a client who is still on SBS 2011 for a variety of reasons.  Let’s sum them up by saying it is unlikely to change for a while.

A few years back, I suggested making SBS a virtual machine and running on a Hyper-v host.  The OS for the host was Windows Server 2008 R2.  Earlier this year, both of the USB drives they were using for Windows Backup (one for the host, one for SBS) had to be replaced.  The new drives were formatted NTFS with 4096 byte sectors.  If you don’t know already, Windows Backup in 2008 R2 and earlier can’t create a backup on these targets.  So for a while, the system has been running without backups.

Why not Just Upgrade?

Duh, why didn’t I think of that?  I did, but an inplace upgrade to 2012 R2 kept failing.  Finally, we located a 2012 Standard .iso and license for sale and grabbed that.  The in place upgrade went well, very well.  Much to our chagrin, the product key would not activate even though it was valid, and the client got his money back.  But there we were with an OS that was about to die from lack of activation.

So I tried the upgrade from 2012 to 2012 R2, and it succeeded.  Problem solved, right?

You Probably Picked the Wrong Answer

When it finally rebooted after the upgrade, a colorful blue screen appeared with the message

MUI_NO_VALID_LANGUAGE

The scarce number of articles I found relating to this indicated that it was an invalid product key (I knew that) and re-installing would fix it.  So in goes the DVD and we boot from it.  Enter the correct 2012 R2 product key, select upgrade, and we are instructed to remove the disk and reboot.  When we do the same nasty error above appears.

So I Said…

Let’s just forget about the host system and create a new one.  I didn’t format any disks, just let the installation go.  It completed fine, booted into 2012 R2, and I added the Hyper-v role, reset the static IP address, and got down to setting up a new virtual machine.

I pointed to the existing .vhd for SBS and the virtual disks for Exchange, SharePoint, and data that were on physical drives on the host and attached them through ISCSI controllers, started the virtual machine and bingo!  There is was.  Almost.

I Nearly Cried when It First Started

Active directory showed NO users, NO joined computers, and SBS Console said the OS was not operative.  While I played around for a bit, then looked again after about 5-10 minutes, AD values were back!!  But there was no Internet connection and nothing looked right on the SBS Console network tab.

First I ran Connect to the Internet, and that restored the connection.  Then I ran Fix my network, and suddenly there was the trusted certificate and all the other goodies.  It has been running like a champ ever since.

One Last Thing

The 4096 sector drive for SBS still doesn’t work, so I am trying a WD drive that emulates 512 sectors,  I am going to create another post about this, although there is a lot of information on this topic out there already.

So, to sum it up, your Hyper-v host machine is disposable.  You can trash it and provided you don’t lose the date, you can reconstruct your workhorse servers.  I highly recommend this approach.

Even better, use an iSCSI device (like QNAP, which I love as well) and keep all your virtual information on the drives apart from your computer.  That means the entire platform is disposable.

Advertisements

The Scenario

I needed a Windows 7 OS to run an older version of an application on 32-bit, but I had converted my system to Windows 8 64-bit.  Since I had plenty of memory, I decided to run Windows 7 32-bit as a virtual machine using Hyper-v in Windows 8.  Since it is just like Hyper-v in Windows Server 2012, this was effortless.  I created the machine, installed Windows 7 32-bit on it, installed Office (needed for the app) and the app itself.

All was pretty heavenly, just clicked on the taskbar icon for the VM, and the app was at my fingertips.

Then something went wrong.  The data files could not be located on a network share.  It wasn’t the share but the whacky behavior of the network adapter on the virtual machine.  It could get a DHCP address from the server (release and renew worked), but it was otherwise isolated.  Kaput.  Couldn’t get to a thing.

First Attempt to Remedy

My thought was that the network adapter attached to the VM was faulty.  I could ping, but I either got destination not reachable or request timed out, often a mix of the two.  So I shut down the machine, went to settings, removed the network adapter and tried to add another one.  No luck.  It kept giving me a failure that it couldn’t add anything in the machine’s current state.

Tried to Create a New Virtual Machine

This seemed to indicate a problem with the instance of the virtual machine, and if I couldn’t remove devices, maybe I could use the existing .vhdx in a new machine.  I also decided to be clever and store it on a network share that was being backed up by Windows Server Backup.  Well, not so clever.  It wouldn’t allow me to stash the virtual machine there nor allow me to use the .vhdx copy I had placed there.  So back to storing om local drives.

But creating the virtual machine kept failing with an error that contained

“The requested operation cannot be performed on a file with user-mapped section open”

What the heck was that?  After some snooping, I realized it might be a permissions or blocking error.  Eliminating permissions, I decided to try and eliminate blocking. I had Trend Micro Worry Free Advanced running on the domain server, with an agent on this desktop, so I disabled it.

Sure enough, creating the virtual machine using the old .vhdx from the failed machine worked. And when it started, all was well with the network.

What I Learned

  1. You can re-use a virtual disk from an old virtual machine on a new virtual machine.
  2. Anti-virus software can block virtual machine creation and maybe ongoing operation.
  3. I needed material for a new post.

I hope this helps some of you expand your virtual Hype4r-v horizons.  It is a great tool.


yes, Virginia, there is a Santa Claus who can help you convert your physical SBS server to a virtual machine to run under Hyper-v.  But dear, they don’t tell you nearly enough, so pay careful attention to this.  Especially if you want to user the same server box to be your new Hyper-v host machine.

Preliminary Work

The assumption is that you have SBS installed on a physical machine.  You would like to use that physical machine as a Hyper-v host.  How can you convert SBS to a virtual machine?  And what does it take to host Hyper-v on that box?

If your SBS is 2008 or 2011, you needn’t worry about whether the server can support 64-bit because both of those are 65-bit operating systems.  If, however, your starting point is SBS 2003, you need to verify that it can run a 64-bit OS.  If your server is from around the time when SBS 2003 was first released, I suggest you look at a new server to save yourself a lot of frustration, time and eventually money.  You can purchase a lovely box from Dell, HP and others for about $1500.  Then  you can do a migration to SBS 2011 between two physical boxes.  See my post about setting up SBS 2011 as a virtual machine and do the migration to it.

Once you are convinced your current server box will support the Hyper-v host os, check on how much memory you you have.  I would recommend16GM as the minimum necessary for a successful system and as much more as you can add past that to accommodate the number of virtual machines you plan on hosting.

I have a few virtual machines for SBS running between 8GB and 16GB and all give more than satisfactory performance.  They run along with 4-8 other virtual machines (other 2008 R2 servers, Windows 7, and XP operating systems). More memory is better of course  but you may find the marginnal benefit of 1GB more memory to not show up in the other vm performance .

Now you have determined a proper machine to host Hyper-v with sufficient memory.  It is my very strong suggestion that you now purchase new disks for the OS hosting environment. Why? Because if something goes wrong in the conversion, you don’t want to have clobbered your original system disks to be able to go back to a physical machine.  I know the cost and complexity of new system disks will vary from installation to installation, but disk prices have dropped so much that the cost of even a pair of 500GB (RAID 1 scenario) is under $100.  What is your time for recovery worth:?

The last thing you will need is a disk that can house the .vhd created on the physical installation to be copied to the new os environment for the virtual machine.  An external USB drive is perfect for this, but an internal hard disk that can remain mounted when you create the new hosting environment works well, too.

Cleaning Up the System

Before you convert to a .vhd, do as much cleanup on your SBS system as possible.  Not only will this make the conversion faster, it will make it easier.  And in some cases, it can mean the difference between success and failure.  The conversion utility will convert up to 127GB, so if you have too much data on your system disk, it may not convert at all.

Here are some suggestions:

  1. Move your Exchange data files to another hard disk.  As a rule. I never leave them on the system volume.
  2. Do the same with your SharePoint data files.  Same rule for moving it to another disk.
  3. Move any user profiles to another disk.
  4. If you have any data files that are shared, move them as well and update the share.
  5. Empty the recycle bin.
  6. Delete any temporary files.

In short, anything that is on your system disk that is not essential to the system either delete or move.  Note: if files are small, weigh the inconvenience of moving them against the conversion impact.  A few kilobytes won’t make a difference but a few gigabytes might.

Disk2vhd Utility

You will need this free and downloadable utility to convert your system disk to a .vhd file (click to download it).  It is straightforward to use and can work with a system that is online.  I will share with you some of the tricks I have picked up to make it easier for you.

Disk2vhd works by taking a snapshot of the files to be converted.  What you don’t want to happen is have those files updated while the conversion is running, possibly causing data consistency issues.  Exchange is a case in point, so before you start the conversion, stop Exchange services.  Do the same for SharePoint and any other applications that might be updating files as they run,

If you have been following closely about the preparations, you will have detected my overall approach:  isolate the system to the c: drive, convert it to a .vhd, bring up the new os and create a virtual machine from it, and have all of the data files remain on media that are mounted onto the host operating system.

With that in mind, when you run the conversion utility, you will be just converting the system disk.

disk2vhd

In the above example, I have isolated Exchange, SharePoint and user data and even have a separate drive to store the .vhd file.  (Remember, I am a big iSCSI fan and this is a piece of cake to do).

Much  more important, however, is to note that I have selected not only drive C: but the System Reserved area as well.  If you don’t select the System Reserved area, the resulting .vhd will not be recognized as bootable.  When you try to attach it as a virtual drive and start the machine, you will get the following messages:

disk error has occurred
Ctrl+alt+del to continue

But of course there is nothing to continue to.

Choose your destination for the .vhd, then click Create.  It can take thirty minutes to over an hour, so entertain yourself while it runs.

The Hyper-v Host

Now shut down the SBS system, remove the system disk(s), insert the new disk(s) for the host os, and install the os.  If you have a license for Windows 2008 R2, use it by all means.  If you don’t own or want to pay for a license, you can download Windows 2008 Hyper-v for free.  Be aware that it has only a limited interface and that you will need to do enable remote execution of Hyper-v manager on it to be effective.  Still, it is free.

Install the os and launch Hp yer-v manager.  Create a new virtual machine following the wizard.  But instead of creating a new .vhd, instead point to the .vhd you created with the disk2vhd utility.

Before you start the virtual machine, adjust the settings as follows by highlighting that vm and clicking on settings.

  1. Memory – use dynamic setting.
  2. Processor – use the number of virtual processors that match the host cpu.
  3. Network adapter – you can use the same adapter as the host machine or an additional one.
  4. iSCSI Controller – Use this to add disk drives attached to the host system.  For example, if you have USB drives (for backup, e.g.) connect them to the virtual machine.  Same for data drives.  Note – if you are using iSCSI targets, the virtual machine can connect directly to them without adding them as hardware.

Now start the virtual machine.  What you will discover is that it doesn’t start right up like you would think.  Instead, it appears to be “hung” without the desktop appearing.  This could take from five to thirty minutes.  What is happening is that SBS is adding new devices to the system as they have been attached through the virtual interface.  When that is complete, you will get a message that new hardware has been added and you should reboot.

After the reboot, check the network settings to make sure they are correct.  You may have to run fix my network or connect to the internet wizard from the SBS console.  Check to make sure all services are properly started and that Exchange connected to the databases.

Your virtual SBS is now complete and you can add other virtual machines as necessary.


I was pulling my hair out, wondering why the clock on client machines in a SBS 2011 domain were off about 5 minutes fast.  Surely the server time was the issue, and I kept resetting it only to see it go back to its five minutes fast setting again.  So I rolled up my sleeves, dug into all the command options of w332tm and registry settings, and they all looked fine.  My server was set to use time.windows.com.

Why didn’t this work?

I finally paid attention to the result of this command:

w32tm /query /status

I slapped my forehead and also did another command

w32tm /query /source to amplify the results I was looking for

Here is what I got

Since I had set the time server to time.windows.com, I was puzzled why that time server did not show up and what the heck was VM IC Time?  Almost instantly it hit me: the hyper-v SBS 2011machine was getting its time from the host, and my settings were not overriding that.

Sure enough, I looked at the host machine (not part of the domain) and it was not using an authoritative time server and was – gasp! – about 5 minutes fast.  A few simple things fixed it all.

On the Hyper-v Host

From either the control panel or time in systray, set the computer clock.  Click on the Internet Time tab and if it is not set to synchronize, click Change Settings…. In the dialogue box that appears, click the Synchronize box and leave the server as time.windows.com or change to another value.  Click update now button, then OK to close.  Click OK again.

On the SBS 2011 Server

Open a command prompt in elevated mode (run as administrator).  Enter this command

w32tm /resync

You should see the clock change to match the value on the hyper-v host machine.

On Client Machines

You will see the time change when the client machines follow the time synchronization schedule, but you can do it immediately if you want.  Use the procedure above for the SBS Server but on your client machines.

That’s it.

There’s Another Way……

This made me think, there’s gotta be another way to deal with this.  Sure enough, a bit of snooping led me to play with the hyper-v host settings, and here is a way to let your SBS 2011 hyper-v machine throw off the shackles of the host time server.

On the hyper-v management console, click on the SBS 2011 server and choose settings.  On the left hand pane under Management, click on Integrated Services and clear the check mark next to Time Synchronization then OK or Apply.  You can actually do this while the hyper-v machine is running.

Once you have done this, log onto the SBS 2011 server, run command prompt and type

w32tm /query /source

You should now see the source changed to time.windows.com or whatever other time server source you have configured.

Either method you choose will work, but I prefer the change in Integration Services to make your SBS server less dependent on its host.


Now that you have the basics of how to create a volume on an iSCSI target and mount it for use, let’s explore some reasons for doing so.

Server Storage

The simplest case I will present is a single SBS server.  There are several important data stores for SBS:

  • Exchange Server
  • SharePoint
  • Shared folders
  • LOB or other data that is used by SBS members

When you first install SBS, these are all going to be located on the OS drive.  Using the SBS console, you can migrate them to another drive location.  In the case of LOB data, which is set up independently, you no doubt can chose the drive on which to locate it.

You could start with disks installed on the server in a traditional fashion.  Maybe the drives are 500GB, 1TB, or larger drives.  Your Exchange requirements might be modest, say 15GB.  You estimate that SharePoint files are likely to grow to 20GB in the next six months to a year.  Shared folders might start at 20GB but could go up or down depending on what migrates to SharePoint, for example, and what other growth you anticipate.

You can use one drive for Exchange, one for SharePoint, one for shared folders, and one for LOB data.  But perhaps your server can’t accommodate that many drives.  And it certainly might not accommodate them as RAID 5 or 6 volumes and be independent of each other.  What are the choices?  Well, you could  use one physical disk, no RAID, and create several volumes and use different ones for different data types.  Or perhaps use several drives to create a RAID set and and allocate volumes on it.

Now that you have several volumes on your drive or drive array, sized to accommodate the data you anticipate, what happens if you start to run out of space?  If you have a partition management software tool, you could expand the size of the allocation if there is more free space on the drive(s), or shrink another partition if that were possible and then increase the size of the desired one.  Or, if you have the space available, create another larger partition and move the data to the new one.

Using iSCSI targets is similar to this approach but without the drawbacks and pitfalls of locally attached drives.  First, your storage platform is robust and will have RAID enabled drive support.  Since mountable drives are created from an available pool of space, you can start with the most reasonable size for each disk you need.  Later, you can, on the fly, create a new iSCSI target that is larger or smaller, move or migrate the data to it, disconnect the original target and then delete it.  It is far easier than partition management.

Don’t forget backups.  You can create an iSCSI target and mount it on the SBS server and then configure backups to this drive.  Need another destination?  Very simple.  You get the idea.

Virtual Machines

You probably know from reading some of my other posts I am a fan of virtual machines.  I like the idea of running SBS as a Hyper-v machine; the same box can support test machines, client machines used for remote access, special LOB servers, you name it.  In a virtual machine environment, iSCSI shines.

Start with the drive on which you store the .vhd files.  These can be on a locally attached or a iSCSI drive.  I use iSCSI because I can allocate a right-sized disk in a matter of minutes and have it available on the host server.  Once the virtual machine is created, I can allocate and attach additional iSCSI targets to meet the needs of that vm.

Consider that you might want to test some new software or application, such as a web site, SharePoint feature, or LOB application.  Create a virtual machine and allocate the disk space it needs.  If it turns out to be incorrect, or once your testing has been completed, it is a simple matter to delete the iSCSI targets and return the disk space back to the available pool.

Note a potential disaster recovery scenario.  If you were to lose the host server, the .vhd for the virtual machines would still be on the iSCSI target.  Simply use them to create a virtual machine on another host, and you are back up and running.

Testing

Admittedly, I stole some of my own thunder when talking about virtual machines, but the testing environment is perfect for iSCSI.  Just allocate a target, use it and then delete it once the testing is done.

But it is not just for server and server-level software that iSCSI is useful in testing.  Suppose you want to test from your desktop.  Guess what.  Windows 7 has the same iSCSI initiator, and you can download one for XP.  That means you can create disks, use them and subsequently delete them at the client desktop as well as at the server.

Ad Hoc Uses

I have also used iSCSI targets for quick, one time efforts.  I wanted to update the OS on a laptop for a friend, and I wanted to end up with a clean install but make sure I didn’t lose anything important.  The trouble was that my friend couldn’t tell me what was important…. So I removed the laptop drive, connected it to my desktop with a USB drive connector, copied it completely to an iSCSI target I created, put the drive back in his laptop and installed the new OS.  There were a few things to go back and retrieve, but once he was satisfied I simply deleted the drive.

I will often be called upon to change something at an installation.  I usually create an iSCSI target, do an appropriate backup (sometimes it is just copying files, other times, a more holistic backup), then make the changes.  Getting back to the original state if something goes wrong is neat and tidy; so is the deletion of the disk once I am done.

Less Common But On My Wish List

Recall from Part I that the SCSI commands to read and write data are sent over the network to the target device.  Theoretically, it doesn’t matter whether the network is local or very WAN.  Practically, it is how long it takes for the commands and data to get back and forth.

Here is where I think cloud backups might go for some types of transaction-sensitive data.  Suppose you have a database that gets updates continuously from user transactions, web traffic, etc.  If that data were stored on an iSCSI target, remember that the data and commands to read and write it travel across the network.  Now imagine that the iSCSI target machine, when it gets a write command, also sends that command with the data to another iSCSI target, a mirror, that is remote, i.e., the cloud (public or private).  The difference is that the local target can respond back to the server that the write is complete, but there are no such time constraints on the write to the cloud. The iSCSI target would have to create a queue of writes and execute them in order as they complete asynchronously to the writes it completes locally.  This is not unlike playing a log file against a database.

Because only writes need be executed across the WAN, this is a very efficient operation and with broadband speeds continuing to increase, such a scheme because a very practical continuous backup procedure.

No solution like this is commercially available that I know of, and it would not be appropriate for every application.  Nevertheless, you heard it here first if it does come to pass.

I hope this gives you a flavor of the convenience and wide range of uses that iSCSI provides. In Part III I will discuss the costs and purchasing of a unit.

 


There is no need to beat around the bush.  It works, and it works well.  At least for hyper-v hosting systems like Microsoft Windows 2008 R2, where I have done most of my testing.  I have little reason to doubt that it works fine on other hosting platforms as well.

If you haven’t tried using virtual machines yet, read the following few paragraphs to get a quick how to guide for Windows 20008 R2.  It’s pretty much the same thing for Windows 2008.

The very first thing you should do is determine if you have an adequate hardware platform for hosting.  Simply put, the beefier your processor(s) and the more memory you have, the better your virtual machines will run.  Yet with a modest server (a Dell T310 with 16GM of memory) I have a Windows 2008 R2 Standard host operating system, a virtual 2008 R2, a virtual 2003 R2 server, a virtual Windows 7 Ultimate, and a virtual Windows XP machine all running nicely.  The latter two machines are allocated only 1GB each and still run nicely and the servers have 4GB and 2GB each and also do nicely. Of course, these are not machines that are heavily used, but still, it’s hard not to be impress with their performance knowing they are so limited in resources.

If you running 2008 or 2008 R2, the first thing you need to do is to enable the Hyper-v role.  From Server Manager, use Add Roles to accomplish this.  It will require a re-boot to complete the addition of the new role, and it takes a few minutes for that role to configure during the restart.  You might also need to check your BIOS settings; you need to enable virtualization there.  Some machines come with it enabled but many do not.

Once the role is added, start Hyper-v Manager located on Administrative Tools. 

Although this view shows a virtual machine running, creating a new one is done the same way.  However, there is one task you should do first and another optional one.  The first task is to set the virtual network up for use by the machines.  The second and optional one is to change the Hyper-v default settings for where virtual machines will be stored.  As you can change it when a machine is created, it is completely optional.

To set up the network for virtual machines, click on Virtual Network Manager on the right hand action pane.  I won’t go through all the options but rather focus on the following scenario:

  • Your host machine has a single NIC card
  • Your NIC has a local LAN address and Internet Access
  • You want the virtual machines to have the same thing.

It’s pretty simple then.  When the Virtual Network Manager opens, in the right hand pane you are offered to create a new virtual network adapter.  Chose External and click Add.  On the next screen, give it a name. Something like Virtual Network Adapter is just fine.  Below that is a radio button set; choose External and from the drop down list, pick the host machine’s NIC.  Click OK.  That’s pretty much it, and you are ready to create your first virtual machine.

Back in Hyper-v Manager, click on New on the action pane and choose virtual machine.  Click past the wizard start screen and specify the name of the virtual machine.  Meaningful is good.  You can accept the default storage location or choose a new one.  Click Next.  Allocate memory to the machine and click next. Then choose the network adapter you set up earlier and click next.

Now you will create the virtual hard disk aka .vhd.  About the only thing you need to change is the size if you want it bigger than 127GB.  The other settings are just fine.  Click next.

If you leave the default “Install an operating system later” then all that happens is that the .vhd is created and the machine will be ready to run at some future point.  For almost all of my purposes, I use an .iso image of whatever OS I want to install. If you have that, click on Install an operating system from a boot CD/DVD-ROM, click on Image FIle and browse to the location.  If you have a physical CD/DVD-ROM, insert the disk and choose the drive letter.

Finish the setup, and if you selected to install an OS, sit back and watch the machine come to life and install the os.  From then on, it is as real as any other machine in your world.

My SBS 2011 was a migration install, running as a virtual machine as a destination server with a physical machine hosting the source SBS 2008 server.  The only difference in how all this works from two physical servers is using the migration answer file.

You cannot directly use a USB device on a virtual machine, so no answer file on a flash drive stick.  Instead, create an .iso from the saved answer file and mount it in the virtual machine’s CD/DVD drive.  To do that, click on the media menu at the top of the virtual machine’s window and choose DVD then mount to mount the .iso file.  Or put in on real media and insert into the host drive.  SBS 2011 installation will find it.

I would love to say that everything was splendid with the migration and virtualization, but it wasn’t.  It took almost two weeks of intense work and investigation and the help of some very talented and good friends to find and fix the issue. None of which had anything to do with the machine being virtual, but finding that out took a lot of hard work.

I will post those findings and trials and tribulations with proper credits and thanks in the upcoming week.


Happy Thanksgiving.  It is snowing, and temps have been in the teens for the last four or five days.  Predicted to turn into rain and get into the 40°s today, and everyone is overjoyed about – rain?  In Seattle?  No way.

Microsoft has announced that SBS 7 will end up as SBS 2011 and is due for release in December.  I have heard from a friend of a friend who knows someone who has a friend who heard it from a barista at Starbucks who is dating a guy who used to know someone who worked at a company that is located near Redmond that December 12 is the earliest.  Don’t take this to the bank.  Microsoft’s announcement also said that OEMs wouldn’t start shipping until around February.

Here are a few other items to note.

  1. Three flavors of SBS 2007
    • Basic – Code name Aurora in the beta test.  It is an on-premise server but integrated to Exchange and SharePoint 2010 in the cloud.
    • Standard – SBS 7 in beta test and what you got in SBS 2003/2008.  On premise server and Exchange and SharePoint running on that server.
    • Premium – A second Windows 2008 R2 license.
  2. Changes from SBS 2008
    • Windows 2008 R2 as the base level OS (instead of Windows 2008)
    • Exchange 2010 instead of Exchange 2007
    • SharePoint Foundation 2010 instead of SharePoint Services 3.0
    • Basic version with cloud integration
  3. Upgrading
    • No in-place upgrade.  Migration (both old and new systems running for a while) is the only option, if you currently have SBS 2003/2008.
    • You will need a 2nd server for the migration, but it doesn’t have to be a permanent home for the new OS.

I have several opinions about what to do if you upgrade that will not only make the migration a bit easier, but in fact will give you a more powerful and flexible infrastructure afterward.

  • Establish your new, target server as a virtual machine OS.  I am definitely a fan of Microsoft’s Hyper-v technology as it is free, works well, and is pretty straightforward to use.
  • If you have a license for Windows 2008 R2 or Windows 2008 (standard or above in either case), you can install that as your base OS for the hyper-v machine.  (If you have the Premium version of SBS, then you have a license for it, provided you migrate from a server where it is already installed, if that is the case).
  • If you don’t have a license, then you can use the free version of Hyper-v Server from Microsoft.  Note that there is no GUI for this version and you will have to access most tools from a Windows 7 or 2002/R2 client by installing remote management tools.  It is somewhat straight forward, but there are a few details involving firewalls on each side, etc.
  • You can convert your existing SBS 2003/2008 server to a virtual machine once you have created a Hyper-v enabled server, but I would do that ONLY if you want to free up the server hardware it is running to use in your new SBS 2011 installation.  Otherwise, leave it where it is.
  • Install SBS 2011 as a virtual machine.  Perform the migration.

I am a fan of this because having a virtual stack of machines around is handy, very handy. If you need to test something, just create a virtual machine in a matter of minutes.  I have a handful of different virtual machines already created with different OS and configurations, and I can create a new machine from one of these right away.  I simply copy the .vhd file for whatever configuration I need to a new area or with a new name, start that machine and it’s ready to go.  When the testing is done, I simply delete the .vhd file and delete the machine from Hyper-v manager.

I am going to devote a few postings in the upcoming weeks on setting up a hyper-v stack and how to use and manage it.  Come back and check it out.

Let me end with a strong suggestion:  SBS 2011 is a rock solid product, and the new features of SharePoint Foundation alone make it worth the upgrade cost and effort. If you are still running SBS 2003, what could you possibly be waiting for?  I see lots of environments where the hardware is iffy at best, there are always issues with Exchange, and SharePoint Services 2.0 is essentially ignored.  Look, your business depends on this stuff.

Would you keep a piece of machinery around without doing anything to it for 7 or 8 years?  And unlike machinery, getting new stuff is not only much faster, better and easier to use, but costs only a fraction of what it did when you8o first bought it.  That is an investment you should easily make.

Happy Thanksgiving