Tag Archives: wordpress

Creating a WordPress site in Amazon Web Service’s Free Tier

Alright, so, we’ve set up our EC2 instance, and now we need to set up a database for our EC2 instance to access.

Head back to the console and select the RDS service.

Screen Shot 2013-12-12 at 8.13.33 AM

Select the “Launch a DB Instance” button.  Follow the Wizard as it makes it super easy to set up.  There are a few additional options you should make sure that you choose to avoid extra charges.

Screen Shot 2013-12-12 at 8.14.59 AM

I’m used to using WordPress with a mysql db, so I chose the mysql option.

Screen Shot 2013-12-12 at 8.15.13 AM

This isn’t really a commercial production site we’re creating and we want the free tier, so select No.

Screen Shot 2013-12-12 at 8.15.31 AM

The only changes you should make on the DB Instance Details are:

DB Instance Class: db.t1.micro

Multi-AZ Deployment: No

Allocated Storage: 5 (You can choose up to 5 GB for the free tier) It should be good enough for us.

DB Instance Identifier, Master Username, Master Password – Whatever you put in here, make sure you remember it.

Go next.

 

 

 

Screen Shot 2013-12-12 at 8.17.07 AM

Give your Database a name and choose the vpc and availability zone that you placed your instance in.  The reason you want them to be in the availability zone is so that you don’t incur cross AZ fees.  Imagine a datacenter, if all the traffic is within a single datacenter we don’t have to pay an outside provider to use their transfer lines, but if you need to cross to a different datacenter, you have to lease a line.  This is the same concept.

 

Screen Shot 2013-12-12 at 8.17.41 AM

 

After this, Review your setup and launch!

Next post will be about setting up an S3 repo.

Creating a WordPress site in Amazon Web Service’s Free Tier

I’ve been contemplating moving all of my hosted materials from my current hosting provider to my home server and saving on some of the costs. My sites are all relatively low traffic, so hosting on a home server would be easy. My problems are that I won’t have a dedicated IP, the server would need to be on all the time, and I’ll have to maintain the hardware. Well, since I’ve been using a lot of the AWS (Amazon Web Service) tools at work, I figured I can explore more of the options by utilizing it for personal use.

The nice thing is that AWS has a free tier for a year that I can try out. I don’t really have a plan (since this is just for fun and my own personal education) but if I did it would be something like: (1) setup instance, (2) setup wordpress, (3) write content, (4) track usage and performance, (5) evaluate. Warning, everything I write will be on-the-fly, so if you don’t understand how I got from one place to another, or want some clarity, feel free to write it in the comments and I’ll try to answer you.

Intro to AWS

First of all, make sure you sign up for an AWS account, and sign up for their free tier read more about it on http://aws.amazon.com/free/ .  For now, I’m going to utilize EC2 (Elastic Compute Cloud), RDS (Relational Database Service), S3 (Simple Storage Service), and EBS (Elastic Block Store).

Here are my description of those services.

EC2 – In physical computing terms, this is primarily the processing (cpu) and memory of a server.  In non-physical computing terms, the brains and the memory.

EBS – This is additional “persisitent” “hard drive” storage for the EC2 instance.  When you restart an EC2 instance, the “hard drive” will pretty much empty its contents and you start on a blank slate.  This is like having an external hard drive that you can remove from one machine and install into another.

RDS – This is the hosted MySQL part of our application.  Think of this as structured data that will help organize your content.

S3 – This is where we can store content in a really cheap way.  It also makes it a little faster to access the data since the storage is duplicated across several regions (Amazon’s version of datacenter locations).

Let’s start with these first.  There’s a whole bunch of utilities to use in a production setting, but for our simple setup this might be all we need at first.  I’ll describe additional tools as I use them.

Setting Up Your Instance

An instance in the AWS world is considered your server.  Sign into AWS, and head over to the Console (https://console.aws.amazon.com/ec2/v2/?region=us-west-2).  Notice that region at the end of my link? You can choose whatever you want, but that’s what AWS defaulted me to.  The cheapest rates are usually in us-east-1.

First, let’s create the instance.  On the left of the console, click Instance.  Near the top you’ll see a button that says “Launch Instance”.  This will open up the wizard.  I’m using the generic Amazon Linux AMI, you can choose whatever Free Tier Eligible Operation System you are familiar with.  Make sure you choose t1.micro.  The defaults should pretty much be fine for now, so click “Review and Launch”, then “Launch”.

Congratulations!  You just setup a new Amazon instance.  My next post will be about setting up a database in RDS.