I vividly remember talking to Werner Vogels a year and a half ago when we went out for lunch when I was in Seattle for a visit. Werner’s job was to go to Amazon to enable global-scale computing. Sure, they were already doing global-scale computing for their e-commerce properties and partners but I had no idea that what he really wanted to do was enable global-scale computing for everybody!
Today, Amazon announced their Elastic Compute Cluster:
Just as Amazon Simple Storage Service (Amazon S3) enables storage in the cloud, Amazon EC2 enables “compute” in the cloud. Amazon EC2’s simple web service interface allows you to obtain and configure capacity with minimal friction. It provides you with complete control of your computing resources and lets you run on Amazon’s proven computing environment. Amazon EC2 reduces the time required to obtain and boot new server instances to minutes, allowing you to quickly scale capacity, both up and down, as your computing requirements change. Amazon EC2 changes the economics of computing by allowing you to pay only for capacity that you actually use.
Capacity planning and operations management are things that are often ignored at startup companies. When all of a sudden traffic spikes and you’re unable to scale until the new servers arrive next week you’re screwed. But the ability to add additional capacity in minutes is an enormous leveling force. Also, the ability to scale up and down is just as important. You can greatly reduce your operational costs by not paying for the compute power until you need it.
Makes me want to do a startup company now :)
Update: It looks like someone has already setup a public app. You can look at this really simple Rails application running live on EC2. Really, really cool.
Update2: Jon Udell has now made a screencast showing a Python application running identically on both a local machine and a machine in EC2.