CLOUD COMPUTING
Natawut Nupairoj, Ph.D.
Outline
2
Overview
Cloud Approaches
Cloud Enabling Technology
Cloud Archietcture
Real-World Case Study
Overview
3
What is Cloud Computing?
Various definitions
Wikipedia
Web-based processing, whereby shared resources, software, and information are provided to computers and other devices (such as smartphones) on demand over the Internet
Gartner
a style of computing in which massively scalable IT-related capabilities are provided 'as a service' using Internet technologies to multiple external customers
4
Common Understanding about Cloud Computing
Web-enabled services
(software/platform/infrastructure)
Remote datacenter
Shared resources via virtualization
Outsource maintenance tasks to the hosting organizations
5
(Good Luck) Defining Cloud Computing
Software-as-a-Service
“My customer resource management (CRM) system is out on the Internet!”
Grids vs. Clouds
Shared Virtual Resources
Batch Jobs vs. Online Applications
Different Approaches to State Management
Network Diagrams
A service is “on a cloud somewhere”
Virtualization Platforms & APIs
Hardware can be manipulated with software
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
6
Grid Cloud
Underlying concept Utility Computing Utility Computing Main benefit Solve computationally
complex problems
Provide a scalable standard environment for network-centric application development, testing and deployment Resource distribution /
allocation
Negotiate and manage resource sharing;
schedulers
Simple user <-> provider model; pay-per-use
Domains Multiple domains Single domain
Character / history Non-commercial, publicly funded
Commercial
7
Grid vs. Cloud
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
Evolution of Cloud Architecture
Stand-Alone
Client-Server
Web-Based Application
ASP
Cloud Computing
9
A Brief History
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
10
Amazon EC2 (August 2006)
Google App Engine (April 2008)
Microsoft Azure (Oct 2008) Facebook Platform
(May 2007) Amazon S3
(March 2006) Salesforce AppExchange
(March 2006)
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
11
Example: Amazon Web Services (AWS)
Elastic Cloud Computing
virtual servers for rent
priced on per hour from
$0.10 to $1
Example Profile
1.7 Ghz x86 processor
1.7 GB of RAM
160 GB disk
250 Mb/second network
Data Storage in Amazon Data Center
Web Service interface
Storage: $0.15 per GB/Month
Data Transfer: $0.20/GB to transfer data
Private and public storage
Amazon EC2 Amazon S3
12
Example: Google Apps
Web based office applications and collaboration
Provide API for further customization and information accessing
Application API
Authentication API
Etc.
Google Gears for offline operations
13
Example: Salesforce.com
Provide web-based CRM applications
Customers just sign-up and do not have to maintain any
infrastructure
Currently have more than 80,000 customers (over 2,100,000 subscribers)
Pricing from $5/user/month to
$250/user/month
16
Human Capital Management
Customer Service
Sales &
Marketing Development
Finance IT
Infrastructure
Compliance and Risk
Workday HCMD Salary.com Salary Manager Performance Management Time-off Manager Volunteer tracking ADP Payroll iemployee Time Tracking
Coupa Procure to Pay Concur T&E Manager Manhattan Space &
Lease Management Contract Management
SFA Marketing Click to dial (CTI Integrations) Event Management Opportunity to Quote Quote to cash Sales Compensation Checkout E- commerce Live Chat (Google) Salesforce Customer Service Salesforce Content Salesforce Ideas Plateau Learning Management Professional Services Management
IT Infrastructure Support Portfolio Management Compliance IT Help Desk LiveOps Asset Management Intranet Google Apps Development Domain Program and Resource Management Agile Scrum and Bug Management QA Test Director
Compliance/Ri sk Domain Audit Controls Management
Salesforce.com CRM Functions Benefits of Cloud Computing
No Capital Expenditure (CapEx)
Pay as you go
Pay only for what you need
Elastic Capacity
Faster time to market
Focus on your business
18
Source: S. Brunozzi, “2010 architecting for the cloud”,
http://www.slideshare.net/simone.brunozzi/2010-architecting-for-the-cloud-4719195, 2010
Benefits of Cloud Computing
19
Source: S. Brunozzi, “2010 architecting for the cloud”,
http://www.slideshare.net/simone.brunozzi/2010-architecting-for-the-cloud-4719195, 2010
Benefits of Cloud Computing
20
Source: S. Brunozzi, “2010 architecting for the cloud”,
http://www.slideshare.net/simone.brunozzi/2010-architecting-for-the-cloud-4719195, 2010
Benefits of Cloud Computing
21
Source: S. Brunozzi, “2010 architecting for the cloud”,
http://www.slideshare.net/simone.brunozzi/2010-architecting-for-the-cloud-4719195, 2010
Suppose you are Forbes.com
You offer on-line real time stock market data
Why pay for capacity weekends, overnight?
20090909_Virt ualizationAnd Cloud
9 AM - 5 PM, M-F
ALL OTHER TIMES
Rate of Server Accesses
Source: N. Wilde and T. Huber, “Virtualization and Cloud Computing”, 2009.
23
Forbes' Solution
Host the web site in Amazon's EC2 Elastic Compute Cloud
Provision new servers every day, and deprovision them every night
Pay just $0.10* per server per hour
* more for higher capacity servers
Let Amazon worry about the hardware!
Source: N. Wilde and T. Huber, “Virtualization and Cloud Computing”, 2009.
Cloud Approaches
24
Infrastructure as a Service (IaaS)
Platform as a Service (PaaS)
Software as a Service (SaaS)
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
25
26 Source: katescomment.com
Infrastructure as a Service (IaaS)
Provide computer infrastructure as a service
Virtual Servers / Storages
Network equipments: Load balancers, Firewalls, etc.
“Utility computing”, pay per use
Simple to scale and manage
Example:
Amazon EC2, S3
Rackspace Mosso
GoGrid
27
Source: http://microreviews.org/types-of-cloud-computing/
Platform as a Service (PaaS)
Provide infrastructure, system software stacks, and development tools
Web servers, database servers, etc.
Many vendors provide services with API
Google Calendar, etc.
Examples
Google AppEngine
Yahoo! Maps
28
Source: http://www.zoho.com/creator/paas.html
Software as a Service (SaaS)
Complete web-based software
“Pay-as-you-go” model
Allow customization via parameter configuring
Examples
Salesforce.com
Google Docs
Gmail, hotmail
29 30
Adapted from
•
P. Strassmann, “ Introduction to Virtualization”, George Mason University, 2008
•
M. Behrens, “Virtualization Assessment”
Cloud Enabling Technology
31
Server Consolidation
Old applications rely on many servers
High operation cost:
maintenance, electricity, etc.
Heterogeneous environments
Difficult to migrate
New servers are very powerful and under-utilized
Some resources remain idle
Reduce costs by
consolidating servers
Virtualization Concept
33
Capacity Utilization:
Stand-Alone vs. Virtualization Servers
Dedicated Server Virtualized Servers
34
Virtualization Architeture
35
Benefits of Virtualization
Flexible Resource management
Server consolidation
Dynamic resource sharing
Reduce power consumption
Simplify maintenance
Zero downtime maintenance
Live migration
Patch management
Efficient recovery
36
Resource Consolidation
Reduce number of physical servers
Decrease power consumptions
37
Resource pooling
Flexible resource allocation
Example: Amazon EC2 Revisited
38
Source: K. Gan and L. McMurray, “Beginner’s Guide to Cloud Computing and the Good & Bad for Developers”
Amazon EC2 Management Console
39
Source: iphp, “Get your own cloud server running in 15 minutes”,
http://www.webdigi.co.uk/blog/2009/get_your_own_cloud_server_running_in_15_minutes/
Amazon EC2 Launch Wizard
40
Source: iphp, “Get your own cloud server running in 15 minutes”,
http://www.webdigi.co.uk/blog/2009/get_your_own_cloud_server_running_in_15_minutes/
Cloud Architecture
41
Public Cloud
Cloud Ecosystem
Enterprise
Private Cloud Private Cloud
External Internal
Virtual Private Cloud
42
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh” 43
Sample Cloud Services
44
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
From On-Premise to Cloud Platforms
45
Application runs on-premises
Buy my own hardware, and manage my own
data center
Application runs at a hoster
Co-location or Managed
servers
Application runs using
cloudservices
“cloud fabric”
(elastic, infini-scale)
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
From On-Premise to Cloud Platforms
46
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
47
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
Bild vs. BuyBuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Maximum Economy of Scale All acceptable options (trade off)
Maximum Control
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
48
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial Molecule Research
HR System Email Issue Tracking
ERP
“Too costly to run this myself, but I’ve made too many customizations”
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
49
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial Molecule Research
HR System Email Issue Tracking
ERP
“CRM and Email are commodity services – They have no customizations, and it’s cheaper for someone else to run these”
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
50
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial Molecule Research
HR System
ERP
Email Issue Tracking
“I can’t afford to maintain this old HR application written in VB – it’s driving me mad!”
“…but due to privacy issues, I prefer keeping my HR data on-premises”
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
51
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial Molecule Research
HR System
ERP
Email Issue Tracking
“I wish I had access to cheaper compute and storage when I need it”
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
52
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial HR System
ERP
Email Issue Tracking
Molecule Research
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
53
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial HR System
ERP
Email Issue Tracking
Molecule Research
“THIS is where I want to spend my IT resources – I’m going to double down on this application!”
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
54
“Packaged”
Application
An application that I buy
“off the shelf” and run myself
Self Hosted
“Home Built”
An application that I develop and run myself
BuildBuy
Hosted
“Home Built”
An application that I develop myself, but run
at a hoster
Hosted
“Packaged”
An application that I buy
“off the shelf” and then run at a hoster
Cloud Platform
An application that I develop myself, but run in the cloud
“Software as a Service”
A hosted pplication that I buy from a
vendor
On premises vs. Cloud
On premises Cloud
Bild vs. Buy
Clinical Trial HR System
ERP
Email Issue Tracking
Molecule Research
Source: F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
55
Real-World Case Study: Animoto
56
57
Case Study: Animoto
Automatic VDO creation from still pictures
SaaS on IaaS
10x users’ growth in 3 days (from 25k to 250k)
Total number of servers owned by Animoto = 0
The most expensive piece of equipment in the office is the espresso machine
Utilize Amazon EC2
58
Source: R. Smith, “The Cloud/Electric Generator Analogy”, InformationWeek Analytic, Jan 2009
References
F. Javadi, “Clearing the Air - Cloud Computing : Adobe Air, Google Gears and Microsoft Mesh”
K. Gan and L. McMurray, “Beginner’s Guide to Cloud Computing and the Good &
Bad for Developers”
iphp, “Get your own cloud server running in 15 minutes”,
http://www.webdigi.co.uk/blog/2009/get_your_own_cloud_server_running_in_15 _minutes/, June 2009
S. Brunozzi, “2010 architecting for the cloud”,
http://www.slideshare.net/simone.brunozzi/2010-architecting-for-the-cloud- 4719195, 2010
G. Barton, “Animoto – The Poster Child for AWS & EC2”,
http://bartongeorge.net/2009/03/25/animoto-the-poster-child-for-aws-ec2/
59