KEMBAR78
Lecture02 - Cloud Computer Basics | PDF | Software As A Service | Cloud Computing
0% found this document useful (0 votes)
6 views45 pages

Lecture02 - Cloud Computer Basics

The document provides an introduction to cloud computing, covering its definition, types of services (SaaS, PaaS, IaaS), advantages, disadvantages, and enabling technologies. It discusses the evolution of cloud computing, its applications, and the infrastructure required for large-scale data processing using frameworks like MapReduce and Hadoop. Additionally, it outlines the different types of clouds (public, private, hybrid) and highlights the importance of virtualization and resource management in cloud environments.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views45 pages

Lecture02 - Cloud Computer Basics

The document provides an introduction to cloud computing, covering its definition, types of services (SaaS, PaaS, IaaS), advantages, disadvantages, and enabling technologies. It discusses the evolution of cloud computing, its applications, and the infrastructure required for large-scale data processing using frameworks like MapReduce and Hadoop. Additionally, it outlines the different types of clouds (public, private, hybrid) and highlights the importance of virtualization and resource management in cloud environments.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 45

Introduction to Cloud Computing

1
Lecture Motivation…
■ General overview on cloud computing
 What is cloud computing

Services
 Types
 Advantages and disadvantages
 Enabling technologies
 An example infrastructure

2
Introduction to Cloud Computing
Lecture Outline
■ What is Cloud?
■ What is Cloud Computing?
■ Cloud Computing Services
■ History of Cloud Computing
■ Why Cloud Computing
■ Drawbacks of Cloud Computing
■ Types of Clouds

3
Introduction to Cloud Computing 3
A Cloud is …
■ Datacenter hardware and software
that the vendors use to offer the
computing resources and services

4
Introduction to Cloud Computing
Cloud Computing
■ Represents both the cloud & the provided services
■ Why call it “cloud computing”?
 Some say because the computing happens out there "in the
clouds"

Wikipedia: "the term derives from the fact that most


technology diagrams depict the Internet or IP availability
by using a drawing of a cloud."

5
Introduction to Cloud Computing
Cloud Computing
■ Who is Who…
Cloud providers Cloud Users & Service Service Users
Providers
IBM Sun Cloud
SmugMug
Microsoft
Amazon VMware Aptana
AWS Amazon S3
Sun Cloud Animoto
3tera
Dell Sun Microsystems
Hewlett-Packard lland Qloud
Cloud Testing
Citrix Systems NaviSite
Outsourcery SynfiniWay IBM Amazon AWS
Red Hat
Intelliquib

“With Amazon [AWS], on Day One of launch we


could scale to the world.”
-Brad Jefferson, Co-Founder & CEO, Animoto

“Animoto has partnered with Amazon to leverage multiple Users use it to


offerings in their Web Services (AWS) platform which, in produce video
conjunction with Animoto's own render farm, constitutes pieces from their
the Animoto web infrastructure.” photos, video clips
and music.
6
Introduction to Cloud Computing
Cloud Computing Services
Three basic services:
■ Software as a Service (SAAS) model

 Apps through browser


■ Platform as a Service (PAAS) model
 Delivery of a computing platform for custom software
development as a service
■ Infrastructure as a Service (IAAS) model
 Deliver of computer infrastructure as a service
■ XAAS, the list continues to grow…

7
Introduction to Cloud Computing
Cloud Services ( XaaS )

8
Introduction to Cloud Computing
SaaS (1/3) SaaS

■ Started around 1999


■ Application is licensed to a customer as a
service on demand
■ Software Delivery Model:
 Hosted on the vendor’s web servers
 Downloaded at the consumer’s device and disabled
when on‐demand contract is over

9
Introduction to Cloud Computing
SaaS (2/3) SaaS

■ SaaS architecture/ Maturity levels:


 Distinguishing attributes: configurability, multi‐tenant efficiency, scalability

1 2 3 4

Tenant 1 Tenant 2 Tenant 1 Tenant 2 Tenant 1 Tenant 2 Tenant 1 Tenant 2

Tenant Load Balancer

instance 1 instance 2 instance instance instance


instance instance
Configurable + Multi-tenant-efficient + Scalable
•Each has its own •Same application but • (+):Efficient use of server
customized version of distinct instance/customer resources without
the application and apparent
run differences to end users
its own instance • (-): scalability limits
10
Introduction to Cloud Computing
SaaS (3/3) SaaS

■ Examples

11
Introduction to Cloud Computing
PaaS (1/2) SaaS
PaaS
■ Delivery of an integrated computing platform (to
build/test/deploy custom apps) & solution stack as a
service.

■ Deploy your applications & don’t worry about buying &


managing the underlying hardware and software layers

12
Introduction to Cloud Computing
PaaS (2/2) SaaS
PaaS
■ Examples

13
Introduction to Cloud Computing
SaaS
IaaS (1/5)
PaaS
■ Delivery of computer infrastructure (typically IaaS
platform virtualization environment) as a service
■ Buy resources
 Servers
 Software
 Data center space
 Network equipment as fully outsourced services
■ Example:

14
Introduction to Cloud Computing
IaaS (2/5) SaaS
PaaS
■ Virtualization Technology is a major enabler of IaaS
IaaS
 It’s a path to share IT resource pools: Web servers, storage,
data, network, software and databases.
 Higher utilization rates

App1 App2 App3

Virtualized Stack
OS1 OS2 OS3
App1 App2
Traditional

Middleware
Stack

App3 OS
Hypervisor
Hardware
Hardware

15
Introduction to Cloud Computing
IaaS (3/5)
SaaS
■ Virtualization Technology is a major enabler of IaaS PaaS
IaaS

HARDWAR
E 16
Introduction to Cloud Computing
IaaS (4/5) SaaS
■ Granularity of VMs PaaS

 Multi‐core processors IaaS

VM VM
Quad Core:
VM VM

VM

17
Introduction to Cloud Computing
IaaS (5/5)
Capacity
Service Request Operations Dynamic
Monitoring Planning
Catalog UI UI Scheduling
SLA

Request Driven Provisioning & Service Management

Web 2.0 Data


Software Virtual High Volume
Collaborative Intensive
Development Classroom Transactions
Innovation Processing

Workloads

Virtual Virtual Virtual Virtual Virtual


Servers Storage Networks Applications & Clients
Virtualization Middleware

Serve Power Racks, Stora Networki


rs Systems BladeCen ge ng
Physical Layer ter
18
Introduction to Cloud Computing
Resource sharing and consolidation
■ Offering computing resources as a service or
utility through:
 Virtualization
 Dynamic provisioning

Customizable
User User Shared Resource:
1: 2:

19
Introduction to Cloud Computing
Heterogeneous Physical Resources
Customizable Shared
Heterogeneous
Resource:
User User User
1: 2: 3:

20
Introduction to Cloud Computing
More (XaaS): Everything as a Service EaaS
■ Desktop: DaaS
 Use your desktop virtually from anywhere
■ Communication: CaaS
■ Virtualization: VaaS
■ Hardware: HaaS
■ …etc

21
Introduction to Cloud Computing
Evolution
■ Discussed in lecture1

22
Introduction to Cloud Computing
Enabling Technologies
■ Virtualization
■ Web 2.0
■ Distributed Storage
■ Distributed Computing
■ Utility Computing
■ Network Bandwidth & Latency
■ Fault‐Tolerant Systems

23
Introduction to Cloud Computing
Why Cloud Computing?
■ Large‐Scale Data‐Intensive Applications
■ Flexibility
■ Scalability
■ Customized to your current needs:
 Hardware
 Software
■ Effect:
 Reduce Cost
 Reduce Maintenance
 High Utilization
 High Availability
 Reduced Carbon Footprint
24
Introduction to Cloud Computing
Why Cloud Computing?

■ Flexibility
 Software: Any software platform
 Access: access resources from any machine
connected to the Internet
 Deploy infrastructure from anywhere at
anytime
 Software controls infrastructure

25
Introduction to Cloud Computing
Why Cloud Computing?
■ Scalability
 Instant
 Control via software

Add/cancel/rebuild resources instantly
 Start small, then scale your resources up/down as
you need
 illusion of infinite resources available on
demand

26
Introduction to Cloud Computing
Why Cloud Computing?
■ Customization
 Everything in your wish list
 Software platforms
 Storage
 Network bandwidth
 Speed

27
Introduction to Cloud Computing
Why Cloud Computing?
■ Cost
 Pay‐as‐you‐go model
 Small/medium size companies can tap the
infrastructure of corporate giants.
 Time to service/market
 No upfront cost

28
Introduction to Cloud Computing
Why Cloud Computing?
■ Maintenance
 Reduce the size of a client’s IT department
 Is the responsibility of the cloud vendor
 This Includes:
 Software updates
 Security patches
 Monitoring system’s health
 System backup
 …etc

29
Introduction to Cloud Computing
Why Cloud Computing?
■ Utilization
 Consolidation of a large number of resources
 CPU cycles
 Storage
 Network Bandwidth

30
Introduction to Cloud Computing
Why Cloud Computing?
■ Availability
 Having access to software, platform, infrastructure
from anywhere at any time
 All you need is a device connected to the internet

■ Reliability
The system’s fault tolerance is managed by the cloud
providers and users no longer need to worry about it.

31
Introduction to Cloud Computing
Why Cloud Computing?
■ CO2 Footprint
 Consolidation of servers
 Higher utilization
 Reduced power usage

32
Introduction to Cloud Computing
Drawbacks
■ Security
■ Privacy
■ Vendor lock‐in
■ Network‐dependent
■ Migration

33
Introduction to Cloud Computing
Types of Clouds (1/4)
■ Public
■ Private
■ Hybrid

34
Introduction to Cloud Computing
Types of Clouds (2/4)
■ Public (external) cloud
 Open Market for on demand computing and IT resources
 Concerns: Limited SLA, Reliability, Availability, Security, Trust and
Confidence
 Examples: IBM, Google, Amazon, …

35
Introduction to Cloud Computing
Types of Clouds (3/4)
■ Private (Internal) cloud
 For Enterprises/Corporations with large scale IT

36
Introduction to Cloud Computing
Types of Clouds (4/4)
■ Hybrid cloud
 Extend the Private Cloud(s) by connecting it to other external cloud
vendors to make use of available cloud services from external
vendors
■ Cloud Burst
 Use the local cloud, when you
need more resources, burst
into the public cloud

37
Introduction to Cloud Computing
Types of Applications
■ Open discussion

38
Introduction to Cloud Computing
System Infrastructure
■ Large‐scale Data‐centric applications
■ Exploit parallelism
■ Easy to manage
■ Elastic (dynamic?)
■ Fault‐tolerant

39
Introduction to Cloud Computing
MapReduce and Apache Hadoop
■ MapReduce: Abstraction that simplifies writing
applications that access massively distributed data

■ Hadoop: Open source MapReduce software platform

■ Distributes data and processing across many nodes


■ Processes the data locally at each node
■ Transparent fault tolerance through
 Automatic data duplication
 Automatic detection and restarting of failing nodes

40
Introduction to Cloud Computing
MapReduce Programming Model
■ Functional programming that is easily
parallelizable
■ Split into two phases:
 Map – Perform custom function on all
items in an array
 Reduce – Collate map results using custom
function
■ Scales well – computation separated
from processing dataflow
■ Illustrative example:
 Map that squares the value of numbers in
an array
{1, 2, 3, 4} ‐> {1, 4, 9, 16}
 Reduce that sums the squares : 30

41
Introduction to Cloud Computing
Hadoop Map/Reduce
■ The Map‐Reduce programming model
 Framework for distributed processing of large data sets
 Pluggable user code runs in generic framework
■ Example:
 cat * | grep | sort | unique ‐c | cat > file
 input | map | shuffle | reduce | output
■ Natural for unstructured data:
 Log processing
 Web search indexing
 Ad‐hoc queries

42
Introduction to Cloud Computing
Apache Hadoop
■ Open source MapReduce software platform
■ Automatically provides framework for developing
MapReduce applications
 Handles mapping and reducing logistics
 Programmer just provides custom functionality
■ Currently takes custom functionality in Java and
Python
■ Uses an open source Eclipse plug‐in to interface
with Hadoop

43
Introduction to Cloud Computing
HDFS
■ Very Large Distributed File System
 10K nodes, 100 million files, 10 PB
■ Assumes Commodity Hardware
 Files are replication in order to
handle hardware failure
 System detects failures and
recovers from them
■ Optimized for Batch Processing
 Data locations exposed so that
computations can move to where
data resides
 Provides very high aggregate
bandwidth

44
Introduction to Cloud Computing
Distributed File System NameNode

Single Namespace for entire cluster


Data Coherency
 Write‐once‐read‐many access model Client
 Client can only append to existing files
■ Files are broken up into blocks
 Typically 128 MB block size
 Each block replicated on multiple DataNodes
■ Intelligent Client DataNodes
 Client can find location of blocks
 Client accesses data directly from DataNode

45
Introduction to Cloud Computing

You might also like