Although discussions of providing computing as a utility have been around
for quite some time, the real physical implementation of cloud computing
came when Amazon announced Elastic Computing 2 (EC2) on August 25,
2006. The (unverified) folklore is that when Amazon’s CEO visited the company
data center, he was amazed by the number of computers. Since data centers,
like most other computing facilities, are designed to avoid crashes when
overloaded, the normal utilization of systems is low. The Amazon CEO therefore
asked to figure out a way to manage the hardware in a programmatic
manner where all the management could be done easily remotely using application
programming interfaces (APIs). This allowed them to rent out the
unused capacity; so began the computer rental business we now call cloud
computing. The concept was immediately successful since it relieved customers
of all the headaches of managing equipment that has to be continuously
updated to keep up with the latest technologies. Sharing an
underutilized resource is good for cloud service customers as well as for the
cloud service providers.