Cloud Computing
Introduction to Cloud Computing
Agenda
• What is Cloud Computing ?
Different perspectives
Properties and characteristics
Benefits from cloud computing
• Service and deployment models
Five Characteristics
Four deployment models
Three service models
02-02-2024 TE COMP CCA 2
What do they say ?
WHAT IS CLOUD COMPUTING ?
02-02-2024 TE COMP CCA 3
Cloud Definitions
• Definition from NIST (National Institute of Standards and Technology)
Cloud computing is a model for enabling 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 promotes availability and is composed of five
essential characteristics, three service models, and four
deployment models.
02-02-2024 TE COMP CCA 4
Cloud Definitions
• Definition from Wikipedia
Cloud computing is Internet-based computing, whereby shared
resources, software, and information are provided to computers
and other devices on demand, like the electricity grid.
Cloud computing is a style of computing in which dynamically
scalable and often virtualized resources are provided as a service
over the Internet.
02-02-2024 TE COMP CCA 5
Cloud Definitions
• Definition from Whatis.com
The name cloud computing was inspired by the cloud symbol that's
often used to represent the Internet in flowcharts and diagrams.
Cloud computing is a general term for anything that involves
delivering hosted services over the Internet.
02-02-2024 TE COMP CCA 6
Cloud Definitions
• Definition from Berkeley
Cloud Computing refers to both the applications delivered as
services over the Internet and the hardware and systems software
in the datacenters that provide those services.
The services themselves have long been referred to as Software as a
Service (SaaS), so we use that term. The datacenter hardware and
software is what we will call a
Cloud.
When a Cloud is made available
in a pay-as-you-go manner to the
public…… The service being sold is
Utility Computing.
02-02-2024 TE COMP CCA 7
Cloud Definitions
• Definition from Buyya
A Cloud is a type of parallel and distributed system consisting of a
collection of interconnected and virtualized computers that are
dynamically provisioned and presented as one or more unified
computing resources based on service-level agreements
established through negotiation between the service provider and
consumers.
02-02-2024 TE COMP CCA 8
Properties and characteristics
WHAT IS CLOUD COMPUTING ?
02-02-2024 TE COMP CCA 9
In Our Humble Opinion
• Cloud computing is a paradigm of computing, a new way of
thinking about IT industry but not any specific technology.
Central ideas
• Utility Computing
• SOA - Service Oriented Architecture
• SLA - Service Level Agreement
Properties and characteristics
• High scalability and elasticity
• High availability and reliability
• High manageability and interoperability
• High accessibility and portability
• High performance and optimization
Enabling techniques
• Hardware virtualization
• Parallelized and distributed computing
02-02-2024 • Web service TE COMP CCA 10
Properties and Characteristics
02-02-2024 TE COMP CCA 11
Utility
Computing
SOA + SLA
Central Ideas
• Perspective from user :
Users do not care about how the works are done
• Instead, they only concern about what they can get
Users do not care about what the provider actually did
• Instead, they only concern about their quality of service
Users do not want to own the physical infrastructure
• Instead, they only want to pay as many as they used
• What does user really care ?
They only care about their “Service”
02-02-2024 TE COMP CCA 12
Utility
Computing
SOA + SLA
Utility Computing
• One service provisioning model
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.
Like other types of on-demand computing , the
utility model seeks to maximize the efficient
use of resources and/or minimize associated
costs.
02-02-2024 TE COMP CCA 13
Utility
Computing
SOA + SLA
What Is Service?
• Service is what you connect together using Web Services.
• Service is the endpoint of a connection.
• Functionalities of service :
A service should be well-defined
A service should be self-contained
A service should not depend on the context or state of other services.
02-02-2024 TE COMP CCA 14
Utility
Computing
SOA + SLA
What Is Web Service?
• Definition :
Web service is self-describing and stateless modules that perform
discrete units of work and are available over the network
Web service providers offer APIs that enable developers to exploit
functionality over the Internet, rather than delivering full-blown
applications
• Web Services Description Language (WSDL) :
Expressed in XML which include both data type and messages
Four types of operations :
• One-way - Messages sent without a reply required
• Request & response - Sending and replying messages
• Solicit response - A request for a response
• Notification - Messages sent to multiple receivers
02-02-2024 TE COMP CCA 15
Utility
Computing
SOA + SLA
Service Oriented Architecture
• Definition
Service Oriented Architecture (SOA) is essentially a collection of
services which communicate with each other
Contain a flexible set of design principles used during the phases of
systems development and integration
Provide a loosely-integrated suite of services that can be used within
multiple business domains
• Approach
Usually implemented by Web Service model
02-02-2024 TE COMP CCA 16
Utility
Computing
SOA + SLA
Quality Of Service
• Original definition
Quality of Service (QoS) is a set of technologies for managing
network traffic in a cost effective manner to enhance user
experiences for home and enterprise environments.
• Now QoS becomes to a broad term
that is used following areas :
Customer care evaluations
Technological evaluations
02-02-2024 TE COMP CCA 17
Utility
Computing
SOA + SLA
Quality Of Service
• Customer care evaluations
QoS is usually measured in terms of issues that have a direct
impact on the experience of the customer
Only issues that produce a negative effect on the goods and
services received by the customer come under scrutiny
• Technological evaluations
QoS has to do with the efficient operation of various systems
This can lead to adjusting procedures or adapting software
programs and code to achieve the desired effect while making a
more efficient use of available resources
02-02-2024 TE COMP CCA 18
Utility
Computing
SOA + SLA
Service Level Agreement
• Definition
A service-level agreement (SLA) is a contract between a network
service provider and a customer that specifies, usually in
measurable terms (QoS), what services the network service
provider will furnish
• Common content in contract
Performance guarantee metrics
• Up-time and down-time ratio
• System throughput
• Response time
Problem management detail
Penalties for non-performance
Documented security capabilities
02-02-2024 TE COMP CCA 19
Scalability & Elasticity
• What is scalability ?
A desirable property of a system, a network, or a process, which
indicates its ability to either handle growing amounts of work in a
graceful manner or to be readily enlarged.
• What is elasticity ?
The ability to apply a quantifiable methodology that allows for the
basis of an adaptive introspection with in a real time infrastructure.
• But how to achieve these properties ?
Dynamic provisioning
Multi-tenant design
02-02-2024 TE COMP CCA 20
Dynamic Provisioning
• What is dynamic provisioning ?
Dynamic Provisioning is a simplified way to explain a complex
networked server computing environment where server
computing instances are provisioned or deployed from a
administrative console or client application by the server
administrator, network administrator, or any other enabled
user.
02-02-2024 TE COMP CCA 21
Dynamic Provisioning
• In traditional computing model, two common problems :
Underestimate system utilization which result in under provision
Loss Revenue
Resources
Capacity
Demand
Resources
Capacity
1 2 3
Demand Resources Loss Users
1 2 3 Capacity
Time (days)
Demand
1 2 3
02-02-2024 TE COMP CCA 22
Dynamic Provisioning
Overestimate system utilization which result in low utilization
Capacity
Resources
Unused resources
Demand
Time
• How to solve this problem ??
Dynamically provision resources
02-02-2024 TE COMP CCA 23
Dynamic Provisioning
• Cloud resources should be provisioned dynamically
Meet seasonal demand variations
Meet demand variations between different industries
Meet burst demand for some extraordinary events
Resources
Capacity
Resources
Capacity
Demand Demand
Time Time
02-02-2024 TE COMP CCA 24
Multi-tenant Design
• What is multi-tenant design ?
Multi-tenant refers to a principle in software architecture where a
single instance of the software runs on a server, serving multiple
client organizations.
With a multi-tenant architecture, a software application is designed
to virtually partition its data and configuration thus each client
organization works with a customized virtual application instance.
• Client oriented requirements :
Customization
• Multi-tenant applications are typically required to provide a high degree
of customization to support each target organization's needs.
Quality of service
• Multi-tenant applications are expected to provide adequate levels of
02-02-2024 security and robustness. TE COMP CCA 25
Availability & Reliability
• What is availability ?
The degree to which a system, subsystem, or equipment is in a
specified operable and committable state at the start of a mission,
when the mission is called for at an unknown time.
Cloud system usually require high availability
• Ex. “Five Nines” system would statistically provide 99.999% availability
• What is reliability ?
The ability of a system or component to perform its required
functions under stated conditions for a specified period of time.
• But how to achieve these properties ?
Fault tolerance system
Require system resilience
Reliable system security
02-02-2024 TE COMP CCA 26
Manageability & Interoperability
• What is manageability ?
Enterprise-wide administration of cloud computing systems.
Systems manageability is strongly influenced by network
management initiatives in telecommunications.
• What is interoperability ?
Interoperability is a property of a product or system, whose
interfaces are completely understood, to work with other products
or systems, present or future, without any restricted access or
implementation.
• But how to achieve these properties ?
System control automation
System state monitoring
02-02-2024 TE COMP CCA 27
Billing System
• Billing System in Cloud
Users pay as many as they used.
Cloud provider must first determine the list of service usage price.
Cloud provider have to record the resource or service usage of each
user, and then charge users by these records.
• How can cloud provider know users’ usage ?
Get those information by means of monitoring system.
Automatically calculate the total
amount of money which user
should pay. And automatically
request money from use’s banking
account.
02-02-2024 TE COMP CCA 28
Performance & Optimization
• Performance guarantees ??
As the great computing power in cloud, application performance
should be guaranteed.
Cloud providers make use of powerful infrastructure or other
underlining resources to build up a highly performed and highly
optimized environment, and then deliver the complete services to
cloud users.
• But how to achieve this property ?
Parallel computing
Load balancing
Job scheduling
02-02-2024 TE COMP CCA 29
Parallel Processing
• Hardware approaches
Multi-core computer
Multi computer system
General purpose graphic processing unit
Vector processor
Distributed computing
• Cluster computing
• Grid computing
• Software approaches
Parallel programming language
Automatic parallelization
02-02-2024 TE COMP CCA 30
Load Balancing
• What is load balancing ?
Load balancing is a technique to distribute workload evenly across
two or more computers, network links, CPUs, hard drives, or other
resources, in order to get optimal resource utilization, maximize
throughput, minimize response time, and avoid overload.
• Why should be load balanced ?
Improve resource utilization
Improve system performance
Improve energy efficiency
02-02-2024 TE COMP CCA 31
Job Scheduling
• What is job scheduler ?
A job scheduler is a software application that is in charge of
unattended background executions, commonly known for historical
reasons as batch processing.
• What should be scheduled in Cloud ?
Computation intensive tasks
Dynamic growing and shrinking tasks
Tasks with complex processing dependency
• How to approach ?
Use pre-defined workflow
System automatic configuration
02-02-2024 TE COMP CCA 32
Accessibility & Portability
• What is accessibility ?
Accessibility is a general term used to describe the degree to which
a product, device, service, or environment is accessible by as many
people as possible.
• What is service portability ?
Service portability is the ability to access services using any
devices, anywhere, continuously with mobility support and
dynamic adaptation to resource variations.
• But how to achieve these properties ?
Uniform access
Thin client
02-02-2024 TE COMP CCA 33
Uniform Access
• How do users access cloud services ?
Cloud provider should provide their cloud service by means of
widespread accessing media. In other word, users from different
operating systems or other accessing platforms should be able to
directly be served.
Nowadays, web browser technique is one of the most widespread
platform in almost any intelligent electronic devices. Cloud service
take this into concern, and delivery their services with web-based
interface through the Internet.
02-02-2024 TE COMP CCA 34
Reduce Initial Investment
• What dose cloud computing achieve ?
Traditional With Cloud Computing
Investment Risk Enterprise takes the risk Cloud reduces the risk
Enterprise owns the Cloud provider owns the
Infrastructure
infrastructure infrastructure
Time duration Long deployment time Fast to business ready
02-02-2024 TE COMP CCA 35
Reduce Capital Expenditure
• What dose cloud computing achieve ?
Traditional With Cloud Computing
Need to own its IT Cloud provider takes
Business focus
department care everything
Pay for all investment Enterprise pays as the
Payment
and human resource service used
Time duration Long establish time Fast to business ready
02-02-2024 TE COMP CCA 36
Improve Industrial Specialization
• What dose cloud computing achieve ?
Traditional With Cloud Computing
Enterprise needs to take Enterprise focuses on its
Collaboration
care everything own business
Enterprise works with Cloud provider applies
Management
poor manageability professional control
Relationship Stand alone enterprise Win-Win partnership
02-02-2024 TE COMP CCA 37
Improve Resource Utilization
• What dose cloud computing achieve ?
Traditional With Cloud Computing
IT Resource IT resource under Share to improve
Utilization utilized most of time utilization of IT resource
Power Waste power and Cloud system should be
Consumption cooling system global optimized
02-02-2024 TE COMP CCA 38
Reduce Local Computing Power
• What dose cloud computing achieve ?
Traditional With Cloud Computing
Hardware User needs to buy Only basic hardware to
Requirement powerful hardware connect to internet
Software Install application in No local installation
Requirement local computer requirement
Portability Hard to be portable Natively portable
02-02-2024 TE COMP CCA 39
Reduce Local Storage Power
• What dose cloud computing achieve ?
Traditional With Cloud Computing
Limited to local disk, Dynamically allocated
Storage Space
may be under utilized on demand
Storage Data Difficult to maintain Data consistency
Consistency data consistency maintained by cloud
Availability Regular user backup Cloud service guarantee
02-02-2024 TE COMP CCA 40
Variety of End Devices
• What dose cloud computing achieve ?
Traditional With Cloud Computing
Computing Only accessed through Accessed through small
Power desktop computer smart devices
Functionalities was Shift computing incentive
Small Device
limited due to their jobs into cloud, and then
Intelligence
power consumption wait for results
02-02-2024 TE COMP CCA 41
Agenda
• What is Cloud Computing ?
Different perspectives
Properties and characteristics
Benefits from cloud computing
• Service and deployment models
Five Characteristics
Four deployment models
Three service models
02-02-2024 TE COMP CCA 42
5-4-3 Principles of cloud computing
• Cloud computing has :
Five essential characteristic features
Four deployment models
Three Service models
02-02-2024 TE COMP CCA 43
Five Essential Characteristics
• If any of this characteristics is missing than it is not CC:
On-demand self-service
A consumer can unilaterally provision computing capabilities such as server
time, 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, laptops, and personal digital assistants [PDAs]).
Elastic resource pooling
The provider’s computing resources are pooled to serve multiple consumers
using a multitenant 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 the location at a higher level of abstraction (e.g., country, state,
or data center). Examples of resources include storage, processing, memory,
and network bandwidth.
02-02-2024 TE COMP CCA 44
Five Essential Characteristics
Rapid elasticity
Capabilities can be rapidly and elastically provisioned, in some cases
automatically, to quickly scale out and rapidly released to quickly scale in.
To the consumer, the capabilities available for provisioning often appear to
be unlimited and can be purchased in any quantity at any time.
Measured service
Cloud systems automatically control and optimize resource use by
leveraging a metering capability 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.
02-02-2024 TE COMP CCA 45
Choose the service you need.
SERVICE MODELS
02-02-2024 TE COMP CCA 46
02-02-2024 TE COMP CCA 47
02-02-2024 TE COMP CCA 48
02-02-2024 TE COMP CCA 49
02-02-2024 TE COMP CCA 50
02-02-2024 TE COMP CCA 51
02-02-2024 TE COMP CCA 52
Service Models Overview
• What if you want to have an IT department ?
Similar to build a new house in previous analogy
• You can rent some virtualized infrastructure and build up your own IT
system among those resources, which may be fully controlled.
• Technical speaking, use the Infrastructure as a Service (IaaS) solution.
Similar to buy an empty house in previous analogy
• You can directly develop your IT system through one cloud platform,
and do not care about any lower level resource management.
• Technical speaking, use the Platform as a Service (PaaS) solution.
Similar to live in a hotel in previous analogy
• You can directly use some existed IT system solutions, which were
provided by some cloud application service provider, without knowing
any detail technique about how these service was achieved.
• Technical speaking, use the Software as a Service (SaaS) solution.
02-02-2024 TE COMP CCA 53
Service Model Overview
02-02-2024 TE COMP CCA 54
Infrastructure as a Service
Platform as a Service
Software as a Service
SERVICE MODELS
02-02-2024 TE COMP CCA 55
Infrastructure as a Service
• Infrastructure as a Service - IaaS
The capability provided to the consumer is to provision processing,
storage, networks, and other fundamental computing resources
where 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 select
networking components .
• Examples :
Amazon EC2
Eucalyputs
OpenNebula
02-02-2024
… etc TE COMP CCA 56
Infrastructure as a Service
• System architecture :
02-02-2024 TE COMP CCA 57
Infrastructure as a Service
• Enabling technique - Virtualization
Virtualization is an abstraction of logical resources away from
underlying physical resources.
• Virtualization technique shift OS onto hypervisor.
• Multiple OS share the physical hardware and provide different services.
• Improve utilization, availability, security and convenience.
VM1 VM2 VM3
02-02-2024 TE COMP CCA 58
Infrastructure as a Service
• Properties supported by virtualization technique :
Manageability and Interoperability
Availability and Reliability
Scalability and Elasticity
02-02-2024 TE COMP CCA 59
Infrastructure as a Service
• Provide service –Resource Management Interface
Several types of virtualized resource :
• Virtual Machine – As an IaaS provider, we should be able to provide the
basic virtual machine operations, such as creation, suspension, resumption
and termination, …etc.
• Virtual Storage – As an IaaS provider, we should be able to provide the
basic virtual storage operations, such as space allocation, space release,
data writing and data reading, …etc.
• Virtual Network – As an IaaS provider, we should be able to provide the
basic virtual network operations, such as IP address allocation, domain
name register, connection establishment and bandwidth provision, …etc.
02-02-2024 TE COMP CCA 60
Infrastructure as a Service
• Provide service – System Monitoring Interface
Several types of monitoring metrics :
• Virtual Machine – As an IaaS provider, we should be able to monitor
some system states of each virtual machine, such as CPU loading, memory
utilization, IO loading and internal network loading, …etc.
• Virtual Storage – As an IaaS provider, we should be able to monitor some
storage states of each virtual storage, such as virtual space utilization,
data duplication and storage device access bandwidth, …etc.
• Virtual Network – As an IaaS provider, we should be able to monitor
some network states of each virtual network, such as virtual network
bandwidth, network connectivity and network load balancing, …etc.
02-02-2024 TE COMP CCA 61
IaaS - Summary
• IaaS is the deployment platform that abstract the infrastructure.
• IaaS enabling technique
Virtualization
• Server Virtualization
• Storage Virtualization
• Network Virtualization
• IaaS provided services
Resource Management Interface
System Monitoring Interface
02-02-2024 TE COMP CCA 62
Infrastructure as a Service
Platform as a Service
Software as a Service
SERVICE MODELS
02-02-2024 TE COMP CCA 63
Platform as a Service
• Platform as a Service - PaaS
The capability provided to the consumer is to deploy onto the cloud
infrastructure consumer-created or acquired applications created
using programming languages and tools supported by the provider.
The consumer does not manage or control the underlying cloud
infrastructure including network, servers, operating systems, or
storage, but has control over the deployed applications and
possibly application hosting environment configurations.
• Examples :
Microsoft Windows Azure
Google App Engine
Hadoop
… etc
02-02-2024 TE COMP CCA 64
Platform as a Service
• System architecture :
02-02-2024 TE COMP CCA 65
Platform as a Service
• Enabling technique – Runtime Environment Design
Runtime environment refers to collection of software services
available. Usually implemented by a collection of program libraries.
• Common properties in Runtime Environment :
Manageability and Interoperability
Performance and Optimization
Availability and Reliability
Scalability and Elasticity
02-02-2024 TE COMP CCA 66
Platform as a Service
• Provide service – Programming IDE
Users make use of programming IDE to develop their service
among PaaS.
• This IDE should integrate the full functionalities which supported from the
underling runtime environment.
• This IDE should also provide some development tools, such as profiler,
debugger and testing environment.
The programming APIs supported from runtime environment may
be various between different cloud providers, but there are still
some common operating functions.
• Computation, storage and communication resource operation
02-02-2024 TE COMP CCA 67
Platform as a Service
• Provide service – System Control Interface
Police-Based Control
• Typically described as a principle or rule to guide decisions and achieve
rational outcome(s)
• Make the decision according to some requirements
Workflow Control
• Describe the flow of installation and configuration of resources
• Workflow processing daemon delivers speedy and efficient construction
and management of cloud resources
02-02-2024 TE COMP CCA 68
PaaS - Summary
• PaaS is the development platform that abstract the infrastructure,
OS, and middleware to drive developer productivity.
• PaaS enabling technique
Runtime Environment
• PaaS provide services
Programming IDE
• Programming APIs
• Development tools
System Control Interface
• Policy based approach
• Workflow based approach
02-02-2024 TE COMP CCA 69
Infrastructure as a Service
Platform as a Service
Software as a Service
SERVICE MODELS
02-02-2024 TE COMP CCA 70
Software as a Service
• Software as a Service - SaaS
The capability provided to the consumer is to use the provider’s
applications running on a cloud infrastructure. The applications are
accessible from various client devices through a thin client
interface such as a web browser (e.g., web-based email).
The consumer does 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.
• Examples :
Google Apps (e.g., Gmail, Google Docs, Google sites, …etc)
SalesForce.com
EyeOS
… etc
02-02-2024 TE COMP CCA 71
Software as a Service
02-02-2024 TE COMP CCA 72
Software as a Service
• Enabling Technique – Web Service
Web 2.0 is the trend of using the full potential of the web
• Viewing the Internet as a computing platform
• Running interactive applications through a web browser
• Leveraging interconnectivity and mobility of devices
• Enhanced effectiveness with greater human participation
• Properties provided by Internet :
Accessibility and Portability
02-02-2024 TE COMP CCA 73
Software as a Service
• Provide service – Web-based Applications
Conventional applications should translate their access interface
onto web-based platform.
Applications in different domains
• General Applications – Applications which are designed for general
propose, such as office suit, multimedia and instant message, …etc.
• Business Applications – Application which are designed for business
propose, such as ERP, CRM and market trading system, …etc.
• Scientific Applications – Application which are designed for scientific
propose, such as aerospace simulation and biochemistry simulation, …etc.
• Government Applications – Applications which are designed for
government propose, such as national medical system and public
transportation system service, …etc.
02-02-2024 TE COMP CCA 74
Software as a Service
• Provide service – Web Portal
Apart from the standard search engine feature, web portals offer
other services such as e-mail, news, stock prices, information,
databases and entertainment.
Portals provide a way for enterprises to provide a consistent look
and feel with access control and procedures for multiple
applications and databases, which otherwise would have been
different entities altogether.
Some examples :
• iGoogle
• MSNBC
• Netvibes
• Yahoo!
02-02-2024 TE COMP CCA 75
SaaS - Summary
• SaaS is the finished applications that you rent and customize.
• SaaS enabling technique
Web Service
• SaaS provide services
Web-based Applications
• General applications
• Business applications
• Scientific applications
• Government applications
Web Portal
02-02-2024 TE COMP CCA 76
02-02-2024 TE COMP CCA 77
02-02-2024 TE COMP CCA 78
How to deploy a cloud system ?
DEPLOYMENT MODELS
02-02-2024 TE COMP CCA 79
02-02-2024 TE COMP CCA 80
Deployment Model
• There are four primary cloud deployment models :
Public Cloud
Private Cloud
Community Cloud
Hybrid Cloud
• Each can exhibit the previously discussed characteristics;
their differences lie primarily in the scope and access of
published cloud services, as they are made available to
service consumers.
02-02-2024 TE COMP CCA 81
Public Cloud
• Public cloud definition
The cloud infrastructure is made available to the general public or a
large industry group and is owned by an organization selling cloud
services.
Also known as external cloud or multi-tenant cloud, this model
essentially represents a cloud environment that is openly accessible.
Basic characteristics :
• Homogeneous infrastructure
• Common policies
• Shared resources and multi-tenant
• Leased or rented infrastructure
• Economies of scale
• Eg.Google docs, spreadsheet
02-02-2024 TE COMP CCA 82
Private Cloud
• Private cloud definition
The cloud infrastructure is operated solely for an organization. It
may be managed by the organization or a third party and may exist
on premise or off premise.
Also referred to as internal cloud or on-premise cloud, a private
cloud intentionally limits access to its resources to service
consumers that belong to the same organization that owns the
cloud.
Basic characteristics :
• Heterogeneous infrastructure
• Customized and tailored policies
• Dedicated resources
• In-house infrastructure
• End-to-end control
• Eg. Windows Server ‘Hyper-v’
02-02-2024 TE COMP CCA 83
Public vs. Private
• Comparison :
Public Cloud Private Cloud
Infrastructure Homogeneous Heterogeneous
Policy Model Common defined Customized & Tailored
Resource Model Shared & Multi-tenant Dedicated
Cost Model Operational expenditure Capital expenditure
Economy Model Large economy of scale End-to-end control
02-02-2024 TE COMP CCA 84
Community Cloud
• Community cloud definition
The cloud infrastructure is shared by several organizations and
supports a specific community that has shared concerns (e.g.,
mission, security requirements, policy, and compliance
considerations).
02-02-2024 TE COMP CCA 85
Hybrid Cloud
• Hybrid cloud definition
The cloud 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).
02-02-2024 TE COMP CCA 86
Cloud Bursting
• Cloud bursting is a configuration method that uses cloud
computing resources whenever on-premises
infrastructure reaches peak capacity. When
organizations run out of computing resources in their
internal data center, they burst the extra workload to
external third-party cloud services.
02-02-2024 TE COMP CCA 87
Cloud Ecosystem
• Cloud ecosystem is a term used to describe the complete environment or
system of interdependent components or entities that work together to
enable and support the cloud services.
Actors with some of their possible roles in a cloud
02-02-2024
ecosystem. TE COMP CCA 88
Entities in cloud
• Cloud service users (CSUs): A consumer (an individual/person),
enterprise (including enterprise administrator), and/or
government/public institution or organization that consumes
delivered cloud services; a CSU can include intermediate users that
will deliver cloud services provided by a cloud service provider
(CSP) to actual users of the cloud service, that is, end users. End
users can be persons, machines, or applications.
• CSPs: An organization that provides or delivers and maintains or
manages cloud services, that is, provider of SaaS, PaaS, IaaS, or
any allied computing infrastructure.
• Cloud service partners (CSNs): A person or organization (e.g.,
application developer; content, software, hardware, and/or
equipment provider; system integrator; and/or auditor) that provides
support to the building of a service offered by a CSP (e.g., service
integration).
02-02-2024 TE COMP CCA 89
Cloud Ecosystem
02-02-2024 TE COMP CCA 90
Cloud Application
• A cloud application is an application program that functions or
executes in the cloud; the application can exhibit some characteristics
of a pure desktop application and some characteristics of a pure web-
based application.
• A desktop application resides entirely on a single device at the user’s
location (it does not necessarily have to be a desktop computer), and
on the other hand, a web application is stored entirely on a remote
server and is delivered over the Internet through a browser interface.
• An example of cloud application is a web-based e-mail (e.g., Gmail,
Yahoo mail); in this application, the user of the e-mail uses the
cloud—all of the emails in their inbox are stored on servers at remote
locations at the e-mail service provider.
• However, there are many other services that use the cloud in different
ways. Here is yet another example: Dropbox is a cloud storage
service that lets us easily store and share files with other people and
access files from a mobile device as well.
02-02-2024 TE COMP CCA 91
Benefits
1. Achieve economies of scale: We can increase the volume output or
productivity with fewer systems and thereby reduce the cost per unit of a
project or product.
2. Reduce spending on technology infrastructure: It is easy to access
data and information with minimal upfront spending in a pay-as-you-go
approach, in the sense that the usage and payment are similar to an
electricity meter reading in the house, which is based on demand.
3. Globalize the workforce: People worldwide can access the cloud with
Internet connection.
4. Streamline business processes: It is possible to get more work done
in less time with less resource.
5. Reduce capital costs: There is no need to spend huge money on
hardware, software, or licensing fees.
6. Pervasive accessibility: Data and applications can be accessed
anytime, anywhere, using any smart computing device, making our life so
much easier.
7. Monitor projects more effectively: It is possible to confine within
02-02-2024
budgetary allocations and can be TEahead
COMP CCA
of completion cycle times. 92
Benefits
8.Less personnel training is needed: It takes fewer people to do more
work on a cloud, with a minimal learning curve on hardware and software
issues.
9. Minimize maintenance and licensing software: As there is no too much
of on-premise computing resources, maintenance becomes simple and
updates and renewals of software systems rely on the cloud vendor or
provider.
10. Improved flexibility: It is possible to make fast changes in our work
environment without serious issues at stake.
02-02-2024 TE COMP CCA 93
Drawbacks
• The main point in this context is that if we lose our Internet connection, we
have lost the link to the cloud and thereby to the data and applications.
• There is also a concern about security as our entire working with data and
applications depend on other’s (cloud vendor or providers) computing power.
• Also, while cloud computing supports scalability (i.e., quickly scaling up and
down computing resources depending on the need), it does not permit the
control on these resources as these are not owned by the user or customer.
• Depending on the cloud vendor or provider, customers may face restrictions on
the availability of applications, operating systems, and infrastructure options.
And, sometimes, all development platforms may not be available in the cloud
due to the fact that the cloud vendor may not be aware of such solutions.
• A major barrier to cloud computing is the interoperability of applications,
which is the ability of two or more applications that are required to support a
business need to work together by sharing data and other business-related
resources.
• Normally, this does not happen in the cloud as these applications may not be
available with a single cloud vendor and two different vendors having these
applications do not cooperate with each other.
02-02-2024 TE COMP CCA 94
Requirements for Cloud Services
Cloud services or service offering models require certain features to be
exhibited in order to be considered as services.
The following are the basic requirements for anything that can be
considered as a service by the actors of the cloud computing ecosystem,
which can be offered or provisioned through the cloud:
• Multitenancy:
Aims to provide isolation of the different users of the cloud system (tenants)
while maximizing resource sharing.
As an example, at the application level, multitenancy is a feature that
allows a single instance of an application (say, database system) and
leverages the economy of scale to satisfy several users at the same time.
• Service life cycle management:
Cloud services are paid as per usage and can be started and ended at any
time.
A cloud service should support automatic service provisioning.
In addition, metering and charging or billing settlement needs to be
provided for services that are dynamically created, modified, and then
released in virtual environments.
02-02-2024 TE COMP CCA 95
Requirements for Cloud Services
• Security
The security of each individual service needs to be protected in the
multitenant cloud environment.
The users (tenants) also support the needed secured services, meaning
that a cloud provides strict control for tenants’ service access to different
resources to avoid the abuse of cloud resources and to facilitate the
management of CSUs by CSPs.
• Responsiveness:
The cloud ecosystem is expected to enable early detection, diagnosis, and
fixing of service-related problems in order to help the customers use the
services faithfully.
• Service access:
A cloud infrastructure is expected to provide CSUs with access to cloud
services from any user device. It is expected that CSUs have a consistent
experience when accessing cloud services.
02-02-2024 TE COMP CCA 96
Requirements for Cloud Services
• Intelligent Service Deployment
It is expected that the cloud enables efficient use of resources in service
deployment, that is, maximizing the number of deployed services while
minimizing the usage of resources and still respecting the SLAs.
For example, the specific application characteristics (e.g., central
processing unit [CPU]-intensive, input/output [IO]-intensive) that can be
provided by developers or via application monitoring may help CSPs in
making efficient use of resources.
• Portability:
It is expected that a cloud service supports the portability of its features
over various underlying resources and that CSPs should be able to
accommodate cloud workload portability (e.g., VM portability) with limited
service disruption.
• Service reliability, service availability, and quality assurance:
CSUs demand for their services end-to-end quality of service (QoS)
assurance, high levels of reliability, and continued availability to their CSPs.
02-02-2024 TE COMP CCA 97
Requirements for Cloud Services
• Interoperability:
It is expected to have available well-documented and well-tested
specifications that allow heterogeneous systems in cloud environments to
work together.
• Regulatory aspects:
All applicable regulations shall be respected, including privacy protection.
• Environmental sustainability:
A key characteristic of cloud computing is the capability to access, through
a broad network and thin clients, on-demand shared pools of configurable
resources that can be rapidly provisioned and released.
Cloud computing can then be considered in its essence as an ICT energy
consumption consolidation model, supporting mainstream technologies
aiming to optimize energy consumption (e.g., in data centers) and
application performance.
Examples of such technologies include virtualization and multitenancy.
02-02-2024 TE COMP CCA 98
Requirements for Cloud Services
• Flexibility:
It is expected that the cloud service be capable of supporting multiple cloud
deployment models and cloud service categories.
• Accounting and charging:
It is expected that a cloud service be capable to support various accounting
and charging models and policies.
• Massive data processing:
It is expected that a cloud supports mechanisms for massive data
processing (e.g., extracting, transforming, and loading data).
It is worth to note in this context that distributed and/or parallel processing
systems will be used in cloud infrastructure deployments to provide large-
scale integrated data storage and processing capabilities that scale with
software-based fault tolerance.
02-02-2024 TE COMP CCA 99
Requirements in service models
IaaS
• Computing hardware requirements (including processing, memory, disk,
network interfaces, and virtual machines)
• Computing software requirements (including OS and other preinstalled
software)
• Storage requirements (including storage capacity)
• Network requirements (including QoS specifications, such as bandwidth and
traffic volumes)
• Availability requirements (including protection/backup plan for computing,
storage, and network resources)
PaaS
• Requirements similar to those of the IaaS category
• Deployment options of user-created applications (e.g., scale-out options)
SaaS
• Application-specific requirements (including licensing options)
• Network requirements (including QoS specifications such as bandwidth and
traffic volumes)
02-02-2024 TE COMP CCA 100
Summary
• What is cloud computing in your mind
Clear or Cloudy?
• Cloud computing is a new paradigm shift of computing
• Cloud computing can provide high quality of properties
and characteristics based on essentially central ideas
• Service models and deployment models provide services
that can be used to
Rent fundamental computing resources
Deploy and develop customer-created applications on clouds
Access provider’s applications over network (wired or wireless)
02-02-2024 TE COMP CCA 101
References
• https://www.cs.mun.ca/courses/cs6910/Lecture-2-Introduction-to-
Cloud-Computing.pptx
• NIST (National Institute of Standards and Technology).
http://csrc.nist.gov/groups/SNS/cloud-computing/
• M. Armbrust et. al., “Above the Clouds: A Berkeley View of Cloud
Computing,” Technical Report No. UCB/EECS-2009-28, University of
California at Berkeley, 2009.
• R. Buyya et. al., “Cloud computing and emerging IT platforms: Vision, hype,
and reality for delivering computing as the 5th utility,” Future Generation
Computer Systems, 2009.
• Cloud Computing Use Cases. http://groups.google.com/group/cloud-
computing-use-cases
• Cloud Computing Explained.
http://www.andyharjanto.com/2009/11/wanted-cloud-computing-
explained-in.html
• From Wikipedia, the free encyclopedia
• All resources of the materials and pictures were partially retrieved from
the Internet.
02-02-2024 TE COMP CCA 102
Technological Drivers for Cloud Computing
• The success of cloud computing can be closely associated with the
technological enhancements in various areas such as service-oriented
architecture (SOA), virtualization, multicore technology, memory and
storage technologies, networking technologies, Web 2.0, and Web 3.0.
• Also, the advancements in programming models, software development
models, pervasive computing, operating systems (OSs), and application
environment have contributed to the successful deployment of various
clouds.
• This chapter focuses on various technological drivers for cloud computing
and also shows how the latest advancements in each of these enabling
technologies have made an impact on the widespread adoption of cloud
computing.
• The recent advancements in each of these technologies are highlighted with
their advantages and characteristic features.
• The various benefits provided by these technological drivers to different
stakeholders such as service providers and service consumers are
emphasized.
02-02-2024 TE COMP CCA 103
SOA and Cloud
• Many people are confused thinking that SOA and cloud computing are the
same, or cloud computing is another name for SOA.
• This is not true. SOA is a flexible set of design principles and standards
used for systems development and integration.
• A properly implemented SOA-based system provides a loosely coupled set
of services that can be used by the service consumers for meeting their
service requirements within various business domains.
• Cloud computing is a service delivery model in which shared services and
resources are consumed by the users across the Internet just like a public
utility on an on-demand basis.
• Generally, SOA is used by enterprise applications, and cloud computing is
used for availing the various Internet-based services.
• Different companies or service providers may offer various services such as
financial services, health-care services, manufacturing services, and HR
services.
02-02-2024 TE COMP CCA 104
• Various users can acquire and leverage the offered services
through the Internet. In such an environment, cloud is about
services and service composition.
• Cloud offers various infrastructure components such as
central processing unit (CPU), memory, and storage.
• It also provides various development platforms for developing
softwares that offer their programmed features to various
cloud consumers through service-oriented application
programming interfaces (APIs).
• The programs running on cloud could be implemented using
SOA-related technologies.
• A cloud user can combine the services offered by a cloud
service provider (CSP) with other in-house and public cloud
services to create SOA-based composite applications.
02-02-2024 TE COMP CCA 105
02-02-2024 TE COMP CCA 106
SOA and SOC
• The service-oriented computing (SOC) paradigm utilizes the services for the
rapid and low-cost development of interoperable distributed applications in
heterogeneous environments.
• In this paradigm, services are autonomous and platform-independent
entities that can be described, published, discovered, and loosely coupled
using various protocols and specifications.
• SOC makes it possible to create cooperating services that are loosely
coupled, and these services can be used to create dynamic business
processes and agile applications in heterogeneous computing platforms.
• SOC uses the services architectural model of SOA as shown in Figure 6.1..
• This model consists of entities such as service provider and service
requestor. Service providers publish the details of their services in the
service registry using an Extensible Markup Language (XML) called Web
Services Description Language (WSDL).
02-02-2024 TE COMP CCA 107
• Service requestors find the suitable services from the
service registry using specifications such as Universal
Description, Discovery, and Integration (UDDI).
• Service providers and service requestors communicate
with each other using protocols such as Simple Object
Access Protocol (SOAP).
• SOAP allows a program or service running on one
platform to communicate with another program or
service running on a different platform, using the
Hypertext Transfer Protocol (HTTP) and its XML as the
mechanisms for information exchange.
02-02-2024 TE COMP CCA 108
Benefits of SOA
• SOA enables mutual data exchange between programs of different vendors
without the need for additional programming or changes to the services.
• The services should be independent, and they should have standard
interfaces that can be called to perform their tasks in a standard way.
• Also, a service need not have prior knowledge of the calling application, and
the application does not need to have knowledge about how the tasks are
performed by a service.
• Therefore, the various benefits of SOA are as follows:
• 1. Reuse of services: Various services can be reused by different
applications, which results in lower development and maintenance costs.
• Having reusable services readily available also results in quicker time to
market.
• 2. Agility: SOA can bring the architectural agility in an enterprise through the
wide use of standards such as web services.
• This is the ability to change the business processes quickly when needed to
support the change in the business activities.
• This agility aspect helps to deal with system changes using the
configuration layer instead of redeveloping the system constantly.
02-02-2024 TE COMP CCA 109
• 3. Monitoring: It helps to monitor the performance of various
services to make the required changes.
• 4. Extended reach: In the collaboration between enterprises
or in the case of shared processes, it is the ability to get the
service of various other processes for completing a particular
task.
• Hence, SOA can be used as an enabling technology to
leverage cloud computing.
• Cloud computing offers on-demand information technology
(IT) resources that could be utilized by extending the SOA
outside of the enterprise firewall to the CSPs’ domain.
• This is the process of SOA using cloud computing.
02-02-2024 TE COMP CCA 110
Economics of choosing a Cloud platform for an organization, based on application
requirements:Cloud Computing Economics
• Requirements For IT firms and their management department, energy consumption is not
a small issue.
• Along with energy, maintenance of data-centers based on an enterprise
• budget is also a prime factor that needs planning.
• So IT managers are looking for ways to increase the capacity and flexibility of computing
• and hardware thereby lowering costs and increasing their return on assets (ROA).
• Within the last few years, the trend of technology shifted from traditional enterprise data
centers to management via server virtualization which allows faster & efficient deployment
of processing without increasing the data center's size, staff overhead or energy
consumption.
• With the maturity of cloud, the cost and economic factors relevant to cloud technology
• including architecture trades, the technique of implementation, life-cycle cost, service
• cost, etc. have striking implications for government as well as in firms.
• Cloud Computing has emerged as a new computing paradigm, & it's bringing a change in
• the same manner as cost and economic evaluations for IT.
• IT environments have evolved a high degree of sophistication for cost estimating
• methodologies in recent years.
02-02-2024 TE COMP CCA 111
Cloud computing economics depends on four customer population
metrics:
• 1. Number of Unique Customer Sets
• 2. Customer Set Duty Cycles
• 3. Relative Duty Cycle Displacement
• 4. Customer Set Load
• These above metrics allow the cloud-providers to use less IT resources and
obtain maximum IT resource.
• Proper balancing & handling of these above resources can save
• up to 30% of the IT resources.
• For economic planning, Booz Allen Hamilton, a leading strategy, and
technology consulting firm, has a clear understanding of and models for
effective Cloud Computing-based life-cycle cost and economic modeling.
02-02-2024 TE COMP CCA 112
• This firm addresses every aspect of cost related efforts & questions such
as:
• 1. If you are migrating current systems to a cloud, how will you handle (and cost)
• the migration?
• 2. Will you migrate all IT related tasks into the cloud, or it will be partially
migrated?
• 3. What IT chores should remain in the current environment?
• 4. Will you use a public cloud, or you will need a private cloud?
• 5. If you are migrating IT requirements into a cloud, how will you handle and
budget
• for the short-term operations of distributed and cloud infrastructures?
• 6. What can special-purpose computing tasks be enabled in the cloud
technology
• that wasn't possible in the current environment?
• 7. Can the cloud provide levels of service commensurate with existing service-
level
• agreements?
02-02-2024 TE COMP CCA 113
• Economic Characteristics of Cloud:
• The unique characteristics of an ideal cloud technology model is mentioned below:
• Scalability: Access to unlimited computer resources without thinking about the economic
• aspects. This feature needs planning & provisioning.
• Low Entry barrier: Users can gain access to systems for small investments also; which
• allows the offer to access global resources to small ventures.
• Flexibility: Cloud provides high economic elasticity. Users can re-size their resources
• based on their need. This feature allows optimizing the system & captures all possible
• requirements.
• Utility: As cloud providers 'pay-as-you-go' model, users can match their needs &
• resources on an ongoing basis. This eliminates waste and added benefits of shifting risks
• from the client.
02-02-2024 TE COMP CCA 114
Application Development:
• Service creation environments to develop cloud based applications:
• Design the application as a collection of services:
• Decouple the data:
• Consider communications between application components:
• Model and design for performance and scaling:
• Make security systemic within the application:
02-02-2024 TE COMP CCA 115
• How to decide if the cloud is right for your requirements:
02-02-2024 TE COMP CCA 116