

Ask HN: Starting up on AWS? - nopal

I'm getting close to launching my first startup, and I've been planning on using AWS to host. But after this week's issues, I think I'm obligated to ask whether or not that's a good decision.<p>The AWS outage spawned a number of related blog entries, and several of them discuss overall issues with AWS.<p>My plan was to launch on a micro instance that hosts both web and database sitting behind an elastic load balancer (ELB), with a spare medium web-only instance ready to fire up to offload requests from the micro instance.<p>At this point in time, I understand that if an AZ or region (or any single critical construct) goes down, so will my site. For launch and the first couple of months, I'm fine with that, given the relative rarity of these problems.<p>My bigger concern centers around my app and how it fits into AWS.<p>My app is written using the Django Web framework and is backed by Postgres. The instance that hosts the DB is using EBS.
I'm comfortable with backing up the database using traditional dumps and EBS snapshots, and I can provision a new server and have it ready to go in short order.<p>What worries me is that AWS instances don't seem to perform like other servers, particularly when it comes to EBS.<p>Several of the posts I've read discuss strategies for dealing with the AWS shortcomings (limitations?), but most of them seem to require re-architecting a custom app, not using a framework like Django.<p>My site is not going to be super-highly trafficked, so I don't want to do more than I need to for launch (e.g. DB farm + web farm + cache farm). I'm just trying to figure out what I need in order to get off of the ground.<p>Does anyone have any good advice for deploying a "standard" framework-powered app?
If so, I'd greatly appreciate it.<p>P.S. If you'd be willing to help beta test the site in two to three weeks, I'd love to have some HN user feedback. If you're interested, please e-mail me at bretwalker -&#62; gmail.<p>Thanks!
======
ra
I run Django apps on AWS and two other VPS providers and I wouldn't walk away
from Amazon because of this outage. Amazon have some great features that
collectively aren't available as a package elsewhere.

My tip would be to host the db and app server on a single instance to start
with (less things to go wrong), and assume that server will fail.

Have a warm standby either in another AWS region or (like us) with a
completely different provider. And make sure you have several copies of your
data available to restore if need be. (For this I use dirvish on yet another
VPS provider).

Finally, test your failover / restore procedure on a fairly regular basis.

My email is in my profile. Feel free to ping me if you have any specific
questions.

~~~
mainguy
You've hit on the key thing with the cloud... assume things will go wrong and
accept it.

~~~
nopal
But does that mean that it's a requirement to have a second server up and
running at all times (in order to be constantly receiving data from the main
server)?

~~~
ra
That depends on your tollerence to downtime and data loss. We have dirvish
taking snapshots every hour, in addition to live mysql binary log replication
to a hot standby server.

------
sradnidge
I think Quora's err page summed it up best - "We wouldn't be where. we are
today without Amazon". There are lots of discussions about variable EBS
performance from larger consumers around the web, i've yet hear smaller
players get vocal about it (or vote with their wallets). So until you become a
large consumer it's probably not worth being too concerned about it.

