Deploy Your WordPress Blog to the Cloud

Deploy Your WordPress Blog to the Cloud

Tutorial Details
  • Program: Amazon Web Services, Linux, WordPress
  • Difficulty: Beginner/Intermediate
  • Estimated Completion Time: 1 hour

For the last decade, hosting a large scale web application has been a daunting task, reserved only for experts. Not anymore; when Amazon opened its server architecture, everything changed. Computer hardware moved to the cloud, and became available to any and all developers. In this tutorial, we will install WordPress in the cloud.

Tutorial now on Wptuts+

Introduction

Most blogs and small business web sites are hosted on shared hosting services, where you pay a fixed monthly fee in exchange for a predefined set of features and installed software. Most of the time, it’s a perfectly valid option, but running your blog in Amazon’s cloud comes with benefits that make it an option worth considering:

  • Easy to upgrade. Creating a new server machine in Amazon’s cloud can be accomplished in a matter of minutes. So by using the service, you are always prepared to handle instant jumps in traffic. If a post jumps to the front page of Digg or Reddit, you can add more servers and balance the load. accordingly.
  • Cost-efficient power for large scale services. If your site attracts a lot of users, and eventually outgrows the limits of your regular hosting, Amazon Web Services gives you free hands in designing a server architecture that matches your needs, in a cost-efficient way, without needing to hire a complete network operations team to do the setup for you! This is how many of the most popular Facebook developers have built their servers.
  • Total control over the setup: Though this point might not be too important when running WordPress, if you want to get adventurous and build your next project using something more exotic than a combination of PHP and MySQL, you don’t have to ask your web hosting company. You install the software you wish, just like you would on a server of your own.

Whether or not hosting your WordPress site on Amazon is the right choice depends on the traffic your blog receives, as well as how much you value the opportunity to configure your server exactly to your needs.

If you’re still curious, read on and give it a shot. You will be amazed at how quickly you can get a server up and running!


Step 1 - Create an Amazon Web Services Account

Before you can start using Amazon’s cloud for your web hosting needs, you need to create an account with Amazon Web Services (AWS). Point your browser to aws.amazon.com and click on the “Sign Up Now” button.

If you’ve used Amazon.com before, you can use your same e-mail and password to login to AWS. You can also create a new account by choosing “I am a new user.

At this stage, you will need to enter your contact information and credit card number so that Amazon can bill you for any services you use. Creating an account is free, though everything else will cost you money.

The pricing model is rather simple — you pay for every hour your server is running — but because of the variety of options, calculating the actual price can get quite a bit more complex than that. When running your own site at Amazon, it’s best to be careful and double check your price calculations before leaving the servers running unattended so you don’t get any surprises at the end of the month.

Building our WordPress setup shouldn’t last but an hour, and we will stop everything when we’re finished, so the price for completing the tutorial will be close to zero.


Step 2 - Launch Your First Server Machine

Our server setup will consist of two parts:

  • Application server hosted on Amazon’s Elastic Computing Cloud (EC2), running Apache and PHP, with WordPress installed on it.
  • MySQL database hosted on Amazon’s Relational Database Service (RDS).

Another cheaper, but more difficult, option would be to manually install the MySQL server on the same machine with Apache and PHP. In this tutorial, I decided to go with the Relational Database Service because of its ease of use, as well as the fact that, this way, Amazon will take care of backups and maintenance for the database, and you won’t have to worry about that level of additional security.

Let’s start by creating our first application server instance.

Click on the EC2 tab in the AWS Management Console. As this is your first time using the EC2 service, you will need to separately sign up for it. Click on the “Sign Up For Amazon EC2″ button:

As a special step, Amazon will verify your identity by placing a call to your phone. The whole process is automated: you type a code from the web page into your phone and, once the system has verified that the codes match, you will be redirected to the next page.

When you are finished with the sign up process, return to the Management Console and the EC2 tab. You will see a page that looks like this. Click on the “Launch Instance” button.

A popup with a list of Amazon Machine Images (AMIs) opens.

AMIs are snapshots of running computers.

Most consist of an operating system and a few utilities, but you can create AMIs with as much complexity as you wish — even containing your full application, ready to be started on a virtual machine with a click of a button.

We will pick the most basic option: “Basic 32-bit Amazon Linux AMI 1.0.” Click on “Select” next to the AMI and you are ready to go.

After selecting the AMI, our next step is to decide what kind of hardware we will use to run it. Depending on whether you picked a 32-bit or a 64-bit AMI, you will see a different list, the 32-bit AMIs offering the cheaper options.

For testing, we don’t need much memory or processing power, so we will start with a Micro instance. Select the instance type and click “Continue.”

In the next screen, the defaults do just fine. Click “Continue.”

When you have many machines with different roles, it’s easy to get lost with the machines and end up spending a lot of time searching for the right machine. Naming the machines helps a lot. In our case, naming is not too important, as we will run only one EC2 instance, but let’s give it a name anyhow. Enter your desired name and click “Continue.”

Next, you will be asked to create a key pair file for securely connecting to the machine. The key replaces a password when connecting to the machine with SSH. Name your key pair file, and click on “Create & Download your Key Pair.” Copy the key pair file to a safe location (A good place, if you are on a Unix system such as Mac OSX or Linux, is ~/.ssh). After copying the file, change its permissions to 400:

 chmod 400 wordpress_demo.pem 

If you are using Windows, you probably use PuTTY for SSH. PuTTY uses its own key format (ppk), so you will need to convert the key to that format by using the Puttygen tool available at the PuTTY download page.

After you’ve created the key pair, you will still be asked to configure the firewall for your new machine. By default, no one is allowed to connect to the machine — every port is closed. Let’s open ports 22 (SSH) and 80 (HTTP), so we can configure the machine over SSH and access the blog from a browser. Select the type of connection from the drop down list at the bottom of the popup and click on “Add Rule.” When you are done with the setup, click “Continue.”

Review the configuration, and, if everything appears to be correct, click “Launch.”

Now the machine is launching! Close the popup to return to the dashboard. At first, you’ll notice that the instance’s status is set to “pending,” and within a couple of minutes it switches to “running.” This means the server is up and running — you can start using it.

When the machine is running, it can be accessed through the ports you defined in the firewall configuration. Let’s use SSH to connect to the machine and finish its setup by installing Apache, PHP, the MySQL extension to PHP, and finally WordPress.


Step 3 - Install Required Server Software

Right click on the name of the machine, and select “Connect” from the drop down list. A popup with an SSH command will open.

Highlight the command, and copy it to a console if you are using a Mac or a Unix machine. The command will be similar to the following:

 ssh -i wordpress_demo.pem root@ec2-....compute-1.amazonaws.com 

If you saved your pem key to ~/.ssh, update the path in the command. Also, you’ll need to change root into ec2-user — Amazon hasn’t yet updated the command to match its new AMI setups that don’t allow connecting with the root user.

If you are on Windows, or prefer to use a more graphical SSH application, simply copy the name of the machine and open it in your SSH application of choice. Remember to use the user name ec2-user and the related key pair file (wordpress_demo.pem).

Once logged in, you can use the virtual machine just as you would use any Linux machine.

To install software, we will use an easy to use installer called Yum. First, to install the Apache web server, type the following command:

 sudo yum install httpd 

The installer asks you to confirm the package to install and possibly some other steps as well. Reply with “Y” to every question, and, in no time at all, you will have Apache installed.

Next up, PHP:

 sudo yum install php 

And the same for the MySQL extensions:

 sudo yum install php-mysql 

That’s it: the setup is done and we are ready to test Apache. Start it with this command (you can later replace “start” with “stop” or “restart” depending on what you want the web server to do):

 sudo /etc/init.d/httpd start 

The web server is up, and you can test it by copying the URL of the machine to your browser:

Step 4 - Create the Database Machine

Before installing WordPress, we still need a database. Setting up a database using RDS is as easy as entering some values to a couple of settings screens and pressing a few buttons, so let’s get started.

In your AWS console, switch to the RDS tab. As you have never used the service before, you will be asked to enable it. This time, the process is much faster and simpler than when you enabled EC2. Click on “Sign Up For Amazon RDS” to get started.

Follow the process through and, when you are finished, head back to the RDS tab in the AWS console. The screen you will see looks a lot like the EC2 console we used in the previous step. Click “Launch DB Instance.”

In the popup that opens, you can choose the properties for the database server to start, such as the server instance and storage space to allocate. Let’s pick the smallest values as they are more than enough for our simple test.

Pick a name for you database server and the root user on it. I used “wordpress-db” as the database server name and “root” / “rootpass” as master login. Not the most secure of options, mind you, but this machine is not intended to last for long, so it’s okay in this instance.

After setting up the database server information, you will be asked to define a default database to be created on the server. We will call it “wordpress” to follow the WordPress conventions. The rest of the settings on this screen can be left untouched.

On the next screen, you can define settings for database backups. For now, leave the values to their defaults and click “Continue.”

After verifying the settings, click “Launch DB Instance.”

Creating a database instance takes quite a bit longer than creating the EC2 instance, but after about five minutes of waiting, you should see the database instance as “available” on the instances tab.

Click on the instance to see more data about it, then copy the “endpoint” value. This is the URL of the database server that we will use in the WordPress setup.

There is one more step before we can move on to installing WordPress: we need to configure the firewall for this database so that the application server can access it.

Still on the RDS tab in the AWS console, click on “DB Security Groups.” You will see that there are no authorizations yet:

To give our application server access to the database, we need to authorize its security group to this database security group. Select “EC2 Instance” from the drop down list below “No Authorizations” and enter the name of the security group (“wordpress_app_server“) and your Amazon Account ID to the two text fields that appear next to the drop down list.

The account ID is hidden quite deep in the AWS settings: you’ll find it by first clicking the “Account” link at the top of the page, and then the “Security Credentials” link on the page that opens.

After you’ve entered the required information and clicked “Add,” you will see the security group as authorized. We are ready to install WordPress.


Step 5 - Install WordPress

If you are not connected to the application server anymore, open an SSH connection to it again. We’ll start by downloading WordPress on the machine. By default, Apache is configured to look for HTML files from /var/www/html/, so let’s download WordPress to that directory.

 cd /var/www/html 

To make things easier in the future, we will change ec2-user to be the owner of that directory:

 sudo chown ec2-user . 

You can download WordPress to your own computer and upload it from there using SCP, but I find it easier to download it directly to the Amazon machine using wget:

 wget http://wordpress.org/latest.zip 

This way, the WordPress package goes straight to its final location and all you need to do is to unzip it:

 unzip latest.zip 

We are about ready to start configuring the blog. As our last step in the command line, change permissions of the wordpress directory that was just created so that the installation script can create the wp-config.php file:

 chmod o+w wordpress 

Now, open the WordPress URL in your browser (The URL of the EC2 instance followed by /wordpress). Click on “Create a Configuration File” and then on the next page “Let’s go!”

You will end up on a page for entering the database settings. Enter the database name, user name and password, and the URL of the RDS instance. Then click “Submit.”

You are almost set. Configure the rest of the blog details to finish the installation and enjoy your newly created blog.

You have successfully installed WordPress in the cloud!


Step 6 Stop Everything

As I mentioned at the beginning of this tutorial, AWS billing is based on the hours of usage, so to make sure you are not billed for time that you are not really using, make sure to stop everything once you are done testing.

First, stop the EC2 instance by selecting it from the admin, right clicking on it and choosing “Stop.” If you later decide to start the machine again, all you need is to click on “Start” in the same drop down list and the machine will resume from where you left it.

Stopping the database is just as easy, with the exception that you can’t resume the database again. That’s not so nice, but luckily you have the choice to save a snapshot of the data while stopping the database. You can later use this data to recreate the database setup whenever you need it again.

On the RDS tab, right click on your database instance and select “Delete.”

Verify that everything is stopped and log out of the AWS console. Your blog is gone, just as fast as it started.

Thanks for reading! I hope you learned a bit!

Note: Want to add some source code? Type <pre><code> before it and </code></pre> after it. Find out more
  • http://www.dansmart.co.uk Dan Smart

    Thanks for this article, very clearly laid out. Do you (or anyone else) have any example of the sort of costs we’re looking at for running an annual EC2 instance? Of course cost will vary as visitors and content will vary, but is there some baseline that anyone can suggest?

    Thanks,

    Dan

    • Pothi Kalimuthu

      It costs about $120 per year (on a micro instance). For the same price, there are plenty of hosts offer lots of things. But nothing comes to running our own server on Amazon AWS at this price tag.

      • http://www.optimiseweb.co.uk/ Optimise Web

        I’ve tried the Amazon EC2 service. It costs beyond reason, small websites. If you were looking at deploying a high traffic site, resource demanding one, then it might be ok. For a simple WordPress blog / site, Amazon EC2 is an overkill.

      • http://sergeyvlasov.com Sergey Vlasov

        In fact, thanks to Amazon’s free tier, you can have practically free hosting for a year (and then switch to another account ;)). Don’t forget, you don’t have to have separate instance for database. Just install MySQL on the same box (localhost). it’s exactly what I’m doing for my personal projects.

    • http://madebyraygun.com Dalton

      I agree, a real world estimate of what it would cost to run a WordPress site on EC2 would be great. I’ve been reluctant to try this out for fear that it would cost me an arm and a leg.

    • http://madebyraygun.com Dalton Rooney

      OK, a quick run-through on the pricing calculator suggests that a minimum charge for a month’s worth of EC2 service is $61 (micro instance, 613 MB RAM) and the minimum charge for RDS is $79. So that’s $140 before we even get to bandwidth and storage.

      With a Rackspace Cloud Server, you could get a server instance with 2GB of RAM for $87 a month plus bandwidth. So it seems like that might be a better deal.

      • http://madebyraygun.com Dalton Rooney

        Ah, Pothi, I see you’re right, I was calculating for a small instance. Micro is much cheaper. But what about the $0.11/hour for the RDS?

      • Pothi Kalimuthu

        Unless we are running a high-traffic website, we don’t need RDS. Every instance comes with a MySQL server on its own (if not, running “sudo yum install mysqld” will do). We could use that instead. In the end, it is only about $120 per year.

    • http://www.webmastersessions.com James

      I have found Amazon’s simple monthly calculator to be quite useful in these situations. You can calculate an estimated cost of what it would be to host your website(s) with EC2.

      http://calculator.s3.amazonaws.com/calc5.html

      • Xenonnn

        Now it appears to be a lot cheaper. You can get a micro instance for three years for just $82. This is about $27 a year which is cheaper than most web hotels. And I’d prefer having a virtual server any day, the freedom is incredible.

  • http://wedoev.com srikanth

    But to have my own custom domain How to?

  • http://bestofjquery.com/ Andres Hermosilla

    How would you point to your domain name using an EC2 server?

    • http://www.webmastersessions.com James

      In the EC2 control panel, assign an elastic IP address to your instance. In your DNS zone file record, point to the elastic IP address.

  • TommyBs

    Could you expand on this tutorial a bit and show how we might use a load balancer and configure replication across DB servers? That’s a pretty big part of making it scalable and it would be useful to see how it is done.

    Thanks

  • David Somers

    Doing this will result in a blog incapable of scaling. I could take down any blog set up this way from my iPhone, let alone a full machine:

    See my blog post about it: http://jalada.co.uk/2011/02/04/how-to-bring-down-a-poorly-deployed-wordpress-and-how-to-stop-it-from-happening.html

  • http://blog.larshaendler.com Lars

    I’m quite sceptical about this setup. Installing httpd and mysql is not that hard but keeping both secure and well protected is. I rather spend some money on good security of my system and stay with my hoster.

  • http://www.jungledragon.com Ferdy

    The level of costs is a very valid concern for small developers. As far as I know, all these services from Amazon also charge for bandwidth (network in and out), and there is no bill capping feature where you can set a max amount of $ to charge per month. This means that if somebody, accidentally or not, floods your instance with requests, it has the potential to financially ruin you. Some users in the forums are indeed a victom of this, getting a bill of thousands of dollars.

    • Pothi Kalimuthu

      That’s a valid point.

  • http://www.rahulparekh.in/ Rahul Parekh

    This will be expensive for any small blog or website. Plus the costs can shoot up depending on the traffic. Also calculating your monthly costs is going to be tedious and I’d rather avoid this till we see some improvements in cloud computing with regards to pricing.

  • http://mustified.com/ Shikeb Ali

    this is not really for the small bloggers or website owners, but still I wont count those 6-7mins reading time as wasted.

  • http://sarugu.com Albert

    Thanks for your illustrated examples.
    But hosting the whole site in the Amazon cloud severs won’t get some SEO benefits.

  • http://www.tfriesen.de Thorsten

    Awesome!
    Nice article to understand how aws works. Thanks!

  • http://www.venicecreatives.com Sean Kelly

    Dealing with the AWS system directly just for a WP install is a lot of trouble to just launch a WP site.

    You’d be better off sticking it in rackspace for cheaper, actually having very good support (real people), an easier to use/manage interface and taking advantage of s3 for static file content.

    Also, RDS is cheap but Id’ recommend using Mysql with EBS backups if it’s a serious site, considering scalability, HA, using HAProxy over ELBs and sticking in a memcache layer.

    We specialize in cloud development and will always stand behind the reality that AWS is amazing, just not for dealing with directly. Take advantage of a system like rightscale (templates out of the box) if you actually need the HA that the cloud can provide, otherwise, go with a provider who makes it easy for you and lets you call them on the phone.

    To date, we’ve launched almost a hundred WP based sites that are cloud based using both AWS and Rackspace and while AWS is without question the tool for the job when you are hitting 300 requests per/second, Rackspace is much better if you are just getting started or even need a tiered architecture without the scaling capability (you can use rightscale here too). With the recent amazon crash we only had one site go down as it was scaling while EBS was having issues. We managed to fail over from AWS through rightscale to rackspace through rightscale on roughly 60% of the site when it was needed.

    As far as the tutorial goes though, the detail was great and I would agree it’s worth anyone interested in getting in a playing with the cloud at all to run through it.

    Nice job!

    - Sean

  • http://inspirationfeed.com inspirationfeed

    Great article, let’s just hope the Amazon outage wont happen again…..

  • http://www.BlaineSch.com BlaineSch

    Interesting to read! There should probably be an easier way to turn off your database.

    $120/year? I’m paying a few dollars a month for my host.

  • http://www.standingcloud.com Dave Jilk

    Or, you could go to Standing Cloud (www.standingcloud.com) and have a free WordPress test drive running on Amazon with a few clicks, in about 30 seconds (or paid hosting running in a few minutes); you have full control over the server, and you can move the deployment to a different cloud service (10 at last count, including Rackspace, GoGrid, OpSource, SoftLayer, Linode) with a few clicks, or to a different size server, or copy the deployment to a new server temporarily to test a version upgrade.

    Although this post is a good detailing of the manual steps, there’s just no reason to do this manually any more, and many of these steps are very particular to Amazon, which as most people now know, is not the entire “cloud.”

    • Ken Savage

      Dave, is this something StandingCloud can do now? I’m looking for a service where I put in my domain and maybe some config stuff and then launch the website. Got something like that now?

  • http://www.exposecreative.net Mischa Colley

    I love Nettuts! I was just thinking about the possibilities of hosting my WordPress site with AWS so I decided to check if there was anything here an there it is. The latest post. Simply awesome. I nice clearly explained walk through of the basics of getting set up. Thankyou.

  • John

    It’s nice, but Im lucky to have my own cloud server setup.

  • http://www.jstiles.com Jason Stiles

    Nice job, I think I’ll bookmark this tutorial in case I venture into AWS myself for any of the crazy ideas for web apps I got going on in my head!

  • Me

    Even the cheapest RDS solution will cost you roughly $80 a month, so using your own MySQL server on your VPS is the way to go. If you do that you could do it as cheap as $11 a month (a VPS on Rackspace Cloud on which you can install MySQL, Apache, and PHP). Even a small VPS with 256 MB RAM can take quite a large number of hits.

  • http://itcutives.com Jatin

    Never thought of putting WP to Amazon. Nice article.

  • http://yeuhost.info YeuHost

    I was hear many times about using Amazon Cloud Server as a part to save your contents, includes streaming or zip file. :) Thanks for nice introduce.

  • http://www.hostalia.com Hosting España

    Interesante información :)

  • http://grid.vu/sirwan Sirwan Qutbi

    And how would you use FTP for Theme Development .. I mean how do I work and program my blog?… good article but not very insightful into the possibilities of it.

    • eddy

      I wouldn’t recommend you using this solution if you have no experience with linux, because that’s just what the ssh part is, you install those services yourself.

  • eddy

    what about the free tier?
    http://aws.amazon.com/ec2/pricing/
    Doesn’t this mean a small website is just for free?

    • Me

      It’s only free for a year, and it doesn’t seem to include RDS.

    • http://www.romaindesplanques.com Romain

      You could use SFTP (FTP through SSH).

  • http://www.csshtml.co Gautam Lakum

    Hey! I got what I was looking for. Great post. thanks.

  • http://creditorwatch.com.au/express Dale Hurley

    This article finishes too early. It misses points about Static IP and DNS configuration. Without this setup your URL is something really bad.

    • http://jarkkolaine.com Jarkko Laine
      Author

      Sounds like there is some demand for a follow-up :)

  • http://www.swastiksolutions.in Hiren Khambhayta

    Thanks once again, was trying to learn the cloud server and this one has helped a lot.

  • http://cubex.nl Danial Keshani

    Fantastic tutorial! really straightforward and helpful and thanks a lot for reminding everybody to stop all services. Anyway, I am really surprised by the expensive rates of RDS…

    • http://cubex.nl/ Danial Keshani

      By the way, I do agree with Dale about DNS management issues. that is important for running the service completely.

  • http://www.adsgah.com آگهي رايگان

    i want use it but i have problem with database who can help me?i want devlop my wordpress blog
    10setare wordpress

  • http://bit.ly/cLZXGi Julian

    Excellent article. After I’m done experimenting with WordPress, I’ll move unto the good stuff, deploying ExpressionEngine (my CMS of choice) to the cloud. The way I figure it, once you get WordPress, you can swap out any PHP based CMS and install it on the cloud.

  • AJ

    Awesome tutorial Buddy. Amazon’s site has a lot of Junk and going through all that is a Huge Task. You just made a very tedious and Difficult much Easier. Thanks Buddy

  • http://jarkkolaine.com Jarkko Laine
    Author

    Thanks for the comments, guys! Good to hear you found the tutorial interesting.

    I agree that Amazon’s pricing is high enough to make it too expensive a choice for bloggers who don’t really need the scalability options provided by load balancing etc. While you can make the setup cheaper by running MySQL on the same machine with httpd so that you don’t need RDS but can use just one instance of the server machine, for many bloggers a better solution is just sticking to a regular web host. The power of AWS becomes clear when you outgrow shared hosting.

    This was an introductory tutorial so my goal was to explain the basics of setting up machines on Amazon and to give an inside look at what hosting machines in the cloud actually is like (setting up an Amazon account just to see how these things work might not be everyone’s idea of entertainment). Based on your feedback it sounds like a more advanced follow-up that explains database replication, load balancing, etc. would be in place.

    I’ll get to work to write one :)

    • Ken Savage

      Jarrko, any plans on writing a more advanced article on WordPress and AWS?

  • http://www.alovilla.com alovilla

    ??

  • Saad Salman

    Nice article. Would like to try this any other time. But what about using any cheap hosting service for WP Site & using RDS as an external db solution?

  • http://krishaamer.com Kris Haamer

    Great article! I followed the steps and got everything installed and working fine. Now I have some questions how to continue forward. 1) How do I install plugins (Amazon has no FTP access, right?) and 2) How do I configure the domain name, good-looking URIs (for example, how to get rid of the “/wordpress” in the URI), etc.

    Cheers,
    - Kris

  • http://test7.com jetestcest

    Votre site est très intéressant merci beaucoup.

  • http://medalertbracelet.net Wilsa S

    It all sounded so hopeful until I started reading about the cost. Sounds like this AWS service and a wordpress blog are a huge mismatch.

  • http://www.kindlevsipads.com kindle vs ipad

    The truly compelling difference between the two readers, that is likely going to make an impact, is iPad’s ability to perform multiple operations. Kindle is a reader and nothing else, it is purely functional, and its function is to be a book.The iPad on the other hand has a multitude of functions, it provides the user with music, videos, games, etc.iPad is less of a simple reader, and more of a small computer. This is iPad’s strongest defense in the battle of kindle vs ipad

  • http://www.richpeopleshomes.com Yordan

    Very useful and helpful article I learned things that I never knew before. Thank you for sharing it with us.

  • http://bestofsunglasses.info Darrius Mantooth

    Im thankful for the post.Really thank you! Really Wonderful.

  • http://culturefarm.co Dennis Smolek

    I am running into issues now on the default install of all mail not working from EC2.

    Now I know I could simply use a SMTP redirect service but I dont understand why by default its not working.

    I’d also like to point out that by default the pretty permalinks dont work and apache has to be adjusted to make this work..

  • http://www.teknoPolitik.com @johnsin

    Thank you so much for making the whole AWS cloud deployment guide. I didn’t want to attempt this myself!

  • http://wpdirecto.com Wordpress cloud

    Good instructions for add my wordpress in cloud with amazon :)

  • http://www.wpfix.org Wpfix

    Nice tutorial we also do setup amazon cloud servers to speed up their site!

  • http://blog.oxfordcc.co.uk Luke Canvin

    I’ve been trying out WordPress running on the Windows Azure cloud (which they recently revamped and is now really nice to use) and getting it set up on Azure is so much easier than Amazon. I blogged about how to do it: http://blog.oxfordcc.co.uk/set-up-wordpress-cloud-windows-azure/

  • http://yourstoryclub.com Chief Editor

    Excellent tutorial. Exactly what I wanted. Thank you very much. Could you also guide how to share public html with other instances so that we can make cluster accessing same data and database.

  • http://www.computenext.com Eamonn

    I’m curious to anyone who has moved onto AWS from having used a more atypical hosting set-up in the past. At what point does it become cost effective to host your WP in the cloud?

    On a more spammy note, has anyone tried using any of the other myriad of cloud providers out there? I don’t work for one in particular but our website ComputeNext.com aggregates cloud providers (so you could spin up a VM / even a WordPress image in a much larger footprint).

    For example through our portal you could search for a cloud to host your WP in your region, say France or Brazil.

  • http://bloggermind.net Jadah

    HI Jarkko, thank you for one of the must simple to follow tuts on Amazon aws, I was wondering if you recommend to use it for hosting a facebook app, since I have one and it is running on a hostgator vps, currently with 100 users a month, each handling tons of requests.
    You see, I dont want my app to go down if the 100 users go up to 1000 , and found that many developers are using Amazon’s service to host their apps.
    So I was wondering if I should use the same tutorial for hosting an app, or if you have any recomendation on this particular scenario…

    Thank you!!
    PS this is my app by the way: http://www.facebook.com/Bloggermind/app_369700189736413

  • Viral

    hii!
    i am making one product for that i want to run WPMU on amazon cloud. what configuration i need to host wpmu on amazon ?

  • http://sdbwebsolutions.com Sdbeng

    Great tutorial!

    I am currently running a WP site on EC2 and the monthly cost is approx. $14/mo. with a traffic of less than 200-250 visitors/wk, sometimes more, but the thing is you can save money also by storing your media and files on S3.

    The result is a lightning fast site, much better than a shared hosting performance.

    I have mysql running on the same instance…

    Thanks!

  • brian

    You, my man, are extremely helpful. Even being a complete noob to AWS & vps’s, I followed your instructions to a T and had no problems. Well done & thanks a ton!

  • http://www.eukhost.com/ eUKhost

    Thank you so much for such a wonderful information.

  • PeterKenneth24

    GNAX provides cloud hosting services, colocation data center and cloud computing services for enterprises and companies across the globe. http://gnax.net/

  • Brandon

    When I load my landing page I see only a tomcat server page. My wordpress blog is located at /var/www/html/blog. When I navigate there I get a 404 error. Can someone please help me.

    Brandon

  • Brandon

    I am now able to navigate to my rds endpoint of my database instance but it gives me a 502 error. Can anyone help with that ?

  • http://twitter.com/SamAlbanie Sam Albanie

    Great tutorial! It’s worth mentioning that if you want to set up a nice domain name (i.e not something like ec2-randomshizzle-compute-1.amazon.com), you should associate the elastic IP before you install WordPress on your Amazon server. Otherwise, you have to change the configuration files afterwards which can get a little awkward!
    Cheers,
    Sam