How to set up a high availability test lab

- select the contributor at the end of the page -
I was caught up in a discussion the other day on high availability and was asked what it would take to build a high availability (HA) test lab. My response was, “how much hardware do you currently have for your lab environment, and does the existing hardware support virtualized environments?”

Believe it or not building an HA lab environment does not take as many resources as you might think. A basic cluster environment will have two servers and shared storage. The good news is that today with virtualized environments you could create your entire lab on one workstation and use free software or mostly free software to do it. The difference is whether you want to configure a failover cluster or a Hyper-V failover cluster.

The components

This is a configuration I use for a test lab at work to test software products in a cluster:

  • Dual Core processor with virtualization technology (VT) enabled
  • 8 GB RAM
  • 500 GB hard disk
  • Single network card
  • Windows 7 Professional
  • VMware Workstation 9
  • StarWind Software ISCSI SAN

There are other virtualization products out there that you can use that are similar to VMware Workstation, but currently VMware Workstation is the only virtualization product that supports nested hypervisors. A nested hypervisor will allow you to install Windows Server 2012 with the Hyper-V role installed and running virtual machines in your Hyper-V environment. That's pretty cool.

What do we need?

The workstation you are going to be using must have a processor that supports either Intel Virtualization Technology (Intel VT-x) or AMD Virtualization Technology (AMD-V) which must be enabled through the workstations BIOS. Most processors for the past several years should have this support built-in, however, not all computer manufacturers allow you to enable virtualization technology in the BIOS.

You will need sufficient memory to run not only the host workstation's OS, but also the failover cluster configuration you are looking to test in your lab. I would recommend a minimum of 8 GB of RAM, but more is always better.

You will also need sufficient hard disk space to run your workstation's OS and applications in addition to at least three virtual machines (VMs). Unless you are testing a large Exchange or SQL database your VMs will be fairly small in size, typically, 20 to 40 GB per VM.

You will need a copy of Windows Server 2012, and before you try to tell me it's not free please remember that you can download an evaluation copy of Windows Server 2012 from the TechNet Evaluation Center. The only limitation is that the evaluation copy will be valid for 180 days, but how many of us truly install and use an evaluation for the entire 180 days?

I typically install the software, configure the cluster, test what I need to test and then destroy the cluster. I am a firm believer in the rinse and repeat method. If you attempt to use the existing cluster for testing another role or feature, you may not get the results you are looking for because there are always leftovers when you test software. I prefer to do a clean installation to get a cleaner test environment.

You want to have some type of shared storage for your VM running the application that you are protecting with your cluster. There are many ISCSI SAN or NAS software products that you can download to perform the task.

The reason for shared storage

If at some point you simulate a failure within your cluster and if the disk you are using to store the resource is local to one of your cluster nodes and you power off that node, then you lose your resource. With shared storage you can view this as a hard disk that is not directly part of any node but available through the network. Every node has access to it but the storage is not local to any node, so when you simulate your failure the disk is still network-available to the remaining nodes.

There are three pieces of software that I have used to perform this task: StarWind Software ISCSI SAN, FreeNAS and Openfiler. All three products are available in a free version and will run as a VM. Openfiler and FreeNAS include the operating system as part of the product, but StarWind will run similarly to an application on a Windows Server. I personally like StarWind ISCSI SAN because it has an easy to use console for creating and managing your SAN devices.

Setting up the HA lab

Now it's time to set up your lab. First, you will install your hypervisor. For me, I would install VMware Workstation. Once you have your hypervisor installed you will want to create three VMs. One of the three VMs should have extra room to create the ISCSI storage files that will be shared between the two or more nodes in your cluster. Install Windows Server 2012 on all three VMs and apply updates. Install your ISCSI software and configure your ISCSI files used for the shared storage. I also like to create an AD domain on this server. Join the remaining two servers to your domain.

Next you will want to install the failover cluster feature and use the ISCSI Initiator to connect to the ISCSI SAN storage files you created. You can install the Hyper-V role on the two servers if you want to create a Hyper-V cluster (optional).

On one of the two servers that will be your failover cluster you use Disk Manager to bring each disk online, initialize each disk from your ISCSI SAN device, create a partition and format each drive as NTFS. On the second server you will want to bring each disk online and initialize them, but since the partitions are already created you should see the drive letters assign.

Now you should be ready to create your failover cluster using the Failover Cluster Manager. Once you have validated your cluster configuration and created your cluster you will go to storage and change your disk to a Cluster Shared Volume (CSV). Finally, under Roles you will install the role for the type of cluster you are using for your test environment.

That should do it. You should now have a small high availability test lab up and running. It is really not as hard today as some might think, and the whole process should take you about an hour depending on the speed of installing and updating your Windows 2012 servers.

Start building

Now it's your turn. Give it a shot and enjoy the learning process. Let us know how your installation went and if you had any difficulties along the way. Always remember that every environment is different so you may have to do a little bit of troubleshooting on your end to get everything functioning properly for what you want to test. But to me that is the best part of learning: resolving issues.

TrainSignal trial

Your trial includes access to our course on VMware Workstation 9 for IT Admins!

Get our content first. In your inbox.

Loading form...

If this message remains, it may be due to cookies being disabled or to an ad blocker.


Ken Mauldin

Ken Mauldin has been in the IT industry for over 30 years, starting off as a hardware tech in 1980. He has served as a server/network admin, network engineer, IT manager and independent contractor. Ken got his start in networking using Novell NetWare in 1993. In 1996, Ken became a Microsoft Certified Trainer and has been a Microsoft Engineer since Windows NT 4. After working full-time as a MCT for over five years, Ken currently is a Senior Network Support Engineer and writing blog postings for TrainSignal.