Amazon provides a cloud computing platform named Amazon Web Services (AWS).
Although AWS is primarily targeted towards enterprise-level customers such as Expedia, who use it to host their extensive web server farms and cloud-based data centers, there’s also an affordable tier called Elastic Computing 2 (EC2). Amazon also provides rapidly deployable test-drive environments for several Microsoft server products, including Exchange. No doubt these are useful for a variety of testing scenarios but unfortunately don’t give you an opportunity to build and configure an entire environment from scratch. For that, you’ll need EC2.
Using EC2, it’s possible to build a modest-sized Exchange test environment at a reasonable cost (as of this writing, a four server environment cost approx. $40 to $50 per month to keep online. Note that pricing is flexible and dependent on virtual machine specs and uptime, among other factors).
You’ll need an Amazon account to get started (yes, the same account you use for shopping).
Once you’ve logged into the EC2 dashboard, you can create a virtual machine instance:
You’ll be presented with a list of Amazon Machine Images including Linux and Windows images.
By scrolling down, you’ll see a list of Windows Server options. For building an Exchange server environment, I’ve typically used Windows Server 2008 Base 64-bit
The best option for making a low-cost testing platform is the t2.micro machine type which is included in the free tier. Although the servers in this tier are indeed free, there are associated costs for bandwidth usage, CPU time and so on. See the AWS EC2 pricing guide for full information.
In this example, we’re accepting the default machine configuration (i.e., no expansion of the standard RAM and hard drive space options) so we can choose the “Review and Launch” button at the bottom of the page to proceed.
Recently, Amazon introduced solid state drives (SSD) as an option for their virtual instances. In my experience, the SSD drives are an excellent choice for creating reasonably performing machines (especially in the free tier where the machines are not particularly robust – 30 GB of hard drive space and low RAM configs).
Amazon Web Service instances are secured with public key data. Part of the process of creating a machine is making a key pair (or selecting an already existing one)
Once you’ve downloaded a key pair the instance will launch
There are several other tasks required to build your Exchange test environment using AWS. The biggies include:
2.) Creating a domain controller and configuring its DNS to use the DC’s external IP as the lookup host (about which, see below)
3.) Configuring the AWS security group your machines are part of to allow the public IP addresses of your instances inbound access to all member servers. This is a critical step for creating an Active Directory and Exchange environment since, by default, the EC2 instances use DHCP for IP addressing. Their public addresses however, are fixed and so, these can be used to work around this limitation as per the image shown below, which diagrams the topology for a simple, two node DAG cluster Exchange set-up:
There’s quite a bit more to say but this post shows the basics – at least as I’ve experienced and worked out. With AWS it’s possible to make – for a fairly low cost – a sandbox for safely practicing on a working Exchange environment.