I’m not sure how I missed this, or how long it’s been available, but as the next logical step after their “storage as a service” S3 solution, Amazon has come out with with the Elastic Compute Cloud (EC2). Essentially this combines server virtualization (which if you’ve worked with me, or heard me talk about work, you know I’m all about lately) with the massive server farms at Amazon via an ever-expanding web service system. Basically you build or choose virtual machine images and run them on an arbitrary number of virtual servers at Amazon. It’s “dedicated server” hardware co-location without the hardware. The idea is you can create an entire “data center” by interconnecting these images–for example, running several web servers, against a couple of database servers. And if you need to double the size of your data center, it’s a batch copy to invoke more servers–just pay for the “instance hours” you use. This is heady, brain-baking stuff. They even have a pre-built Window 2003 Server image running under Fedora Core 6 via Qemu (itself a virtualization environment). Hey, wasn’t I just talking about turtles all the way down?
So, how much does all this cost? The short answer is, you pay for the flexibility–it’s more than root access co-lo for a single-server setup. The long answer is, to run a web server, it’s about $100/month (1 CPU @$73 + 160GB storage @$24), plus bandwidth (where you can really get killed). Compare this to, say, the $100/month root server plan over at 1and1, which comes with two terabytes of transfer (maybe… many ISPs will throttle or boot you if it even looks like you’ll approach the max on your plan). All things being equal, that transfer would cost you an extra $300 at EC2.