One of the best ways to gain knowledge and to test drive software and configurations is to have a virtual lab. This isn’t really big news of course, but for many newcomers to Systems Administration and virtualization it can be difficult to find resources to build an effective lab.
Luckily, with VMware Workstation, or VMware Fusion for OSX you are really only a memory expansion away from having a completely portable lab environment to help expand your skills.
Thanks to the capabilities of VMware Workstation and VMware Fusion, we are able to virtualize instances of VMware ESXi 5 which allows us to nest another set of virtual servers/workstations below that layer. This configuration lets you create an infrastructure that can simulate multiple datacenters and multiple locations.
We no longer need the physical infrastructure that was required before to be able to run multiple ESX servers and then use their virtual resources for more guest environments.
Shared Storage Conundrum
While we have the ability to nest our servers, one of the key features we need to really run an effective lab is shared storage. Without shared storage we aren’t able to leverage many of the functions of a virtual datacenter such as vMotion, vCenter Orchestrator, DRS and many more.
There are a few ways to tackle this issue with virtual shared storage. There are many tools available to present a virtual iSCSI device with a virtual storage appliance. In fact, VMware has the VSA offering which does exactly what you need. The challenge for many though is that many virtual storage environments still require licensing.
If you are like me and running your lab on a shoestring budget you have one option available that will meet your needs without breaking the bank. Since I am running Windows Server 2008 R2 already, I am able to use the free Microsoft iSCSI Target Software which lets me present a shared iSCSI target to my VMware vSphere servers.
This is where we get funky. For those who’ve seen the movie Inception, you will be familiar with the dream levels. In our virtual lab we use the same idea, but it’s much less confusing hopefully 🙂
For my miniature lab I have two layers of virtualization. The first layer is my VMware Workstation (or Fusion on my OSX machine) which contains 3 servers. The first server is my workhorse Windows Server 2008 R2 machine which runs a few products:
- Microsoft Active Directory
- Microsoft SQL Server 2008 R2
- VMware Virtual Infrastructure Client
- Microsoft iSCSI Target 3.3
The other two servers are my VMware vSphere ESXi 5 servers. The total disk usage is very small for these (4GB each) because I only need the ESXi Hypervisor without local storage because I will be using the iSCSI target for shared storage.
As you can see, I have a relatively simple top level which then allows me to expand my pool of servers and workstations at the next layer where I can work with tools that communicate between devices and other multi-server, multi-site simulations.
The only challenge that I face is the physical limit of my machine (memory is the real limiter) and that I have to be careful about the order in which I spark up the servers so that my storage comes online before my vSphere hosts do.
Getting the most out of your lab
Because I need to test out configurations and run lots of software products for demonstration and testing, this little lab on my laptop is my little portable friend.
Performance testing will not be ideal in your mini lab because as you can imagine, with limited physical resources you will quickly bury the host machine and overwhelm the environment.
My primary use for the lab is to try out command line tools such as PowerCLI and PowerShell and to document installation and configuration procedures for the blog or for use in production. Generally my script testing isn’t very CPU or memory intensive so it is an ideal design for most of what I need to do.
If you can acquire more physical resources for your home lab, it will always be to your advantage. What I wanted to show here was that for light duty testing and for those who are limited to accessing physical hardware, a virtual laptop lab can reap great rewards with your skills and learning.