A Quick Cloud Primer
We’ve had a steady stream of posts related to cloud computing for some years now. Most all of our cloud posts assume readers are familiar with the cloud, which is probably a safe assumption. But I’m still surprised on occasion when people ask, “What is the cloud anyway?” Yes, even some IT people still ask. This article will answer that question directly and provide additional details, including historical context and terminology.
What is the cloud?
“The cloud” simply refers to the internet. When someone says, “It’s in the cloud,” he or she is referring to the internet. But what we’re focusing on here is cloud computing. Put as simply as I can manage, cloud computing refers to a business model in which computing resources are made available for public consumption by various providers over the internet. At their core, the “computing resources” include computer processing, disk storage and network communications. The providers also offer many other higher-level services constructed from those core computing resources, such as databases.
Various cloud providers, such as Amazon, Microsoft and Google, have constructed many massive data centers around the globe that each house tens of thousands, if not hundreds of thousands, of server machines. Because these providers purchase such vast quantities of servers, they can buy them far more cheaply than anyone else. Their business model is to provide a wide array of computing resources as cheaply as possible while still making a profit. Their goal is to become like electric companies and water utilities.
Just as the vast majority of us no longer dig wells for water or build windmills for power, cloud providers hope that one day soon companies will no longer invest in building their own data centers but will instead purchase their computing needs from the cloud.
At present, it looks like the cloud computing model is working quite well. The major cloud providers all report solid profits and continued growth, and there's an impressively strong trend of companies moving their computing needs to the cloud. As the cloud continues to grow, competition between cloud providers has led them to trim their margins and lower their cloud computing prices, which benefits cloud consumers and increases demand further still.
A brief history
The term “cloud computing” is generally credited to Ramnath Chellappa from a lecture in 1997, referring to the cloud symbol many of us have seen in presentations to show communication between two providers (see Figure 1). In 1999, Salesforce.com became the first cloud provider, with its eponymous Customer Relationship Management (CRM) service.
Amazon played a key role in developing the modern cloud starting around 2002, as it began modernizing and automating its data centers to allow computing resources to be deployed more efficiently to internal teams. Amazon formally announced Amazon Web Services (AWS) in 2006, including its Simple Storage Service (S3) and Elastic Compute Cloud (EC2) services.
Subsequently, Google’s App Engine was announced in 2008, followed by Windows Azure in 2009. There are many other cloud providers, including IBM, Rackspace, Oracle, VMware, CenturyLink and others, but in terms of cloud computing scale, AWS, Microsoft Azure and Google Cloud Platform fill out the top three, respectively.
Here are some cloud-related terms that are mentioned frequently in cloud computing posts. I’ve included direct definitions and/or links.
- Cloud providers
These are the companies that provide cloud computing resources. The big three players are Amazon, Microsoft and Google, although there are many others, as well.
- Virtual machine
A Virtual Machine (VM) acts as a separate computer to run applications and programs, but it's really a software program or operating system.
This refers to the cloud providing such vast computing capacity that you can scale your own computing capacity well beyond what you could easily achieve on your own on premises. For example, if you hosted your high-demand website with several on-premise servers, it would take significant effort to scale up your web server farm if the demand for your website doubled. If you hosted your website in the cloud, however, it would be extremely easy to scale it up to meet demand.
Elasticity is directly related to scale. It refers to the cloud providing consumers the ability to scale compute capacity up or down as needed. Following the website example above, if you hosted your website in the cloud, you could scale it up to meet seasonal demand and then scale it down when demand declines to save costs.
- IaaS, PaaS and SaaS
- Public, private and hybrid cloud
- Lift and shift
“Lift and shift” refers to moving on-premise infrastructure to the cloud with minimal design changes, if any. This is a fairly common approach for companies that are making their initial move to the cloud. But in almost all cases, some changes are required because cloud hosting models don’t exactly match on-premise implementations.
- Service-Level Agreements (SLAs)
These are contracts between service providers and customers/users that spell out the level of service users will receive.
Here’s an additional list of cloud computing-related terms.
I hope this post has answered the “What is the cloud?” question for you in an easy-to-understand way and also provided some additional useful nuggets.