Now that I've had some time to play with the Amazon Elastic Compute Cloud (EC2) beta, a few comments.
First of all, it's incredibly easy to fire up an instance, log in, and play around with your virtual Linux box. At that point, you can login as root, create users, install software -- anything you want, it's your box. Some of the pre-built packages supplied by Amazon come with Apache and MySQL preloaded. This is a great way to fire up a development or test box whenever you need one -- at only $0.10 per hour.
The economics of EC2 for use as a production server (that needs to be running all the time) depend on what you need. If you're looking for something that will compete with a typical low-end shared hosting account, this isn't it. An EC2 instance will cost you about $72/month plus bandwidth and storage costs. This is, however, an exciting alternative to traditional virtual or dedicated hosting.
A couple things still need to be worked out. First, an EC2 instance has no persistent storage. When your instance dies or is rebooted, all its associated disk and memory die with it. There will be some ways around this. I'm sure Amazon has something in the works, and many other folks are also experimenting with (the obvious solution of) making Amazon S3 mountable as a drive, for unlimited persistent storage. Second, your IP address lasts only as long as your instance. You'll get a new IP address each time you boot. And currently there is no way provided by Amazon to map your domain name to your EC2 instance. You can either stick with the domain name provided by Amazon, or use an external DNS mapping service to point to your server.
Considering that EC2 is new (and barely in beta yet), these limitations don't matter. A lot of people are going to be building a lot of exciting things with EC2. As someone else said somewhere, Amazon is building the real Web 2.0.
