Test-driving the hybrid functionalities between Exchange On-Premises and Office 365 might seem a daunting task. Especially if you don’t have (loads of) resources available.
Most people willing to test-drive the hybrid feature set find themselves struggling with the limitations of their own (home-) infrastructure like their internet connection or not having resources enough.
In this multi-part blog post I’ll guide you through some steps for setting up such a home- or test lab and talk about the difficulties and challenges I encountered when first setting up a Office 365 test lab @ home.
In order to stay on track with the purpose of this article, I will not go into great detail when it comes down to installing & configuring Hyper-V, Domain Controller(s) and Exchange 2010. I will, however, briefly touch on these subjects; certainly if there are some key elements related to the process of building the lab.
Virtualization Platform / Hypervisor
Unless you are going to run everything on separate servers, you probably want to do some sort of virtualization (and even then I would wonder why you wouldn’t want to virtualize).
There are plenty (good) ways of running multiple virtual machines like:
- VMware Workstation
- VMware ESX(i)
- Microsoft Hyper-V Server / Windows Server 2008 R2 SP1 with Hyper-V
- Citrix XenServer
Choosing the right platform really depends on your needs. Since I was going to use a dedicated machine for running the lab, I didn’t even bother looking at running a “type-2 hypervisor” like VMware Workstation.
In the end, I chose Windows Server 2008 R2 SP1 with Hyper-V because it easily met all of my requirements:
- Needed to run on “regular” consumer-market hardware
- Easy to install, configure and manage
- No extra management tools required (running the full installation offers me ability to easily manage my Hyper-V host from the host itself without needing extra tools installed)
- Easy remote access (RDP)
- Efficient resource usage (e.g. Dynamic Memory)
VMware ESX(i) although being great hypervisor as well just didn’t meet my (modest) requirements and more importantly: it didn’t run on the hardware I had in mind. There are several HCLs circulating on the net on which ESX-compatible consumer-grade hardware is listed. However, I found that these lists were rather limited and therefore also limited the hardware that I could use for my home lab; driving the total (hardware) cost up as well.
Remember, you can always download an evaluation copy of Windows Server 2008 R2 SP1 and the free Hyper-V Server 2008 R2 SP1 from the TechNet evaluation center: http://technet.microsoft.com/nl-be/evalcenter
Running a hybrid co-existence lab between Exchange On-Premises and Office 365 requires at least the following components:
- Exchange Server 2010 SP1
- DirSync Server
- ADFS (although technically speaking it’s not required, I wanted to test the SSO-functionality as well)
Obviously, running Exchange Server 2010 requires a Domain Controller. Because I’m running the lab on limited resources, I want to limit the number of virtual machines I need to deploy and since I only have a single fixed external IP, I also need some way of making both my Exchange services and my ADFS publicly available. That’s where the Forefront Threat Management Gateway 2010 comes into play. Using the TMG, you can securely publish both Exchange 2010 and ADFS to the internet, using a single external IP and – more importantly – eliminate the need for an ADFS Proxy.
This brings the (minimum) number of virtual machines needed to a total of 5:
- Domain Controller
- Exchange Server 2010
- DirSync Server
- TMG 2010
Note: If you need to further “limit” the number of VM’s you are running, you can choose to run ADFS on your DC as well.
Preparing the lab:
First, start by installing Windows Server 2008 R2 SP1 and configuring it with Hyper-V.
Hyper-V is a Server Role that you can easily install using “Add Roles”-wizard in the Sever Manager:
- You can start here for more information on installing & configuring Hyper-V.
- If you are interested in getting to know more about Hyper-V, I strongly recommend taking a look at https://www.microsoftvirtualacademy.com/. The site contains loads of useful information and in-depth training on Hyper-V and other technologies.
Since the VM’s in my home lab are running from an SSD that is rather limited in size compared to regular hard disks, I needed some way in which I could limit disk usage. That’s why I chose to use differencing disks/ Differencing disk are a virtual hard disk type that you can use to isolate changes to a virtual hard disk or the guest operating system by storing them in a separate file. A differencing disk is linked with another virtual hard disk, called the parent. This parent disk already needs to exist when configuring a differencing disk. Differencing disks are dynamically expanding, reducing the initial amount of storage needed: they will grow as data is written to them; they can grow as large as the maximum size of the parent disk.
- For more information on differencing disks and how they work, have a look here.
To create the parent disk, I started by creating a Windows Server 2008 R2 SP1 virtual machine, patching it with the latest updates and running SysPrep afterwards:
SysPrep is – by default – a part of Windows Server 2008 and can be found in the following directory: C:\Windows\System32\sysprep:
All you need to do, is to run sysprep.exe and configure the options as follows:
Click OK to start preparing your VM. After sysprep completes, it will shutdown the virtual machine.
The result of this action is that you’ll have a disk of about 8Gb that you can use to specify as a parent disk in other virtual machines. Doing so, you effectively “win” 8Gb per virtual machine, since the parent disk will be shared amongst multiple other VMs therefore consuming the 8Gb for the operating system only once:
Please note that this kind of setup is great for testing purposes but is NOT recommended for a production environment.
- For more information on how sysprep works and what it exactly does, please take a look here.
Next steps, part 2
In the next part of this article, I will continue building the lab by creating the virtual machines and showing you how to configure the TMG to publish both Exchange 2010 services and ADFS.