Learn Microsoft Virtualization in Your Own Easy-to-Build Virtual Lab

Virtualization Lab Build Guide

Many of you in the U.S. may be familiar with the Microsoft “IT Camps” that we host now and then, where we teach you some great stuff and then give you the opportunity to work with the technology through hosted hands-on lab exercises.  These free in-person events have become very popular.  They’re so popular, in fact, that our next of IT Camps (kicking off this week) are pretty much all filled to capacity!  (This is why I don’t have a link to share on where to go to register. We’re all full!) 

The labs we’re doing this time involve configuring and driving a highly available virtualization and private cloud platform using Windows Server 2012 R2 and System Center 2012 R2 Virtual Machine Manager.  Our IT Campers will configure storage pools, networking, virtualization hosts, a highly available host cluster, and even virtual machine templates and service templates.  All-in-all there are about four hours of really rich lab work awaiting our IT Camp attendees.

Beyond the fact that these labs were only for our IT Camp attendees, a sad limitation in the timing of the lab.  We could only make the online versions available to you for the day of the event only, and no more.  So invariably at every IT Camp I get comments that go something like this:

“Hey Kevin.. I love these labs, and I’d love to be able to do them again.” 

– OR –

“Hey Kevin, I have other people at my company that would learn so much from these labs.” 

– OR –

“Gosh, Kevin, I wish I could have access to these labs for more than just today.”

And each of these are usually followed by the big question:

“Do you have any instructions on how to build these lab virtual machines so that I can run them on my own hardware?”

Well.. you’re in luck!  For this new set of IT Camps, and even for those of you who are unable to attend, I’ve created a Virtualization Lab Build Guide.

“A Virtualization Lab Build Guide?”

Virtualization Lab Build GuideYes.  I provide easy instructions and PowerShell scripts to help you quickly spin up and configure the 5 virtual machines that are used in the Virtualization lab; the same lab that we’re doing at our IT Camps.  And of course I’m also including the original lab manual; the same one that we’re handing out at our events.  So once you have the machines built, you can go through the labs over and over again to your heart’s content, or quickly spin up training environments for your other co-workers.

“But, what will I need to have to do this?”

For the software on your host machine, you’ll have to be running Windows Server 2012 R2 with the Hyper-V role installed.  The free evaluation installation works just fine. 

In order to be able to run all 5 virtual machines on the same physical box, your server (or like in my case, a Hyper-V-capable spare laptop) will have to have at least 16GB of RAM and at least 200GB of free disk space

The software required to build the virtual machines is all evaluation or free software:

Once downloaded, you just extract the “Virtualization Lab Build Guide.zip” file containing the resources, put the above software installations into the .Base folder, and run the script that creates the virtual machines. 

But I’m getting ahead of myself.  Full instructions are included in the guide.  Download the Lab Manuals and .ZIP file from my SkyDrive here: Virtualization Lab Build Guide

Virtualization Lab Build Guide

Feel free to send me any feedback or questions, either in the comments on this blog post, or through the contact function (“E-mail Blog Author”) on this blog.  This is version 1.1, so I definitely expect to be fixing and improving things as I hear from you all.  I sincerely hope you will make good use of these resources!

And if it is useful to you, then I’ll be doing more of these in future.

18 thoughts on “Learn Microsoft Virtualization in Your Own Easy-to-Build Virtual Lab

  1. Hello Kevin,

    Am unable download the Virtualization Lab Build Guide.zip file.. I am however able to download the lab guide doc from your SkyDrive Space.. Can you please check the availability for the Zip file and re-upload if required..

    Thank you for your wonderful blog posts, its a motivation to learn exiting new offerings from Microsoft.


  2. Kalyan – I just checked it again, and the download seems to be working for me. Could it be that there is some security software blocking your ability to retrieve .zip files? Are you able to try from another computer or another location?


  3. Right now the limitation in Azure is networking. This lab sets up multiple virtual NICs on each VM to support the various types of network traffic a production virtualization and storage network should have – corporate, storage, cluster heartbeat, and live migrations. I haven’t tried to simulate that in Windows Azure, but I know it’s not as simple as Hyper-V makes it.

    If I get a chance, I’ll give it a try. Or.. one of you can do it (http://aka.ms/DoAzure) and let us know what you find! 🙂


  4. Dear Kevin,

    I am having an issue with installing SCVMM01…. I deployed all VMs successfully, and run all scripts.
    I reached VMM01, ran the first script – 00 Configure SCVMM01, then the second one – 01 Add Hyper-V Role all successful, I reached the step where I want to install SQL.
    SQL is failing during the setup, I repeated the installation many times by creating a new VMM01 from the VMMEval.vhd template
    Database Engine Services (Status Failed)…

    Please find below error log for your reference.
    Could you please help?

    Thank you.

    Overall summary:
    Final result: Failed: see details below
    Exit code (Decimal): -2061893606
    Start time: 2014-01-26 18:32:15
    End time: 2014-01-28 11:56:20
    Requested action: CompleteImage

    Setup completed with required actions for features.
    Troubleshooting information for those features:
    Next step for SQLEngine: Use the following information to resolve the error, uninstall this feature, and then run the setup process again.

    Machine Properties:
    Machine name: SCVMM01
    Machine processor count: 8
    OS version: Future Windows Version
    OS service pack:
    OS region: United States
    OS language: English (United States)
    OS architecture: x64
    Process architecture: 64 Bit
    OS clustered: No

    Product features discovered:
    Product Instance Instance ID Feature Language Edition Version Clustered
    SQL Server 2012 SQL2012SP1EVL MSSQL11.SQL2012SP1EVL Database Engine Services 1033 Enterprise Evaluation Edition 11.1.3000.0 No

    Package properties:
    Description: Microsoft SQL Server 2012 Service Pack 1
    ProductName: SQL Server 2012
    Type: RTM
    Version: 11
    SPLevel: 0
    Installation location: C:SQL2012SP1Evlx64setup
    Installation edition: Standard

    User Input Settings:
    ACTION: CompleteImage
    CONFIGURATIONFILE: C:Program FilesMicrosoft SQL Server110Setup BootstrapLog20140126_183031ConfigurationFile.ini
    ENABLERANU: false


  5. Hello Sharable. To your first comment – It’s a great idea to add SOFS to the lab, but I personally won’t be doing that. I built the guide to match and work with the existing lab manual as best I could, and I’m not usually in the business of creating brand new extensive labs or exercises. I’ll pass this request on to our content creators at corporate. It’s a great idea.

    As for your error – I’m sorry that I don’t know what to tell you or how to interpret that error log. A couple of things you might look at:
    1. Is the Domain Controller DC01 running at the time?
    2. Verify that SCVMM01 has been added to the AD domain. If, after you’ve run the first script to configure SCVMM01 and restart, you’re able to successfully login as contosoadministrator, then that’s verification enough.

    Is anyone else seeing their SQL Server installation fail in a similar way here?


  6. I just wanted to say thanks for taking the time to build this lab and even more so for sharing. I am doing exams and also learning 2012R2 for customer support and this is a fantastic setup to learn from / play with. If it helps, I found the VMM / SQL failed
    for me because I didn't realise I was logging on locally and not to Contoso!!


  7. Hello Kevin, I'm searching for a good hardware to do some tests and lasb and so the question: what laptop do you use to do the labs (with 16 GB ram)? Thanks for the labs 🙂


  8. Thanks Kevin, it is very interesting machine. I'm interested if other people that have read this page have other suggestions.


  9. Hi Kevin, I really want to learn HyperV. I am dual VCP4/5 Certified. I have learned all vmware on Vmware workstation installed on my windows 7 64 bit laptop with 8 GB Ram. I have 5 Vms Installed: windows 2008 R2 Domain Controller, vCenter Server, 2 ESXi
    5 Virtualized Vm and one iSCSI VM. I would request if you can come with Hyper V Installation and Configuration lab guide on Vmware Workstation, It will be great for all Virtualization Professionals as most of them are VCP certified and have Vmware workstation
    installed on there laptops.


  10. Hi Kevin, Thanks for the guide. I've just finished building my lab and am about to start the labs. I'm currently studying for the 70-409 exam, so this should be really helpful. While building the lab I had to enable the Enhanced Session Mode Policy on my Hyper-V server, the User Enhanced Session Mode was already checked (see page 8 of the build guide).Thanks again,Carlhttp://oxfordsbsguy.com


  11. Hey Kevin,

    Two quick questions:

    1) Are there any updates to this since the original posting?

    2) Is there a way to turn the eval versions into a longer term lab license; assuming of course that we’ve got access to valid legal licensing keys. 🙂

    Looking forward to getting started its this!



  12. I realize that this is an old blog, but ….

    I have checked and rechecked the setup and cannot get the system to actually create the CLUSTER1.

    It always fails at Validate nodes for clustering.

    I have run the PoweerShell command -> Test-SCVMHostCluster -VMHost Hyper-V01.contoso.com,Hyper-V02.contoso

    And reviewing the report, I have the same errors that you mention, but no others. In fact …..

    Overall Result
    Testing has completed successfully. The configuration appears to be suitable for clustering. However, you should review the report because it may contain warnings which you should address to attain the highest availability.

    Any clue?

    Don Myers


Leave a Reply

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

WordPress.com Logo

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

Facebook photo

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

Connecting to %s