You know the deal. Business mixers––a fine line between work and pleasure. A very fine line.
So there you are, helping yourself to a few blue cheese stuffed olives and trying to balance your light beer without dropping your phone, and you overhear this conversation: "My private cloud needs rapid elasticity so I'm opting for PaaS as it enables me to transform my own enterprise applications into SaaS applications. How about you?"
Say what? Unfortunately, the hors d'evours table hasn't created an invisible force field and you see that the conversation is headed in your direction.
Are you ready? If you are, excellent! If not, this may be a good time to get yourself another beer. Even though cloud technology is seemingly everywhere, it can still be somewhat mysterious to the non-techie crowd. While the term “cloud” is everywhere, few can pin down what it really means. The reason is that there are many flavors and components of cloud computing.
According to the National Institute of Standards and Technology Information Technology (NIST) Laboratory, “Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computer resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” In other words, anything computer related. You can find the NIST's definition of cloud computing in their Special Publication 800-145 named "The NIST Definition of Cloud Computing."
Even when distilled down to its basics, it's not so basic. Let's see…there are three sets of fundamentals to digest: the characteristics of the cloud model, the deployment models, and the service models.
The 5 Essential Characteristics of the Cloud Computing Model
You’ll have the vague term “cloud” thrown at you many times in the future, and understanding these five characteristics will help you judge whether the latest offering you’re being shown is really cloud computing.
1. On-Demand Self-Service
You can quickly and easily configure the computing resources you need all by yourself, without filling out forms or emailing the service provider. An important point is that what you’re using is service-based (“I need 15 computing units”), not resource-based (“I need an HP ProLiant DL380 G6 with 32GB of RAM”). Your computing needs are abstracted from what you’re really being allocated. You don’t know, and in most cases you shouldn’t care. This is one of the biggest hurdles for IT departments that want to create their own internal private-cloud computing environment.
2. Broad Network Access
You can access these resources from anywhere you can access the Internet, and you can access them from a browser, from a desktop with applications designed to work with them, or from a mobile device. One of the most popular application models (such as iPhone apps) is a mobile application that communicates with a cloud-based back end.
3. Resource Pooling
The cloud service provider, whether it’s Amazon or your own IT department, manages all of its cloud’s physical resources; creates a pool of virtual processor, storage, and network resources; and securely allocates them between all of its customers. This means your data might physically reside anywhere at any moment, although you can generally make certain broad choices for regulatory reasons (e.g., what country your data resides in). But you won’t know whether it’s in the San Antonio or Chicago data center, and certainly not what physical servers you’re using.
4. Rapid Elasticity
You can grow and shrink your capacity (processing power, storage, network) very quickly, in minutes or hours. Self-service and resource pooling are what make rapid elasticity possible. Triggered by a customer request, the service provider can automatically allocate more or less resources from the available pool.
Related Article: 8 Ways Cloud Computing Can Increase Productivity and Profits
5. Measured Service
Also described as subscription-based, measured service means that the resources you’re using are metered and reported back to you. You pay for only the resources you need, so you don’t waste processing power like you do when you have to buy it on a server-by-server basis.
Cloud Computing Service Models
A service model describes how the capability is provided to the customer. The easiest way to understand cloud service models is with a layered approach, very similar to the OSI networking model, with the infrastructure at the bottom and the upper layers the user sees at the top.
Infrastructure as a Service (IaaS)
- IaaS is the virtual delivery of computing resources in the form of hardware, networking, and storage.
- May also include the delivery of operating systems and virtualization technology to manage the resources.
- Rather than buying and installing the physical required resources in your office, you rent them, as needed.
Platform as a Service (PaaS)
A set of software and product development tools hosted on the provider's infrastructure.
- Developers create applications on the provider's platform over the Internet.
- PaaS providers may use APIs, website portals or gateway software installed on the customer's computer
- Force.com (an outgrowth of Salesforce.com) and Google's App Engine are examples of PaaS.
Software as a Service (SaaS)
The topmost layer of the service model. SaaS is when you use the provider's applications running on a cloud infrastructure. The vendor supplies the hardware infrastructure, the software product and interacts with the user through a front-end portal. SaaS applications hide the entire IT infrastructure running in the cloud and present only the application to the user.
Typically, these applications can be accessed only through a web browser, although some SaaS applications require installing components on a user’s desktop or in the user’s IT infrastructure for full functionality. This is by far the most popular and best-known service model, with thousands of examples, from Gmail to hosted Exchange Server to Salesforce to Facebook to Twitter. Microsoft is using its Azure PaaS offering as a platform to transform its own enterprise applications into SaaS applications.
Because the service provider hosts both the application and the data, the end user is free to use the service from anywhere. SaaS is a very broad market. Services can be: web-based email, inventory control, and database processing
Other “as a Service” Models
Cloud service models don’t have to necessarily follow the layered approach; practically any aspect of software can be abstracted into the cloud and provided to the customer as a service. For example, Federation as a Service (FaaS) takes the work of establishing federated trusts between an enterprise and various cloud service providers away from the enterprise. The FaaS provider establishes trusts with hundreds of cloud providers (usually SaaS), and the enterprise simply connects to a portal with all the providers represented in a menu. A good example is where you can use your Facebook login to identify yourself at a seemingly unrelated website. That website is trusting Facebook to manage the identity of its users instead of doing it themselves.
Cloud Computing Deployment Models
The other set of definitions for cloud computing relates to how these services are physically deployed for the customer to use.
Sells service to anyone on the internet. This is the best-known cloud computing deployment model, and it’s what’s usually being referred to when “cloud” is used with no qualifiers. A public cloud is hosted by a service provider, and its resources are pooled across many customers (although the resources appear to be dedicated to the customer). Amazon Elastic Compute Cloud (EC2), Windows Azure, and Salesforce.com are all public cloud providers. Note that although they share the same deployment model, they have different service models. Amazon is best known for its IaaS services, Microsoft provides PaaS, and Salesforce uses a SaaS deployment model. Public cloud service providers represent the most mature technology and practices at this point.
A proprietary network or a data center that supplies hosted services to a limited number of people. NIST defines a private cloud simply as a cloud infrastructure that’s operated solely for an organization—in other words, it’s not shared with anyone. The major driving factors for private cloud are security and regulatory/compliance requirements; if you want to take advantage of cloud computing’s flexibility and cost savings, but you have strict requirement for where your data resides, then you must keep it private. Many of the big security concerns being voiced about cloud computing can be remedied with a private cloud.
Learn more: Microsoft and the Private Cloud
Note that this definition makes no distinction for whether the private cloud is hosted on-premise by your company’s IT organization, or off-premise by a service provider; the erroneous assumption is often made that if it’s private, it must be in-house. Many companies are just beginning to explore what it takes to build their own private cloud, and technology companies are marketing hardware and software to make this enormous task easier.
The hybrid cloud is pretty self-explanatory. It’s a combination of both public and private clouds, maintained separately but that have, for example, the same application running in both. The best-known use case for this deployment model is an application that runs in a private cloud but can tap into its public cloud component to provide burst capacity (such as an online toy retailer during the holiday season).
This model is still in its infancy, but the hybrid cloud is the future of cloud computing for enterprises. It will eventually become the most widely used model because it provides the best of both public and private cloud benefits.
A relatively unknown variation of the public cloud, a community cloud is shared across several organizations, but these organizations have shared concerns or goals.
Related Article: 6 Industries that Could Benefit from the Cloud
In case of an awkward pause, WOW them with some trivia!
- The name cloud was inspired by the symbol that’s often used to represent the Internet in flowcharts and diagrams.
- In 1997, the firm NetCentric tried to trademark the term "cloud computing," but gave up the effort two years later. Dell tried the same stunt a decade later and failed.
- Amazon Elastic Compute was the first major cloud computing service to embrace the cloud terminology. Google's Eric Schmidt stole Amazon's thunder by using the term "cloud computing" in an August 2006 speech just weeks before EC2's unveiling.
Now instead of seeking sanctuary at the buffet table when the topic of cloud computing rears its head, blow them away with your Cloud Speak!