Which is a service provisioning model in which a service provider makes computing resources and infrastructure management available to the customer?

There are three main cloud service models:

  1. Infrastructure as a Service
  2. Platform as a Service
  3. Software as a Service

Platform as a Service

Platform as a Service (PaaS) provides hardware and software infrastructure that you can use to develop and maintain applications. The cloud provider hosts the hardware and the software development tools in its data center. You can build, test, run, and scale applications faster and at a lower cost by using PaaS than on your on-premises infrastructure.

Software as a Service

Software as a Service (SaaS) provides the entire software application over the internet. You can use it to perform different tasks. The cloud provider hosts the hardware, the software tools, and the application itself in its data center

IaaS vs. PaaS vs. SaaS

You have more complete control over the configuration of your cloud resources in IaaS than in PaaS and SaaS. PaaS and SaaS virtualize more infrastructure functions and you have fewer components to manage as compared to IaaS.

Consider the following table. If you manage your own IT infrastructure, you must invest in and maintain all the items mentioned in the table. On the other hand, if you switch to a particular cloud computing service, this is how it works:

  • Yellow cells indicate what you manage
  • Green cells indicate what the cloud service provider manages 
 

Own IT

IaaS

PaaS

SaaS

Application

Y

Y

Y

Y

Data

Y

Y

Y

G

Runtime or software that runs the application

Y

Y

G

G

Middleware or software that monitors the application

Y

Y

G

G

Operating systems on which the application runs

Y

G

G

G

Virtualization technology

Y

G

G

G

Server machines

Y

G

G

G

Storage devices

Y

G

G

G

Network appliances

Y

G

G

G

Cloud service models in practice

Let’s say you want to implement an email application in your organization. If you decide to manage your own infrastructure, you must do the following:

  1. Purchase a physical server.
  2. Install all the required software and operating systems on it 
  3. Write your email application code and install it on the server
  4. Continuously maintain both hardware and software 

On the other hand, if you switch to a cloud computing service, you can choose from the following options.

IaaS

You provision virtual cloud servers on Amazon EC2 with operating systems pre-installed on them. You have to install the application code and related software on the virtual machine.

PaaS

You use AWS Lambda to run application code without provisioning or managing infrastructure. For instance, you can simply write and upload the application code as a .zip file.

SaaS

You use Amazon WorkMail as a secure, fully managed business email and calendar service. You don't have to write your own application code or even worry about provisioning cloud servers and cloud storage infrastructure. Your team can directly create accounts in WorkMail and start sending and receiving email.

How to choose

The choice between IaaS, PaaS, and SaaS offerings depends on your application requirements. One option is not necessarily better than the other. It depends on why you are running the application, your performance and configuration requirements, and who and where your users are.

Cloud computing is a generic buzzword that generally refers to computing services offered on-demand from shared infrastructure somewhere on the Internet.

  • Typical cloud computing characteristics

  • Cloud computing models, such as public and private cloud, Iaas and SaaS

  • Cloud adoption drivers, barriers, and considerations

  • Cloud security

Cloud Security Alliance Definition of Cloud Computing

Cloud Security Alliance (CSA) defines cloud computing as:

Cloud computing is 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).

NIST Cloud Computing Definition

NIST (US National Institute of Standards and Technology) has published a dedicated document defining cloud computing as NIST Special Publication 800-145.

NIST defines cloud computing as:

Cloud computing is 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. This cloud model is composed of five essential characteristics, three service models, and four deployment models.

The NIST definition includes the following essential characteristics:

  • On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider.

  • Broad network access. Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).

  • Resource pooling. The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, and network bandwidth.

  • Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.

  • Measured service. Cloud systems automatically control and optimize resource use by leveraging a metering capability1 at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.

Characteristics of cloud computing services

Cloud services, particularly public cloud services share certain characteristics that are expected from all cloud service providers.


Available On-Demand

Cloud services are expected to be available on-demand. A customer can typically create a new instance or a new customer relationship online at any time using a credit card, without having to wait for delivery and without having to go through a complicated purchasing process.

Accessible from a Network

Cloud services are generally accessible fromt the public Internet. Private cloud services would generally be accessible from anywhere within the enterprise. Additional security restrictions, such as a virtual firewall, may be configured to limit what services may be accessed from where. A VPN (Virtual Private Network) connection may also be offered between on-premise resources and an isolated set of servers in a public cloud ("virtual private cloud").

Resource Pooling ("Overbooking")

Much of the cost advantage of cloud services comes from resource pooling and overbooking. Statistically, most applications and services don't operate at their peak capacity most of the time, and different applications peak at different times. Cloud services utilize this to overbook capacity so that most of the time all services get enough capacity. Some services may be configured to have guaranteed service, while others may run opportunistically only when there is spare capacity. In most cases, customers are willing to accept that services may run somewhat slower at times.

Elastic Scalability

A key characteristic and benefit of cloud computing is elastic scalability. For example, if a web application gets an unusual amount of traffic, more servers may be created to provide that service. Thus, the application can gracefully and automatically scale with demand.

Scalability also allows cost-effectively running workloads that need a very high number of servers but only for short periods of time or occasionally. Many customers have such workloads, and especially if they can utilize the spare capacity, they can be run very cost-effectively.

Measured Service

Cloud services generally charge users per hour of resource usage, or based on the number of certain kinds of transactions that have occurred, amount of storage in use, and the amount of data transferred over a network. All usage is measured.

The measurements are also used by the cloud service provider to determine how to best allocate its physical computing resources to all of its customers to best meet its SLA (Service Level Agreement) commitments and minimize the cost of providing the service (thus maximizing its margins and competitiveness).

Service Level Agreements

Many cloud services provide service level agreements that guarantee a certain level of availability, performance, or capacity. Lowest-cost service tiers usually come without any guarantees, while higher-paying tiers are specified to offer certain guarantees. Large enterprises are generally able to negotiate custom service guarantees.

Multitenancy

A key distinguishing characteristic of public cloud services is multitenancy. The infrastructure serves multiple customers, and in SaaS, even the same virtual machine may serve multiple customers. Sometimes compliance requirements mandate that a service must run on a dedicated infrastructure that is not shared. Such an arrangement eliminates certain security risks, such as escaping virtual machines and spreading an attack to other customers running on the same infrastructure. Many cloud services offer dedicated servers to counter this. Some service providers will even create a dedicated cloud infrastructure, complete with dedicated and isolated provisioning tools, for larger customers on demand.

Which model in which a service provider makes resources and infrastructure management available as needed?

Utility computing or The Computer Utility is a service provisioning model in which a service provider makes computing resources and infrastructure management available to the customer as needed, and charges them for specific usage rather than a flat rate.

Which service model is used for infrastructure?

Infrastructure as a Service (IaaS) IaaS is also known as Hardware as a Service (HaaS). It is a computing infrastructure managed over the internet. The main advantage of using IaaS is that it helps users to avoid the cost and complexity of purchasing and managing the physical servers.

What are the three types of service model?

Cloud computing is offered in three different service models which each satisfy a unique set of business requirements. These three models are known as Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS).

What is a PaaS model?

PaaS, or Platform-as-a-Service, is a cloud computing model that provides customers a complete cloud platform—hardware, software, and infrastructure—for developing, running, and managing applications without the cost, complexity, and inflexibility that often comes with building and maintaining that platform on-premises.