I have received a lot of great feedback on my Cloud Computing Examples post and want to share some thoughts on supporting resources in the Cloud.
Much like managing physical servers, maintaining resources in the cloud will fall on the shoulders of the System and Application Administrators, and these administrators are always looking for tools and scripts to help them automate their duties.
Starting, stopping and rebooting instances in the cloud is a little trickier than starting, stopping and rebooting resources on the server in your computer room. Should there be a real problem with the resource in your computer room, you can always go into the computer room and power down your hardware and restart, knowing that everything (bios, drivers, memory) have been initialized. But this is not true in the cloud, because in the cloud, you can count on re-initializing your resource, however it takes a little more work to make sure that it comes back.
This is one of the points that Justin D. Leider made in his Running your own hardware vs EC2 and Rightscale post. Justin points out the issue of maintaining persistence after reboots. Paul Stamatiou outlined how to do this in his Getting Started with EC2 post, and recently Lubos Rendek who contributes to www.linuxconfig.org, outlined a strategy to create and maintain a EC2 bundle for Ubuntu with this post How to CREATE-BUNDLE-UPLOAD & ACCESS custom Debian AMI using ubuntu.
These are all great examples and really show the need for products and services that can help automate these functions. We need to make the support of resources in the cloud, similar to the support of resources in our computer rooms. That means balancing cloud access, security, performance, reliability, backups and recoverability, and ensuring that these new types of services are as maintainable and supportable as the services in our computer rooms.