To insiders the cloud is fairly straightforward to understand, but I frequently come across businesses and individuals that have a hazy idea about what the cloud and its associated terms really mean. This situation isn’t helped by cloud-washing and by marketing teams that split ever finer hairs in an attempt to differentiate their clients from each other.
It’s difficult to assess the benefits of a technology if you don’t have a firm grasp of what that technology actually is. I thought it would be useful to provide a short glossary of the basic terminology that readers will come across in cloud-focused publications and vendor websites. The meaning of these terms is in flux and some of them are simply used incorrectly by many, so my definitions may differ slightly from those of others, but they reflect an accurate understanding of cloud platforms.
Virtualization is the foundational technology underlying cloud platforms. In a nutshell, virtualization allows “virtual” servers to be run on top of physical servers. Virtual servers are more or less comparable to physical servers in their capabilities, but because they are, in effect, software, they are massively more flexible, can be spun up and down in seconds, can be moved between physical servers, and replicated as needed.
When most people think of the cloud, it’s the public cloud that comes to mind. Public clouds uses virtualization technology to build an infrastructure layer on top of a vendor’s physical infrastructure. The virtualized infrastructure is then made available to the public via a control panel and API, allowing them to deploy servers and networks of servers very quickly. I’m going to concentrate on Infrastructure-as-a-service here, but public Software-as-a-service and Platform-as-a-Service offerings adhere to the same principle.
Private clouds are similar in construction to public cloud services. The only significant difference is that whereas in the public cloud, many different clients are using the same physical infrastructure, private cloud hardware is dedicated to one organization.
Private clouds lose some of the cost and scalability advantages of public clouds, but many companies like their IT staff to be accountable for the performance of hardware, rather than a third party — private clouds allow that deeper level of accountability.
Simply put, a hybrid cloud is a combination of public and private cloud components that work together. For example, one might run analytics over large data sets in the public cloud, because it is more efficient than buying or leasing the necessary hardware, but then store and access the results of that analysis in a private cloud over which one has more control.
Elasticity is related to scalability, but frequently scaling is thought of as scaling up. Cloud platforms can be very quickly scaled both up and down, which can result in significant cost savings, in addition to the obvious performance and availability benefits.
In the early days of cloud technology, cloud platforms were built using closed and proprietary technology. It was impossible to move a virtual server or workload from one cloud vendor to another. The result was vendor lock-in. Open standards and open source cloud projects like OpenStack have resulted in cloud platforms becoming more compatible, which helps commoditize cloud resources and foster competition between vendors.
The multitude of cloud vendors makes it difficult for potential clients to properly assess the qualities of the various platforms. Cloud marketplaces like ComputeNext work as a brokerage, providing access to many different platforms in a central interface, allowing users to compare vendors and deploy resources much more efficiently than if they had to go directly to vendor sites.