Building your own VM Lab Part 1: The Project and Prep Work

As data professionals, we have to constantly keep up with an ever changing landscape of technology. Sure, you can read all of the blog posts and books as they are written, but it helps if you have a place where you can actually use the skills that you have learned from what you read. One of the things that I have found helpful is the SQL Server BareMetal project on codeplex. The only problem with this project is that it uses Windows Server 2008 and SQL Server 2008. I am beginning work on a set of PowerShell scripts that I will distribute as I continue through this blog series.

For this post I just want to go through some of the basic prerequisites that you will need to make sure you have in place before heading down this path.


You want to pick hardware for your virtual lab to run on. You want to pick the proper “case” for your lab. Do you want to put your lab on a stationary workstation or a laptop? For my specific situation as a consultant, I chose to put my lab on my laptop since I travel. If you don’t need to travel or have an internet connection in your home that allows you to connect remotely, then you can put your lab on a desktop unit. There’s also the third option but does require a sizable investment. You could put your lab in to the cloud. With this option there is a cost, but only when your lab is on. The sizes and types of your servers will determine your hourly rate. If you have an MSDN membership, as of the time of this post, the MSDN membership allows you a certain amount of credit towards Microsoft Azure every month which you could use for this purpose.

Now that you have picked your case, you have a couple more options to be aware of. First off is CPU. You want to pick something that can handle the load of multiple machines. Personally, I have used Quad Core Xeon processors and Core i7’s. There are other options from Intel and other manufacturers. The next concern is RAM. I recommend a double digit amount of RAM. For my laptop, I will be using 12 GB.


For a virtualization platform, as much as you don’t want to hear this, it’s all about preference. There are options from the major names of Microsoft, VMWare, and Virtual Box. For every article that you can find that will say one is the best, you can find an article to say each of the others is better. You need to do your own homework to pick the host platform that is the best for you. For me, I am going with Hyper-V from Microsoft. I am already running Windows 8 on my laptop. Hyper-V is a Windows feature that can be enabled starting on Windows 8. Like I said at the beginning, it’s all about your own preference. A great article that will show you how to enable Hyper-V in Windows 8 is located here.

In the next article, I will cover creating a Virtual Machine Template hard drive in Hyper-V. Once you create a template, you can use that as the base image for spinning up servers as you need them.