Setting up a Sitecore website under AWS

This blog will take you through setting up a Sitecore website under Amazon’s Web Service (AWS). Note that this will be a basic single Sitecore site. In further posts, I will talk about setting up separate instances of CM, CD(s), and database.

Set up EC2 instance

Amazon offers Elastic Compute Cloud (EC2) which is a web service that provides resizable compute capacity in the cloud (resizable virtual servers). We will use one of these instances to hold our Sitecore solution. To set up a virtual server to run Windows Server 2008 with SQL Server Express and IIS, launch the Instance creation wizard:
  1. Go to the AWS Management Console
  2. Click Amazon EC2
  3. Select the region you would like your instance to be created in
  4. Click Launch Instance
  5. Select the Classic Wizard and click next
[caption id="attachment_115" align="alignnone" width="623" caption="EC2 Wizard Step 1"]EC2 Wizard Step 1[/caption] You will now see something like the image above.  Here you can select a machine image to make an instance of. Scroll down and find Microsoft Windows Server 2008 R2 with SQL Server Express and IIS and click Select.   [caption id="attachment_116" align="alignnone" width="623" caption="EC2 Wizard Step 2"]EC2 Wizard Step 2[/caption] After selecting an image, you can specify the number of instances and the instance type to create. You can also select regular or spot instances.  Spot instances allow customers to bid on unused EC2 capacity. If your website can be flexible on when it runs, you can save money by selecting a spot instance. We will select 1 regular micro instance.   [caption id="attachment_117" align="alignnone" width="624" caption="EC2 Wizard Step 3"]EC2 Wizard Step 3[/caption] On the next page, you can select the kernel or RAM disk to use. You can also select if you would like monitoring. We’ll leave all the defaults and click continue.   [caption id="attachment_118" align="alignnone" width="623" caption="EC2 Wizard Step 4"]EC2 Wizard Step 4[/caption] Here you can tag your instance to help identify it. Give it a name like "MySitecoreSite."   [caption id="attachment_119" align="alignnone" width="623" caption="EC2 Wizard Step 5"]EC2 Wizard Step 5[/caption] Create and download your Key Pair. This is use to connect to the instance - we will need this later.   [caption id="attachment_120" align="alignnone" width="623" caption="EC2 Wizard Step 6"]EC2 Wizard Step 6[/caption] Here we can set security groups which will determine what ports will be open for your instance. You can change this later. Click continue to review your options and then click Launch when you are done. It will take a few minutes to launch your instance.

Access your EC2 Instance

To access your EC2 Instance via Remote Desktop, we will need two things: the public hostname of the server and login credentials. To get login credentials:
  1. Select your instance
  2. Click on Instance Actions dropdown
  3. Click Get Windows Admin Password
  4. Click Browse… and select your pair key file (.pem) you have downloaded from earlier
  5. Click Decrypt Password
  6. The server name, account, and decrypted password are now displayed.
You can now Remote Desktop onto your server and set up your site.

Setup the Sitecore site

Once you have Remote Desktop onto your server, installing Sitecore on AWS is no different from installing on a traditional server. A guide on how to set up Sitecore can be found on Sitecore's sdn: Also, please check out the security hardening guide: One last thing – we need to assign a static IP for our server.

Elastic IP

We need to assign a static IP for your instance as it gets assign a new Public DNS every time you restart the instance. Amazon offers Elastic IPs which has a static public IP you can register with your domain provider. To assign an Elastic IP for our instance:
  1. Go to the AWS Management Console > Amazon EC2 > Elastic IPs
  2. Click Allocate New Address
  3. Select EC2 and click Yes, Allocate
  4. Once an Elastic IP has been allocated, click Associate Address and associate the IP with your instance.
[caption id="attachment_114" align="alignnone" width="624" caption="EC2 Elastic Load Balancer"]EC2 Elastic Load Balancer[/caption] You can now register that IP with your domain provider. [caption id="attachment_150" align="alignnone" width="563" caption="Sitecore Site"][/caption] Opening your site up in a browser, you will see the default Sitecore page.
Categories: Cloud, Architecture