ITC4344:
Cloud Computing
Lecture 5
Cloud Computing Models
Department of Information Technology
Bayero University, Kano
Today’s Lecture
Cloud Computing Definition
Cloud Computing Architecture
Cloud Service Models
Cloud Deployment Models
Cloud Brokerage
Cloud computing definition
NIST:
“Cloud computing is a model for enabling, convenient, on-
demand network access to a shared pool of configurable
computing resources (eg. 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.”
Three Service Models
Service models describe the type of service that the
service provider is offering
Software as a Service (SaaS)
Infrastructure as a Service (IaaS)
Platform as a Service (PaaS)
User’s degrees of freedom and the complexity of its
interaction with the cloud infrastructure vary from
extremely limited in case of SaaS, to modest for PaaS,
and significant for IaaS.
Cloud Computing Service
Classification
Cloud Computing Architecture
SaaS
Software as a Service
Runs applications developed by the service provider
clients to access the services provided by these
applications using a thin client interface such as a web
browser (e.g., web-based email).
The users of services do not manage or control the
underlying cloud infrastructure including
network, servers, operating systems, storage, or even
individual application capabilities, with the possible
exception of limited user-specific application configuration
settings.
SaaS
Services offered include:
(a) Enterprise services such as:
workflow management, group-ware and collaborative, supply
chain, communications, digital signature, customer
relationship management (CR), desktop software, financial
management, geo-spatial, and search.
(b) Web 2.0 applications such as:
metadata management, social networking, blogs, wiki
services, and portal services.
Platform-as-a-Service (PaaS)
Provides a development and deployment platform for
running applications in the cloud, using programming
languages and tools supported by the provider.
They constitute the middleware on top of which
applications are built.
Application management is the core functionality of the
middleware.
The user does not manage or control the underlying cloud
infrastructure including
network, servers, operating systems, or storage.
The user has control over the deployed applications and,
possibly, application hosting environment configurations
Xtics of PaaS
Runtime framework. This framework represents the “software stack”
of the PaaS.
The runtime framework executes end-user code according to the policies
set by the user and the provider.
Abstraction: Whereas in the case of IaaS solutions the focus is on
delivering “raw” access to virtual or physical infrastructure, in the
case of PaaS the focus is on the applications the cloud must support.
Automation: PaaS environments automate the process of deploying
applications to the infrastructure, scaling them by provisioning
additional resources when needed.
Cloud services: PaaS offerings provide developers and architects with
services and APIs, helping them to simplify the creation and delivery of
elastic and highly available cloud applications.
Another essential component for a PaaS-based approach is the ability
to integrate third-party cloud services offered from other vendors by
leveraging service-oriented architecture
Where PaaS Makes Sense
PaaS is not particularly useful when the application
must be portable, when proprietary programming
languages are used, or when the underlaying hardware
and software must be customized to improve the
performance of the application.
Major application areas are in software development
when multiple developers and users collaborate and the
deployment and testing services should be automated.
Infrastructure-as-a-Service
(IaaS)
Provision processing, storage, networks, and other
fundamental computing resources;
the consumer is able to deploy and run arbitrary software,
which can include operating systems and applications.
The consumer does not manage or control the
underlying cloud infrastructure but has control over
operating systems, storage, deployed applications, and
possibly limited control of some networking
components, e.g., host firewalls.
Infrastructure-as-a-Service
(IaaS) Cont…
Services offered by this delivery model include:
server hosting
web servers
storage
computing hardware
Operating systems
virtual instances
load balancing
Internet access, and
bandwidth provisioning.
IaaS xtics
The resources are distributed and support dynamic
scaling
It is based on a utility pricing model and variable cost
The hardware is shared among multiple users.
Where IaaS makes sense
This cloud computing model is particularly useful when:
the demand is volatile
a new business needs computing resources and it does not
want to invest in a computing infrastructure
an organization is expanding rapidly
What are other Service models?
Cloud Deployment Models
The deployment model tells you where the cloud is
located and for what purpose.
There are four models for deploying clouds are :
Private
Public
Hybrid
Community
Public Cloud
Provide by a designated service
provider for general public under a
utility based pay-per-use consumption
model
Resources are hosted generally on the
service provider premises
Examples: Amazon’s AWS (EC2, S3 etc),
Rackspace Cloud Suite, Microsoft’s
Azure Service Platform
Advantages:
Less expensive than private clouds
More accessible than private clouds
Image: wikimedia.org
Short-term or temporary
commitments
Faster to deploy a single user than
private clouds
Disadvantages?
Private Cloud
Built and managed by an organization
for its internal use only to support its
business operations exclusively.
May be managed by the organization or
a third party and may exist on or off
premise.
In-house private: driven by the need to
keep confidential information within
an organization’s premises.
Advantages:
Can be secured to meet compliance at
almost every level
Single tenant environments eliminate
the possibility of other companies
affecting performance
Customizable to meet an individual
organization's needs, rather than the
mass approach of public clouds
Image: wikimedia.org
Disadvantages?
Hybrid Cloud
the infrastructure is a composition of two or more
clouds (private, community, or public) that remain
unique entities but are bound together by standardized
or proprietary technology that enables data and
application portability (e.g., cloud bursting for load-
balancing between clouds).
Hybrid Cloud
Private cloud is supplemented with
computing capacity from a public
cloud
Each component cloud is a unique
entity
Typically outsources non critical
services in public cloud and keeping
the critical ones private (internal).
Image: Wikimedia Commons
Community Cloud
the infrastructure is shared by several organizations and
supports a specific community that has shared concerns
(e.g., mission, security requirements, policy, and
compliance considerations).
It may be managed by the organizations or a third party
and may exist on premises or off premises.
Characteristics of Cloud
Computing
Since cloud computing has been natural evolution of
computational resource-sharing over many decades,
how then can we characterize cloud computing in a way
that differentiates it from simple “networking?”
According to NIST , cloud computing is composed of five
essential characteristics:
On-demand self-service
Rapid Elasticity
Broad Network access
Multi-tenancy and Resource pooling
Metered Services
On-demand self-service
A consumer can unilaterally provision computing capabilities,
such as server time and network storage, as needed
without requiring human interaction with the service
provider
Rapid Elasticity and
Scalability
Addition of more hard disk space or server bandwidth
can be done with just a few clicks of the mouse on-
demand.
Here, capabilities can be reconfigured, in some cases
automatically, to scale rapidly outward and inward in
response to changing demand.
To the consumer, the capabilities available for
provisioning often appear to be unlimited and can be
acquired at any time
Geographical scalability is also available in cloud
computing - one can choose to replicate data to several
data centers around the world.
Broad Network Access
Broad network access :
Here capabilities are available over the network and
accessed through standard mechanisms that promote use
by different thin or thick client platforms, such as mobile
phones, tablets, laptops, and workstations.
Multi-tenancy and Resource
pooling
That is, the provider’s computing resources are
comingled to serve multiple consumers using a multi-
tenant model, with different physical and virtual
resources dynamically assigned and reassigned
according to consumer demand.
Examples of such resources include CPU, data storage,
memory capacity and network bandwidth.
Metered billing/Measured
Service
Cloud computing resources usage is metered and
organizations pay accordingly for what they have used.
Delivery Criteria
Three criteria to discriminate whether a service is
delivered in the cloud computing style:
The service is accessible via a Web browser (non-proprietary)
or a Web services application programming interface (API).
Zero capital expenditure is necessary to get started.
You pay only for what you use as you use it
Even though many cloud computing services are freely
available for single users, enterprise- class services are
delivered according a specific pricing scheme.
In this case users subscribe to the service and establish with
the service provider a service-level agreement (SLA)
defining the quality-of-service parameters under which the
service is delivered.
NIST Cloud Reference Model
The entities involved in cloud computing are:
service consumer – entity that maintains a business
relationship with, and uses service from service providers;
service provider – entity responsible for making a service
available to service consumers;
carrier – the intermediary that provides connectivity and
transport of cloud services between providers and
consumers;
NIST Cloud Reference Model
broker – an entity that manages the use, performance and
delivery of cloud services, and negotiates relationships
between providers and consumers;
auditor – a party that can conduct independent
assessment of cloud services, information system
operations, performance and security of the cloud
implementation.
An audit is a systematic evaluation of a cloud system by
measuring how well it conforms to a set of established
criteria.
For example, a security audit evaluates cloud security, a
privacy-impact audit evaluates cloud privacy assurance, while
a performance audit evaluates cloud performance.
NIST Cloud Reference Model
Cloud Brokerage
Cloud Market Place
Buyya, et al, 2013
Cloud Brokerage
The Procedure
jamcracker.com
Cloud Service Broker
Roles
Aggregation: this involves combining and integrating
multiple services.
Service Intermediation: this is the provision of value-
added services or basically improving a capability without
actually providing any of the cloud services itself.
Service Arbitrage: Some cloud broker services providers
are not directly involved in cloud customer contact, but
rather enable other cloud broker services providers to
provide their brokerage services.
Jamcracker.com
Cloud Brokerage
Roles (Gartner.com, 2022 REVIEWS)
CSB serves as both an IT role and service business model,
whereby a service provider or another entity adds value to one
or more (public or private) cloud services on behalf of one or
more consumers of those services.
Value can be added via four primary roles:
Aggregation
Integration
Customization
Governance
A CSB provider supplies technology to take on some of the
activities of the brokerage function, and offers combined
technology, people, managed services and methodologies to
implement and manage CSB-related projects and requirements.
Exercise
Is Cloud Computing new?
What is the corelation between Big Data and Cloud
Computing technologies?