Nowadays everybody talks about ‘moving to the Cloud’, but what does this really mean? What is the Cloud Computing really? Cloud is a metaphor used by almost everyone within the IT industry but few really know or understand the key characteristics what makes the Cloud ‘the Cloud’. As such, allot of organizations – or individuals – believe once moved their physical IT infrastructure to a more virtual environment, they are now using the Cloud. In most of the cases this is not – entirely – a Cloud solution as some of the key characteristics and benefits of a Cloud solution are missing. With this article I want to explain the basic definition, characteristics, platforms, service models and benefits of the Cloud with my own words, based on the NIST[1] (National Institute of Standards and Technology’s) standards, experience and online research.

Definition of the ‘Cloud’ or Cloud Computing

When I got asked what Cloud (computing) means, I summarize it as: ‘A self-provisioning, on-demand dynamic delivery of IT resources over the network, using a measured, and consumption based charging model’.

NIST officially defines Cloud Computing as ‘… a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.’

The five essential characteristics of Cloud Computing

  1. On-demand self-service; a customer (consumer) must be able to obtain, order, adjust or cancel Cloud resources through a self-service, whenever they want, without any provider labour engagement. For example, through an online Portal.
  2. Broad Network access; the Cloud Computing service and its capabilities has to be globally accessible through standard mechanisms over the network, regardless the end-user’s entry point (e.g. laptop, desktop, mobile phone, tablets, etc.).
  3. Resource poolingthe providers computing resources are used dynamically and could serve multiple customers or instances (depending on the service model). In general, the consumer does not know or controls where those resources are provided from. 
  4. Rapid elasticitycomputing resources can rapidly be provided or adjusted based upon consumer request, or in some cases automatically based upon consumption. The consumer does not have any restrictions in regards to computing resources.
  5. Measured Service; the Cloud environment should be able to automatically scale and control the computing resources to agile quickly to the consumption needed. The usage of computing resources are monitored, controlled and reported to both the consumer and provider. Goal is to provide consumers with the transparency of system utilization.

The Cloud platforms:

  • Public Cloud; is a (multitenant) service provided by an organization over the network and available for ‘everybody’ who wants to use it. One of the main benefits of a Public Cloud is that the provider already has built the Cloud solution – and the entire infrastructure behind it – and the consumer can easily start using it. A good example of these services are Microsoft Office 365, Facebook or Google Gmail. Some of these services could be free of charge and others based upon consumed computing resources.
  • Private Cloud; is used within one organization only and is managed and controlled by that organization. Goal is not to provide a Cloud service towards their external consumers, but to have the advantages of the Cloud for their own. A big advantage is that it allows you to build a Cloud Computing solution that fits and meets ‘all’ your organizational security, architecture and compliance requirements, but still use the benefits of a Cloud solution. A potential disadvantage could be that the setup efforts and investments costs are too high and not commonly used for small- medium size organizations.
  • Commodity Cloud; uses shared infrastructure and is used by specific group of organizations (community-based) which share the same requirements (e.g. SLA’s, security, policies, architecture, compliance, etc.). It has the characteristics from both Public and Private Cloud solutions. The business challenge is to setup a governance between the different organizations how such Commodity Cloud is managed, charged and controlled. Although it can reduce IT resource costs, it typically involves high application development and management costs as the burden for security and performance is shifted to the application. An advantage is multiple organizations share the setup efforts and investment costs of infrastructure and reduces overhead.
  • Hybrid Cloud; is a combination of one or more (Public, Private or Commodity) Cloud solutions. A good example is that a company uses a private Cloud solution for specific applications, and uses the private Cloud for back-up or disaster recovery purposes. Hybrid Clouds are normally coordinated by a broker that federates identity, data, workflows and security. By using a Hybrid Cloud model an organization can use the benefits of different Cloud models.

The Service Models

There are three basic Cloud Computing Service Models which share similarities but also have their own differences, advantages and disadvantages.

  1. Software-as-a-Service (SaaS); enables consumers to use an application over the network without controlling – or managing – the underlying infrastructure. Consumers only can change parameters within the application or dynamically adjust computing resources. The provider runs the application and controls the underlying infrastructure. Good example of a SaaS service are Microsoft Office 365 and Facebook. In both of these SaaS services the consumer only sees the application interface through a web browser. The consumer has – to a limited extend – the possibility to customize the application.
    • Provider manages the infrastructure, OS and application
    • Consumer can – to a certain extend – customize the application
  2. Platform-as-a-Service (PaaS); provides the consumer the ability to deploy and setup his own application on the Cloud but the provider controls and manages the underlying infrastructure and operating system. Which applications can be hosted on a PaaS is defined through the languages, libraries, tools or services supported by the provider. This enables the consumer to fully control and focus on the application, whereby the provider manages the infrastructure. For example, SAP HANA Compliances, a web-server, MS SQL server, etc.
    • Provider manages the infrastructure and OS
    • Consumer manages application
  3. Infrastructure-as-a-Service (IaaS); which dynamically provides the consumer with the fundamental computing resources (storage, CPU, memory, network, etc.). The consumer can install ‘any’ kind of operating system and application and does not have to worry about the underlying infrastructure.
    • Provider manages only the infrastructure
    • Consumer manages OS and application

 I hope this article provided some clarity on the metaphor Cloud.

What is Cloud Computing

A self-provisioning, on-demand dynamic delivery of IT resources over the network, using a measured, and consumption based charging model

What are the characteristics of Cloud

1. On-demand self-service
2. Broad network access
3. Resource Pooling
4. Rapid elasticity
5. Measured Service

Cloud Platforms

1. Public Cloud
2. Private Cloud
3. Commodity Cloud
4. Hybrid Cloud
5. Distributed Cloud

What is SaaS

enables consumers to use an application over the network without controlling – or managing – the underlying infrastructure. Consumers only can change parameters within the application or dynamically adjust computing resources. The provider runs the application and controls the underlying infrastructure. Good example of a SaaS service are Microsoft Office 365 and Facebook. In both of these SaaS services the consumer only sees the application interface through a web browser. 

What is PaaS

provides the consumer the ability to deploy and setup his own application on the Cloud but the provider controls and manages the underlying infrastructure and operating system. Which applications can be hosted on a PaaS is defined through the languages, libraries, tools or services supported by the provider. This enables the consumer to fully control and focus on the application, whereby the provider manages the infrastructure. For example, SAP HANA Compliances, a web-server, MS SQL server, etc.

What is IaaS

which dynamically provides the consumer with the fundamental computing resources (storage, CPU, memory, network, etc.). The consumer can install ‘any’ kind of operating system and application and does not have to worry about the underlying infrastructure.

 [1] http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf, visited on 07.10.2015