02 - Concepts and Models

Download as pdf or txt
Download as pdf or txt
You are on page 1of 60

COMP7940

Cloud Computing

Chapter 02

Cloud Computing Fundamentals

Reading: Erl et al., Chap 3, 4


WHY CLOUD?

2
2010 China IT Leadership Summit
• Robin Li (Founder of Baidu):
— “Cloud is old wine in a new bottle.”
— “Moving traditional software (e.g. Microsoft Office or Oracle) to
cloud is a thankless task.”
• Pony Ma (Founder of Tencent):
— “Cloud computing looks like it is too early.”
— “(Computing power) can be a public resource as readily
accessible as water or electricity. I think it needs hundreds to
thousands of years, maybe humans can do that when Avatar
comes to reality.”

• Jack Ma (Founder of Alibaba):


— “I don’t know about the tech. … We make cloud because the
market and customers need it.”
3
Tech-driven or demand-driven?
• Robin Li: Master in • Jack Ma: No relevant
Computer Science background on CS
• Pony Ma: BEng in
Computer Science,
thesis: Stock price
prediction system
over neural network
(1993)

4
Origins and Influences
• Concept of utility computing (1960’s)
—…computing may someday be organized as a public
utility just as the telephone system is a public utility
—Computer networks are still in their infancy, but as
they grow up and become sophisticated, we will
probably see the spread of computer utilities
• Since 1990s, general public has been leveraging
forms of Internet-based computer utilities
—Consumer-centric: Yahoo! Google Hotmail Facebook
YouTube Twitter LinkedIn
—Enterprise-oriented: (con’t next page)

5
Origins and Influences
• Enterprise-oriented:
—1990s Salesforce.com pioneered the concept of
remotely provisioned services for enterprise
—2002 Amazon launched AWS for remote storage,
computing and business functionality
• The terms “cloud computing”:
—About 2006 when Amazon launched Elastic Compute
Cloud EC2
—Google Apps provide browser based enterprise
application, and later Google App Engine for web API.

6
Definitions
• National Institute of Standards and Technology
(NIST):
• “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.”
Short definition: Out-sourcing
7
NIST Definition
• 5 Essential Characteristics
— On-demand self-service.
— Broad network access.
— Resource pooling.
— Rapid elasticity.
— Measured Service.
• 3 Service Models:
— Software as a Service (SaaS)
— Platform as a Service (PaaS)
— Infrastructure as a Service (IaaS)
• 4 Deploy Models:
— Private/Community/Public/Hybrid clouds

8
Business drivers of cloud computing: E-
Commercial Example
• Imaging an e-commercial startup.

• Initially, you try to sell products to HKBU


students.

• You build your first website on your laptop and


start your business.

9
E-Commerce Example (Cont.)
• Students are likely to buy things at school: more
traffic to your website at daytime while no
traffic at night.

• What cloud can do: Capacity planning

10
Business drivers of cloud
computing
• Capacity planning
— Capacity planning is the process of determining and fulfilling future
demands of an organization’s IT resources, products, and services.
— Capacity is the maximum amount of work that an IT resource is
capable of delivering in a given period of time.
— Discrepancy between capacity of an IT resource and its demand
• Over-provisioning – inefficiency
• Under-provisioning – unable to fulfill user needs; transaction losses
— Different capacity planning strategies
• Lead strategy - Adding capacity to an IT resource in anticipation of demand.
• Lag strategy - Adding capacity when the IT resource reaches its full
capacity.
• Match strategy – Adding IT resource capacity in small increments, as
demand increases.
— Difficulty – there is a constant need to balance peak usage
requirements without unnecessary over-expenditure on
infrastructure.

11
E-Commerce Example (Cont.)
• Later, you are planning to extend your business
to other Universities like CityU or PolyU.

• You need to buy new servers, hire more IT


adminstrators to manage those servers, with
additional cost.

• What cloud can do: Cost Reduction

12
Business drivers of cloud
computing
• Cost reduction
—Acquiring new infrastructure: Computers, servers,
networks, software applications, etc.
—Operational overhead:
• Technical personnel to keep the environment operational;
• Updates and patches that leads more testing and
development
• Utility bills
• Security and access control measures
• Admins and accounts staff

13
Business drivers of cloud
computing
• Organizational Agility
— Organizational agility is the measure of an organization’s
responsiveness to changes or usage fluctuations, especially to
customers or users of services.
— Freed from maintaining physical infrastructure, the team focuses on
innovation. They roll out new features faster, thanks to the agility
provided by cloud services.
• Example: consider the Apps
Server tested and
Buy new servers installed
New server
that scale up to 50 arrives. Should
we install the
server?

Buy more servers for scale to 250 14


Cloud Enabling Technology
• Clusters
• Virtualization deployment
• Fast Network
• Data Center Technology
• Web Technology
• Multitenant Technology
• Service Oriented Architecture (SOA)
• …

15
BASIC CONCEPTS
AND TERMINOLOGIES

16
Basic concepts and
terminologies
• A cloud refers to a distinct IT environment
designed for the purpose of remotely
provisioning scalable and measured IT
resources.
• Prior to cloud computing becoming its own
formalized IT industry segment, the symbol of a
cloud was commonly used to represent the
Internet.
• This same symbol is now used to specifically
represent the boundary of a cloud environment.

17
Basic concepts and
terminologies
Difference Between Cloud and Internet
• Internet is an interconnection of networks providing
remote access to a set of decentralized IT resources.
• A cloud is a specific environment used to remotely
provision IT resources.
• Clouds are dedicated to supplying back-end processing
capabilities and user-based access to these capabilities.
• A cloud has a finite boundary.
• Many individual clouds are accessible via the Internet.
• A cloud is typically privately owned and offers access to
IT resources that is metered (i.e., somehow paid for).
• It is not necessary for clouds to be Web-based even if
they are commonly based on Internet protocols.

18
Basic concepts and
terminology
IT Resources
• An IT resource is a physical or virtual IT-related
artifact.
—Software-based: virtualized server, program,…
—Hardware-based: network device, storage,…

19
Basic concepts and
terminology
On-premise
• An IT resource that is hosted in a conventional IT
enterprise within an organizational boundary is said
to be on-premise.
• On-premise should not be treated as cloud-based
• An on-premise IT resource can access and interact
with a cloud-based IT resource.
• An on-premise IT resource can be moved to a cloud
and becomes a cloud-based IT resource.
• Redundant deployments of an IT resource can exist
in both on-premise and cloud-based environments.

20
Basic concepts and
terminology
Scaling
• Horizontal Scaling – scaling out and scaling in
• Vertical Scaling – scaling up and scaling down;
less common.

21
Basic concepts and
terminology

22
Basic concepts and
terminology
Cloud service
• Not all IT resources residing within a cloud can
be made available for remote access.
• A cloud service is any IT resource that is made
remotely accessible via a cloud. For example,
—A simple Web-based software program with a
published technical interface invoked via a messaging
protocol (e.g., HTTP).
—A remote access point for administrative tools or
larger environments.
—Search engine services (Google, Baidu, Bing, etc.)

23
Basic concepts and
terminology
Service-level agreement (SLA)
• Cloud service usage conditions are typically expressed in a
service-level agreement that is the human-readable part of a
service contract between a cloud provider and cloud
consumer.
• The contract describes Quality of Service (QoS) features,
behaviors, and limitations of a cloud-based service.
• An SLA provides details of various measurable characteristics
related to IT outcomes, such as
— Uptime, security characteristics, and other specific QoS features,
including availability, reliability, and performance.
— Example: automatic scaling out if loading of virtual server is larger
than 70% for 3 continuous minutes.
• Since the implementation of a service is hidden from the
cloud consumer, an SLA becomes a critical agreement.

24
Cloud Computing Reference
Architecture
• NIST Cloud Computing Reference Architecture defines
five major actors in terms of roles and responsibilities.

25
Roles and Boundaries
Cloud provider
• Organization providing cloud-based IT resources
• Responsible for providing cloud services to cloud
consumers according to SLA guarantees
• Management and administrative duties of cloud
infrastructure
• Normally owner of IT resources in cloud; may
resell IT resources leased from other cloud
providers

26
Roles and boundaries
Cloud consumer
• Organization or human with a formal contract with cloud
provider to use IT resources in cloud
• Uses cloud service consumer to access a cloud service

Cloud service consumer


• Formally, cloud service consumer refers to the software
programs or applications that interact with a cloud
service’s application programming interface (API).
• When depicting interaction scenarios between cloud-
based IT resources and consumer organizations, the
term cloud consumer is often used to label an
organization, a human accessing the cloud, or a
software program assuming the role of cloud consumer

27
Roles and boundaries

A cloud consumer (Organization A) interacts with a


cloud service from a cloud provider (that owns Cloud
A). Within Organization A, the cloud service consumer
is being used to access the cloud service.

28
Roles and boundaries
Cloud Service Owner
• The person or organization that legally owns a
cloud service is called a cloud service owner.

A cloud consumer can be a cloud service owner when it A cloud provider becomes a cloud service owner if it
deploys its own service in a cloud. deploys its own cloud service, typically for other cloud
consumers to use.

29
Roles and boundaries
Cloud resource administrator
• The person or organization responsible for
administering a cloud-based IT resource,
including cloud services.

30
Roles and boundaries
• Cloud Auditor – A third-party (often accredited)
that conducts independent assessments of cloud
environments
• Cloud Broker – This role is assumed by a party
that assumes the responsibility of managing and
negotiating the usage of cloud services between
cloud consumers and cloud providers.
• Cloud Carrier – The party responsible for
providing the wire-level connectivity between
cloud consumers and cloud providers assumes
the role of the cloud carrier.
31
Roles and boundaries
Organizational boundary
• Physical perimeter that surrounds a set of IT
resources that are owned and governed by an
organization.

32
Roles and boundaries
Trust boundary
• A logical perimeter that typically spans beyond
physical boundaries to represent the extent to
which IT resources are trusted

33
CLOUD DELIVERY MODELS

34
Cloud Delivery Models
Three most common delivery models
• Infrastructure-as-a-Service (IaaS)
• Platform-as-a-Service (PaaS)
• Software-as-a-Service (SaaS)
Others:
• Storage-as-a-Service
• Database-as-a-Service
• Security-as-a-Service
• Communication-as-a-Service
• Integration-as-a-Service
• Testing-as-a-Service
• Process-as-a-Service

35
A pizza eating example
• Imaging you want to • Table
eat pizza, what do • Chair
you need? • Flower
• Meats
• Cooking tools
• Water

36
Making Pizza from sketch (On-premise)
• You are in control all materials:
—Table
—Chair
—Flower
—Meats
—Cooking tools
—Water

37
Heating pizza (IaaS)
• You buy the frozen pizza and outsourced
—Flower
—Meat
• You still need to be in control of
—Table
—Chair
—Cooking tools
—Water

38
IaaS
• A self-contained IT environment comprised of
infrastructure-centric IT resources that can be accessed
and managed via cloud service-based interfaces and
tools.
— hardware, network, connectivity, operating systems, and other
“raw” IT resources
— IT resources are typically virtualized and packaged into bundles
to simplify up-front runtime scaling and customization.
• IaaS provides cloud consumers with a high level of
control and responsibility over the configuration and
utilization of the IT resources.
— Most common: a freshly initialized virtual server (EC2, Heroku)
• Note that in the example, the SLA guarantees the
uptime/availability of the virtual server, but nothing for
failover.

39
IaaS

A cloud consumer is using a virtual server within an IaaS environment. Cloud


consumers are provided with a range of contractual guarantees by the cloud
provider, pertaining to characteristics such as capacity, performance, and
availability.
40
Ordering pizza (PaaS)
• You order a pizza for delivery, and outsource
the cooking:
—Flower
—Meat
—Cooking tools
—Water
• You still need to have a place to eat
—Table
—Chair

41
PaaS
• This model is a pre-defined “ready-to-use” environment comprised of
already deployed and configured IT resources. E.g.
— A server with Database Management System (DBMS)
— A front end web server
• Rationale behind a PaaS model
— The cloud consumer wants to extend on-premise environments into the cloud for
scalability and economic purposes.
— The cloud consumer wants to entirely substitute an on-premise environment.
— The cloud consumer wants to become a cloud provider and resells cloud services to
other cloud consumers.
• No set-up and maintenance burden of IT resources on cloud consumer
• Cloud consumer has a lower level of control over the IT resources.
• Note that the SLA in the example guarantees availability of the virtual
machine, plus auto-scaling if there is a sudden surge in demand. The
pricing is also based on hours or number of requests, whichever is
higher for the cloud provider.

42
PaaS

A cloud consumer is accessing a ready -made PaaS environment.


The question mark indicates that the cloud consumer is
intentionally shielded from the implementation details of the 43
platform.
Eating pizza in a restaurant (SaaS)
• You go out for pizza in a restaurant, and you
don’t need to take care of anything.
—Flower
—Meat
—Cooking tools
—Water
—Table
—Chair

44
SaaS
• A software program as a shared cloud service
— Examples: Google Map, Search Engines, Language translation
software, etc.
• Cloud consumer has very limited administrative control.
• Service can be provisioned by cloud provider, or another
cloud service owner.
— Example: an organization acting as a cloud consumer while
working with a PaaS environment can build a cloud service and
offer it in the same cloud as an SaaS.
• Note that in the example, the SLA guarantees the
response time to user request. This implicitly guarantees
server availability and auto-scaling.
• The pricing is also based on number of requests.

45
SaaS

The cloud service consumer is given access the cloud


service contract, but not to any underlying IT resources
or implementation details.

46
Comparison

47
Comparison

48
Combining Cloud Delivery
Models

49
Combining Cloud Delivery
Models
An example of a contract
between Cloud Providers X and
Y, in which services offered by
Cloud Provider X are physically
hosted on virtual servers
belonging to Cloud Provider Y.
Sensitive data that is legally
required to stay in a specific
region is physically kept in Cloud
B, which is physically located in
that region.

50
Combining Cloud Delivery

51
CLOUD DEPLOYMENT
MODELS

52
Cloud Deployment Models
Public Cloud
• Publicly accessible
• Owned by a third-party
• IT resources provision
via IaaS, PaaS or SaaS
• Paid or free or ads

53
Cloud Deployment Models
Community Cloud
• Accessible to a specific
community
• The cloud may be
jointly owned by the
community members
or by a 3rd party
provider
• Member consumers
share responsibility of
defining and refining
the cloud

54
Cloud Deployment Models
Private Cloud
• Owned by a single organization
• Centralizing access to IT resources by different
parts/locations/departments
• A separate department typically assumes the
responsibility for cloud provider role.
• IT resources in the cloud are still considered “cloud-
based” as they are remotely accessed by cloud
consumers.
• IT resources hosted outside of the private cloud by
other departments acting as cloud consumers are
considered “on-premise”.

55
Cloud Deployment Models

A cloud service consumer in the organization’s on-premise


environment accesses a cloud service hosted on the same
56
organization’s private cloud via a virtual private network.
Cloud Deployment Models
Hybrid Cloud
• A cloud comprised of 2 or more different other
models, e.g.:
— A cloud consumer may deploy cloud services processing
sensitive data to a private cloud and other less sensitive
cloud services to a public cloud.
• complex and challenging to create and maintain due
to the potential disparity in cloud environments
• management responsibilities are typically split
between the private cloud provider organization and
the public cloud provider.

57
Cloud Deployment Models

An organization using a hybrid cloud architecture that


utilizes both a private and public cloud.

58
Cloud Deployment Models
• Virtual Private Cloud – Also known as a
“dedicated cloud” or “hosted cloud,” this model
results in a self-contained cloud environment
hosted and managed by a public cloud provider,
and made available to a cloud consumer.
• Inter-Cloud – This model is based on an
architecture comprised of two or more inter-
connected clouds.

59
Lab Session:
• Practice Python and Git
• Download PDF from Moodle

60

You might also like