In my role as someone focused on Enterprise technologies, I am frequently asked “What’s the Cloud?”. I used to respond that the Cloud is just a big server room in the sky, but it’s really much more than that and there are also different types of Clouds.
The Cloud is made up of servers; the beauty of the Cloud is that only those doing the infrastructure management really need to think about those servers. The Cloud is meant to distance the rest of us from the details of infrastructure provisioning and management. Not only is the physical hardware handled for us but Cloud providers also deliver the agility, scalability, and reliability that were previously reserved for companies with the budgets and resources to create truly robust 24/7 infrastructures.
With a simple phone call or web request, I can have virtual machines available to host my applications and data that will scale according to my needs, provide automatic backup and failover, and be up 99.9% of the time, if that’s my desire. The term elasticity is frequently used when talking about the Cloud and it refers to the scalability and flexibility of the Cloud to respond to peaks and valleys in usage. If there’s a spike in the use of my application, I can have an agreement with my Cloud provider to automatically add computing power that I will pay for later. When usage reduces, the computing power (and associated cost) is scaled back accordingly. If I need to store twice as much data next month as I had this month, I simply need to let my provider know and pay a larger bill.
We typically think of the Cloud as something public that we can all access and the name implies that there is only one. Neither of those is actually true. There are a number of Cloud providers out there, each with their own Clouds, and most of them will provide services to anyone willing to pay. This doesn’t mean that everyone using a specific Cloud service can see everyone else’s data. Typically, applications are isolated and secured unless appropriate access has been granted. Applications hosted by different providers can generally talk to each other if the correct protocols are used.
There are also private Clouds that may be hosted internal to specific entities, such as the US Government. These Clouds are hosted on hardware owned by the same entity that manages the Cloud, while others may be hosted on separate hardware but are only made available to specific organizations or individuals.
One of the things that may make the Cloud confusing for some people is that the end user doesn’t really know where the application is running or where the data resides. We’re used to having all of our documents, music, and photos stored on our local hard drives or our business applications and data hosted in the server rooms in our company offices. We’ve traditionally known where our data is. In the Cloud, this isn’t the case. In fact, in the interest of reliability and security, there are frequently multiple copies of our data stored at physically disparate sites. On a recent trip to the Apple Store, I asked one of the Geniuses what question he hears the most when talking to users about the Cloud. He confirmed my suspicion; most people want to know where it is. I expect we’ll see people let go of this need to know where things are as we become more comfortable with the concept of the Cloud. As we access the same data in the Cloud across multiple devices and realize that our data and applications are always available, we’ll begin to trust that the Cloud is there and stop caring where it really is.
We typically hear the terms Infrastructure as a Service (IaaS) or Infrastructure Service Provider (ISP) associated with the Cloud. These terms refer to organizations that are in the business of providing the Cloud. They have the hardware and personnel resources to do all of the management and provisioning, and they offer these services to individuals and companies. In some cases, this takes the place of having local servers and storage. The emergence of the Cloud and these infrastructure providers have made it possible for small companies to provide robust web-based applications that would have been out of their reach due to infrastructure costs just a few years ago. The Cloud has enabled companies and individuals to focus on their core competencies, like the applications and data, while the Infrastructure Service Providers focus on the hardware, networking, systems, and services required keeping applications available.