We need Static IPs. Dynamic IPs don’t work for a reliable web server. Hopefully a solution will come combined with a simple load balancing option.
SQL database: I think that what’s really missing is a SQL
database service. Yes, I can run mysql or similar on EC2, but it’s
really not a good fit. The lack of persistence is not a show-stopper
but it is a pain right now. But more importantly, the machine specs for
CPU speed, memory size, number of spindles, and disk space just don’t
cut it. There isn’t enough oomph there to run a real database-backed
web service. Amazon needs to step up and offer a D2B service:
Distributed DataBase. I’ll pay for storage at 2x the cost of S3 (since
DB storage tends to be more expensive) and $.20 per MegaTransactions
(equivalent to $0.20 for 1 hour at 277 tps). Well, 2006 isn’t over yet,
is it :-)
The lack of persistence is not an real showstopper issue. The only set-up I could
imagine that would really improve things is if they had SAN type of
storage attached to their machines. This way the machine can be fried
and your data is still intact on the SAN and can be mounted on a fresh
machine. Use RAID on the SAN to safeguard against failures there or
against datacenter-wide outages. At that point, failures should be down
sufficiently in probability that a “disaster recovery” type of backup
is sufficient. For example incremental backups to S3 every 10-30
minutes. Alternatively all enterprise class SANs have mirroring
options. You could pay Amazon a few more bucks to be allocated on a
wide-area mirrored SAN partition. But all this gets into big bucks
quickly, even on an Amazon scale, so I don’t think we’ll see that
anytime soon.
I believe the persistence issue will be solved though log
replication. Replicate database logs to another instance or to S3 in a
real-time manner and have EC2 give you some control over the placement
of instances so that a cluster pair has some degree of failure
isolation. For files use a log-based filesystem and also replicate the
logs. Ok, all that will take some time for people to sort out, but when
they/we do, everyone will benefit, not just EC2 users because all this
is not just an EC2 problem. Your machine at joe-hosting.com is just as
affected. Just that usually when it crashes your disk doesn’t get
wiped, or if the motherboard dies joe moves the HD to the new box for
you. Just wait until something more interesting happens, or the
datacenter goes out for a few hours and the data is as good as gone
because you have to bring up your disaster recovery datacenter after 30
minutes of outage and once traffic hits it you can’t merge any data
recovered from the old box back in anymore.
Top missing features for Amazon EC2
All my blogging activity is currently focused on RightScale, so I don’t have much time to blog here anymore..
EC2 has definitely become very real for us at RightScale and our customers. In fact, we can’t imagine going back to anything else at this point. Overall since last year, we have noticed that instances are much more stable than initially feared, which reduces the risk factors a lot. With the automation tools we have in place, everything is “in control” and the benefits outweigh the risks so much. I have to say that if your database outgrows a single instance then you have to look into partitioning/sharding (for example by users) so you can scale to multiple clusters. This is definitely the way to go, but I wish it were easier to implement this.
This post is one year old, but today rightscale.com (you) just announced a lot of new features http://info.rightscale.com/content/features regarding services based on Amazon EC2 and S3. Does that means that you addressed all the missing features you are talking about here.
Amazon EC2 interests me just because of scalability based on CPU billing per hour and the ability to scale in case of success. I know that dedicated service could be cheaper, but when you launch a social web service you never know if it will rock or not. I don’t know how twitter.com, pouwnce.com are hosted, but the all faced these kinds of problems.
So is your new feature list in contradiction with your post ?