Cloud Service Topologies Explained


Imagine a company wants to commission a new application.  The application needs computing resources to be able to run. On many occasions the app references libraries, frameworks, software development kits (SDKs) and other software to run. The app and support programs are installed on a particular version of an Operating System (OS). To run, the solution requires resources such as CPU, memory, disk storage and networking. These are provided by physical servers. Virtualization lies between the Physical Servers and the OS and makes computing environments independent of physical infrastructure.

A single app may require multiple virtual machines (VM). This may be necessary for redundancy purposes and/or because the application requires additional components that would be installed on separate VMs. Typically, the database used by the app or it web front end may reside on their own VMs.



If this application was running on-premises one would be responsible for all aspects of the solution.

Some of the topics one would have to manage are:

  • Application updates
  • Application support libraries
  • OS updates
  • VM updates
  • Server updates
  • Monitoring the physical servers and virtualization layers
  • Replace and upgrade components when these fails
  • Manage app / support libraries obsolescence
  • Manage OS obsolescence
  • Manage VM obsolescence
  • Manage server obsolescence
  • Generate KPI information for the application
  • Backup the app’s data

IaaS

Infrastructure as a Service is a model in which the cloud provider makes available to customers the physical servers and the virtualisation layers. The customer will then install the OS, the application, and any support libraries themselves. 

The cloud vendor is responsible for the server and virtualisation layers while the customer needs to manage the OS, app and libraries.



This service enables users to free themselves from maintaining an on-premises data centre.

In the IaaS model, the list of topics that one would have to manage are:

  • Application updates
  • Application support libraries
  • OS updates
  • VM updates
  • Server updates
  • Monitoring the physical servers and virtualization layers
  • Replace and upgrade components when these fails
  • Manage app / support libraries obsolescence
  • Manage OS obsolescence
  • Manage VM obsolescence
  • Manage server obsolescence
  • Generate KPI information for the application
  • Backup the app’s data

 

PaaS

Platform as a Service is a category of cloud computing services that contracts the OS layer, VM and server layers to the cloud provider. The customer focus exclusively on the app and the support libraries it depends on.

Compared to IaaS, PaaS offloads additional layers from the customer allowing them to concentrate on the app functionality.



In the PaaS model, the list of topics that one would have to manage are:
  • Application updates
  • Application support libraries
  • OS updates
  • VM updates Œ
  • Server updates Œ
  • Monitoring the physical servers and virtualization layers Œ
  • Replace and upgrade components when these fails Œ
  • Manage app / support libraries obsolescence
  • Manage OS obsolescence 
  • Manage VM obsolescence Œ
  • Manage server obsolescence Œ
  • Generate KPI information for the application
  • Backup the app’s data

Œ - These functions are also performed under IaaS

 - We would have to ensure that our app / support libraries are compatible with the upgraded OS

 

SaaS

Software as a Service is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted. In this model the customer is not responsible for the operating environment.



In the SaaS model, the list of topics one would have to manage are:

  • Application updates
  • Application support libraries
  • OS updates
  • VM updates Œ
  • Server updates Œ
  • Monitoring the physical servers and virtualization layers Œ
  • Replace and upgrade components when these fails Œ
  • Manage app / support libraries obsolescence
  • Manage OS obsolescence 
  • Manage VM obsolescence Œ
  • Manage server obsolescence Œ
  • Generate KPI information for the application
  • Backup the app’s data

Œ - These functions are also performed under IaaS

 - These functions are also performed under PaaS

 

What's best for you?

No easy answer.  If you're migrating an existing app your options may be limited. Also if you are installing an off-the-shelf solution the vendor may have certain limitations.  Knowing the difference between the various ?aaSs should help you comprehend what is involves and what is your responsibility and what is to be managed by the 3rd party.


Comments

Popular posts from this blog

20150628 Giarratana Circular

HOWTO setup OpenVPN server and client configuration files using EasyRSA

How to clone and synchronise a GitHub repository on Android