COS497 - Cloud
1 / 30

COS497 - Cloud Computing 3. Cloud Service Models - PowerPoint PPT Presentation

  • Uploaded on

COS497 - Cloud Computing 3. Cloud Service Models. IT as a Service How do you offer IT as a service? Different users have different needs! Consider the needs of the - Average End-User - Mobile Application Developer - Enterprise System Architect

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' COS497 - Cloud Computing 3. Cloud Service Models' - hamish

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

IT as a Service

How do you offer IT as a service?

Different users have different needs!

Consider the needs of the

- Average End-User

- Mobile Application Developer

- Enterprise System Architect

Their needs, in terms of resources, are all different.

Combining the Enabling Technologies …

Different Cloud Computing Models (aka Cloud Service Models)

“Why do it yourself if you can pay someone to do it for you?”

  • Infrastructure as a Service (IaaS) - Utility computing

    • Why buy machines when you can rent machine cycles?

    • Example: Amazon’s EC2

  • Platform as a Service (PaaS)

    • Let me upload my app and run it for me!

    • Example: Google App Engine

  • Software as a Service (SaaS)

    • Just let me use your apps!

    • Examples: Google Apps, Gmail

Types of Cloud Services




(as a Service)


(as a Service)


(as a Service)

You manage





You manage





Security & Integration

Security & Integration

Security & Integration

Security & Integration

Managed by vendor

Managed by vendor





You manage





Managed by vendor





Server HW

Server HW

Server HW

Server HW









Cloud computing architecture

e.g. Web browser

SaaS , e.g. Google Docs

PaaS, e.g. Google AppEngine

IaaS, e.g. Amazon EC2

Different types of cloud computing



Microsoft Azure

Clients can choose languages, but cannot change the operating system or runtime

Google AppEngine

Provides a programmable platform that can scale easily

Amazon EC2

Clients can rent virtualized hardware, can control the software stack on the rented machines

SaaS- Exploiting Software as a Service

Software is delivered as a serviceover the Internet, eliminating theneed to install and run theapplication on the customer's

own computer.

This simplifies software maintenance and support for the customer.

With SaaS, a provider licenses an application to customers either as a service on demand, through a subscription, in a “pay-as-you-go” model, or (increasingly) at no charge when there is opportunity to generate revenue from streams other than the user, such as from advertising (e.g. Google AdWords).

Examples: Gmail, YouTube, andGoogle Docs, among others

Some defining characteristics of SaaS include:

• Web access to commercial software.

• Software is managed from a central location.

• Software delivered in a “one (program) to many (customers)” model– multi-tenancy.

• Users not required to handle software upgrades and patches.

• Application Programming Interfaces (APIs) allow for integration between different pieces of software.

SaaS is widely accepted to have been introduced to the business world by the SalesforceCustomer Relationship Management (CRM) product.

As one of the earliest entrants, it is not surprising that CRM is the most popular SaaS application software.

However e-mail, financial management, customer service and expense management have also gotten a good uptake via SaaS.

SaaS systems typically include some or all of the following:

- Accessing virtual desktops on a per-user-per-month rental basis.

- Accounting, financial management, inventory and


- Collaborations between employees and clients on projects.

- Creating flowcharts, diagrams, floor plans and other

technical drawings.

- Customer Relationship Management (CRM).

- Editing, storing and sharing documents, presentations, spreadsheets, blogs, web pages and videos,

- Project management.

- Web-mail, calendaring, instant messaging, video

conferencing and social networking.

Example: Some of the SaaSapplications available from

PaaS – Delivering Platform as a Service

Platform as a Service (PaaS) brings the benefits that SaaS bought for applications, but over to the software development world.

The cloud provider supplies a set of development tools (a platform) which allows users tocreate an application without the complexity of buying and maintaining the software and infrastructure underneath it.

But, note, some cloud providers just provide an execution platform, not a development platform.

The application may then run on theprovider’s infrastructure,

i.e. servers, storage and network

However, the cloud provider manages theunderlying infrastructure and requirements.

PaaS systems typically include some or all of the following features:

- Browser-based development environment for creating

databases and editing application code – either directly or through visual, point-and-click tools.

-Built-in scalability, security, access control and web service interfaces.

- Easy integration with other applications on the same


- Tools for connecting to applications outside the platform’s cloud.

- Tools for designing web forms, defining business rules and creating workflows.

The provider supplies Web-based user interface creation tools.

The application may be integrated with Web Services and databases in the cloud.

This model allows building high-availability, high-scalability, and high-performance cloud environments or applications.

Example - Google App Engine:

Build web applications on Google’s Infrastructure

Example - The Facebook Developer Platform:

Set of APIs that allow you to create Facebook Applications

Delivery of an integrated computing platform (to build/test/deploy custom apps) and solution stack as a service.

Deploy your applications and do not worry about buying and managing the underlying hardware and software layers

IaaS build/test/deploy custom apps) – Infrastructure as a Service

IaaSis a way of delivering cloud computing infrastructure – servers, storage, network and operating systems – as an on-demand service.

Rather than purchasing servers, software, datacenter space or network equipment, clients instead rent those resources as a fully outsourced service on demand.

The cloud provider leases to usersVirtual Machine Instances (i.e.

computer infrastructure) usingvirtualizationtechnology.

The user has access to a standardoperating system environment andcan install and configure all thelayers above it.

  • Virtualization build/test/deploy custom apps) Technology is a major enabler of IaaS.

    • It is a path to share IT resource pools: Web servers, storage, data, network, software and databases.

    • Higher utilization rates made possible

Mac OS build/test/deploy custom apps)



Example Software Stack build/test/deploy custom apps)

IaaS build/test/deploy custom apps) systems typically include some or all of the following features:

- A choice of ready-made virtual machines with pre-installed operating systems including numerous versions of Windowsand Linux

- A choice of virtual appliances – virtual machines with specific sets of software pre-installed

- Ability to store copies of particular data in different locations around the world to make downloads of the data as fast as possible

- Software tools to help process large amounts of data (in Data Grids) and perform complex calculations (in Compute Grids) using large arrays of virtual

servers working in parallel on the same problem

- Ability to manually increase or decrease the computing resources assigned to you using a web browser as your requirements change

- Ability to automatically scale computing resources up and down in response to increases and decreases in application usage.

Questions build/test/deploy custom apps) ?