≡ Menu

What is Cloud Computing? Introduction to Cloud Service Models

What is a Cloud?

Depending on who you are talking to, you’ll get different answers to this question.

A technically savvy end-user might define cloud as the ability to store and access personal or business data on-demand, over the internet, without having to store it locally.

A business might define cloud as an IT infrastructure that can be rented on-demand, instead of purchasing IT equipment to run their enterprise business applications.

A stakeholder might define cloud as a flexible execution environment of resources involving one or more stakeholders and providing a metered service at multiple levels up to a specified quality benchmark.

A biologist might define cloud as small droplets of water combine to form a cloud.

The traditional method of purchasing and deploying your own servers, storage and networking equipment at your datacenter might not be cost effective under certain circumstances. It is also not possible for start-ups to quickly build their own scalable IT infrastructure. Cloud computing comes to rescue under these situations.

Cloud Service Models

The following are three high level service models in the cloud:

  1. SaaS (Software as a Service)
  2. PaaS (Platform as a Service)
  3. IaaS (Infrastructure as a Service)
Cloud Computing

SaaS – Software as a Service

SaaS service provider will allow you to use their application software. Depending on your requirement, they might allow access to only specific functionality of their application. In this model, service provider will take care of development, upgrade and maintenance of the software applications. In simple terms, you’ll be paying monthly to use their application software.

For example, salesforce.com which is a CRM application as a service. Basecamp which is project management application as a service.

PaaS – Platform as a Service

PaaS service provider will allow you to use their platform (Operating System, database, web servers, run time environments, etc), or specific stack of solutions as per your requirement. It is one more level up where access is raised to the system software. Service provider will be take care of the complete development or computing environment, and users will take care of developing their own applications or product on top of it. In simple terms, you’ll be paying monthly to use their platform and develop your own application on top of it.

For example, Google App Engine and Red Hat Open Shift.

IaaS – Infrastructure as a Service

IaaS Service provider will allow you to use their infrastructures including servers, network equipment, storage infrastructure, etc. It is one more level up where a complete infrastructure is provided to the user rather just an Operating environment or an application. In simple terms, you’ll be paying monthly to use their scalable and redundant IT infrastructure and run your own enterprise application on top of it.

For example, Google compute engine, Rackspace services, Amazon AWS.

IaaS model can be further classified in two categories:

  1. Software Infrastructure as a service: A stack of web development essentials on a dedicated virtual server
  2. Hardware Infrastructure as a service: A stack of environment with firewalls, storage, content delivery networks with a dedicated server

Cloud Service Users

Due to the differences in types of services offered in the above three models, each of them are targeted for different users and skill-sets as explained below:

  1. SaaS : Non-technical business users are the primary users of this model. These are primarily general purpose application software that are easy to use, rich in application functionality for a particular business domain.
  2. PaaS : Application development users (programmers) are the primary users of this model.
  3. IaaS : Various administrators (sysadmin, DBA, network admins) are the primary users of this model.

SaaS applications mainly focus on non-technical users. PaaS and IaaS focus on technical users. IaaS allows the development team to focus on application development so that they can innovate and develop highly scalable application without worrying about the IT infrastructure.

Depending on how it is deployed, cloud can be broadly categorized as follows:

  1. Public Cloud: Cloud services are made available to the general public in form of application, storage or platform services, maintained by either external or internal providers for an organization. It grants access over internet for its consumers. You pay a either fixed amount every month for the equipment that are rented, or pay only for the number of hours those equipment are used in a month. For example, Amazon web services, Google app engine, etc.
  2. Private Cloud: Cloud services are made available to an organization for their private use in form of application, storage or platform, maintained and deployed by external or internal providers for an organization. General public are restricted here. Its often deployed within the firewall of the organization having access over its intranet only.
  3. Hybrid Cloud: Cloud service made available using both public and private cloud to take advantage of their individual benefits. For example, an application platform for developing web services which stores data on private cloud within their firewall, but uses public cloud to make the front end application available for general public use.
Add your comment

If you enjoyed this article, you might also like..

  1. 50 Linux Sysadmin Tutorials
  2. 50 Most Frequently Used Linux Commands (With Examples)
  3. Top 25 Best Linux Performance Monitoring and Debugging Tools
  4. Mommy, I found it! – 15 Practical Linux Find Command Examples
  5. Linux 101 Hacks 2nd Edition eBook Linux 101 Hacks Book

Bash 101 Hacks Book Sed and Awk 101 Hacks Book Nagios Core 3 Book Vim 101 Hacks Book

Comments on this entry are closed.

  • Anonymous April 24, 2014, 12:28 am

    Very Nice information 🙂

  • Bob April 24, 2014, 7:03 am

    Thanks. Good article. Articles like this broaden my understanding so I dont have a blank stare when someone mumbles those acronyms

  • duskoKoscica April 27, 2014, 12:59 am

    When it comes to cloud computing, it is a very interesting concept, it has its origins in one idea that was abandoned long time a go. The idea was to have one computer center in a city and let people access it like klients, in the way it would provide more access to a lot of people and so on… But it is good for some people in some cases not to all people in all cases. It is OK if you have low level program that is beeing developed and you would need some space in the cloud for short time, and you don’t need to buy to much servers that you will not need in the future. For individual users it might be benefit in some cases but not in all situations. I would not like it to replace PC platform in all cases, what was the discusion in some sites before. So, as a optino it is ok, but as solution to all problems not a very prmising idea in my oppinion.

  • Jalal Hajigholamali May 2, 2014, 9:09 pm

    Hi,

    Thanks a lot,

    very good article

  • Bhagyaraj May 5, 2014, 8:45 am

    Very nice, giving nice basics for newers.

  • duskoKoscica January 22, 2015, 7:07 am

    Yeah!
    After all this things that have happened I get it to say> “told you so”!

    Nice. Very nice.