Requires Free Membership to View
When you register, my team of editors will also send you the latest expert resources covering all areas of server virtualization, such as platforms, architectures and strategies, server hardware, managing virtual environments, application issues and more.
Cathleen A. Gagne, Senior Editorial DirectorEC2 is a very interesting offering from Amazon, and I expect to see more projects like this crop up as open source virtualization solutions such as Xen (the software EC2 uses), KVM, and OpenVZ mature. As more for-rent compute farms like EC2 become available the competition will drive prices down, but for now the competition is small, so the current sellers can dictate the dollar amount you pay for this service. However, that said, the cost of EC2 is very reasonable, only .10 for each compute hour. That is only $72 for 30 days. There are also charges for amount of bandwidth consumed external to the cloud (.20/GB) and backing storage (.15/GB on Amazon's S3 storage model). You can create and configure 100 AMIs (although the number is limited to 20 in the beta) and only pay for those that are running. This allows you to configure several hundred database servers and only boot 3 initially. You can monitor your application and if database performance starts the monitor could react by booting more of your database AMIs.
How does EC2 compare to you virtualizing all of this yourself? Well, how cheaply can you do it? And do you care of someone else is hosting your data, or would rather retain that in house? Those are really the two questions that you need to answer. If the answers are "not very" and "I do not care" then by all means, use EC2.
Database servers are not always prime candidates for virtualization because of the high disk I/O they produce. However, depending on how Amazon has its AMIs configured on the back end, a lot of this lost I/ O can be recovered. An alternative would be to actually find a service like EC2, but instead of offering blank VMs it would offer a load-balanced database that your application could take advantage of. As you pointed out, you could build this yourself with EC2, MySQL, and your own load balancer. Is it cost effective? Do you have the time? These are questions I cannot answer because I do not know your business, but hopefully I have given you enough information that you can now answer them yourself with confidence.
Hope this helps!
This was first published in April 2007