Title: Cloud Computing
1Cloud Computing
2- Cloud computing is simply a buzzword used to
repackage grid computing and utility computing,
both of which have existed for decades.
whatis.com Definition of Cloud Computing
3Cloud Computing
- 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.
4(No Transcript)
5History
- Cloud used as a metaphor for the Internet,
based on the cloud drawing used in the past to
represent the telephone network later to depict
the Internet in computer network diagrams as an
abstraction of the underlying infrastructure it
represents. - Details abstracted from end-users, who no longer
have need for expertise in, or control over, the
technology infrastructure "in the cloud" that
supports them.
6Evolution of cloud computing
7Comparison
- Cloud computing shares characteristics with
- Mainframe computer
- Autonomic computing
- Clientserver
- Grid computing
- Peer-to-peer
8Foundational Elementsof Cloud Computing
Primary Technologies
Other Technologies
- Virtualization
- Grid technology
- Service Oriented Architectures
- Distributed Computing
- Broadband Networks
- Browser as a platform
- Free and Open Source Software
- Autonomic Systems
- Web 2.0
- Web application frameworks
- Service Level Agreements
9The Traditional Server Concept
Web Server Windows IIS
App Server Linux Glassfish
DB Server Linux MySQL
EMail Windows Exchange
10Traditional Server Concept Explained
- Servers considered as a whole unit that includes
the hardware, the OS, the storage, and the
applications. - Often referred to by their function i.e. the
Exchange server, the SQL server, the File server,
etc. - If the File server fills up, or the Exchange
server becomes overtaxed must add in a new
server.
11Traditional Server Concept Contd.
- Unless there are multiple servers, if a service
experiences a hardware failure, the service is
down. - Can implement clusters of servers to make them
more fault tolerant. - Even clusters have limits on their scalability,
and not all applications work in a clustered
environment.
12Pros and Cons
- Pros
- Easy to conceptualize
- Fairly easy to deploy
- Easy to backup
- Virtually any application/service can be run from
this type of setup
- Cons
- Expensive to acquire and maintain hardware
- Not very scalable
- Difficult to replicate
- Redundancy is difficult to implement
- Vulnerable to hardware outages
- In many cases, processor is under-utilized
13And if something goes wrong ...
Web Server Windows IIS
App Server DOWN!
DB Server Linux MySQL
EMail Windows Exchange
14The Virtual Server Concept
Virtual Machine Monitor (VMM) layer between Guest
OS and hardware
15Close-up
adapted from a diagram in VMware white paper,
Virtualization Overview
Clustering Service Console
Server 1 Guest OS
Server 2 Guest OS
VMM (Virtual Machine Monitor)
x86 Architecture
Intercepts hardware requests
16The Virtual Server Concept
- Virtual servers seek to encapsulate the server
software away from the hardware - This includes the OS, the applications, and the
storage for that server. - A virtual server can be serviced by one or more
hosts, and one host may house more than one
virtual server.
17Virtual Server Concept Contd.
- Virtual servers can still be referred to by their
function i.e. email server, database server, etc. - If the environment built correctly, virtual
servers will not be affected by the loss of a
host. - Hosts may be removed and introduced almost at
will to accommodate maintenance.
18Virtual Server Concept Contd.
- Can be scaled out easily.
- If the resources supporting a virtual server are
being taxed too much, admin can adjust the amount
of resources allocated to that virtual server - Server templates can be created in a virtual
environment to be used to create multiple,
identical virtual servers - Virtual servers themselves can be migrated from
host to host almost at will.
19Pros and Cons
- Pros
- Resource pooling
- Highly redundant
- Highly available
- Rapidly deploy new servers
- Easy to deploy
- Reconfigurable while services are running
- Optimizes physical resources by doing more with
less
- Cons
- Slightly harder to conceptualize
- Slightly more costly (must buy hardware, OS,
Apps, and now the abstraction layer)
20The Clouds Snowball Effect
- Maturation of Virtualization Technology
- Virtualization enables Compute Clouds
- Compute Clouds create demand for Storage Clouds
- Storage Compute Clouds create Cloud
Infrastructure - Cloud Infrastructure enables Cloud Platforms
Applications - Multiple Cloud types lead to Cloud Aggregators
- Niche requirements enable Cloud Extenders
21Characteristics
- Cost claimed to be reduced.
- Reliability improved if multiple redundant sites
used. - Performance monitored, and consistent and loosely
coupled architectures constructed using web
services as the system interface. - Security could improve due to centralization of
data, increased security-focused resources, etc.
- Maintenance is easier do not need to be
installed on each user's computer.
22Layers
- Client
- Computer hardware and/or computer software
relying on cloud computing for application
delivery. - Application
- Application services (SaaS).
- Platform
- Platform services (PaaS).
- Infrastructure
- Infrastructure services (IaaS).
- Server
- Computer hardware, software products
specifically designed for delivery of cloud
services.
23Service Model Architectures
24Cloud Service Delivery Models
- IaaS Infrastructure as a Service
- provisions computing resources within provider's
infrastructure upon which they can deploy and run
arbitrary software, including OS and
applications. - PaaS Platform as a Service
- can create custom applications using programming
tools supported by the provider and deploy them
onto the provider's cloud infrastructure. - SaaS Software as Service
- use providers applications running on provider's
cloud infrastructure.
25Three Features of Mature SaaS Applications
- Scalable
- Handle growing amounts of work in a graceful
manner - Multi-tenancy
- One application instance may be serving hundreds
of companies - Opposite of multi-instance where each customer is
provisioned their own server running one instance - Metadata driven configurability
- Instead of customizing the application for a
customer (requiring code changes), one allows the
user to configure the application through metadata
25
26SaaS Maturity Levels
- Level 1 Ad-Hoc/Custom
- Level 2 Configurable
- Level 3 Configurable, Multi-Tenant-Efficient
- Level 4 Scalable, Configurable,
Multi-Tenant-Efficient
26
Source Microsoft MSDN Architecture Center
27Platform-as-a-Service (PaaS)
- Definition
- Platform providing all the facilities necessary
to support the complete process of building and
delivering web applications and services, all
available over the Internet - Entirely virtualized platform that includes one
or more servers, operating systems and specific
applications
28PaaS Example Google App Engine
- Service that allows user to deploy users Web
applications on Google's very scalable
architecture - Providing user with a sandbox for users Java and
python application that can be referenced over
the Internet - Providing Java and Python APIs for persistently
storing and managing data (using the Google Query
Language or GQL)
29Infrastructure-as-a-Service (IaaS)
- Definition
- Provision model in which an organization
outsources - the equipment used to support operations,
including - storage, hardware, servers and networking
- components.
- Also known as Hardware as a Service (HaaS).
- Service provider owns the equipment
responsible for housing, running and maintaining
it. - Client typically pays on a per-use basis.
30IaaS Contd.
31Characteristics of Infrastructure-as-a-Service(I
aaS)
- Utility computing and billing model
- Automation of administrative tasks
- Dynamic scaling
- Desktop virtualization
- Policy-based services
- Internet connectivity
32Service Delivery Model Examples
Amazon
Google
Microsoft
Salesforce
SaaS
PaaS
IaaS
334 Cloud Deployment Models
- Private cloud
- enterprise owned or leased
- Community cloud
- shared infrastructure for specific community
- Public cloud
- Sold to the public, mega-scale infrastructure
- Hybrid cloud
- composition of two or more clouds
34Common Cloud Characteristics
- Cloud computing often leverages
- Massive scale
- Homogeneity
- Virtualization
- Resilient computing
- Low cost software
- Geographic distribution
- Service orientation
- Advanced security technologies
35Web-Scale Large data centersProblems
- Characteristics
- Definitely data-intensive
- May also be processing intensive
- Examples
- Crawling, indexing, searching, mining the Web
- Post-genomics life sciences research
- Other scientific data (physics, astronomers,
etc.) - Sensor networks
- Web 2.0 applications
36How much data?
- Wayback Machine has 3 PB 100 TB/month (2009)
- Google processes 20 PB a day (2008)
- all words ever spoken by human beings 5 EB
- NOAA has 1 PB climate data (2007)
- CERNs LHC generates 15 PB a year (2010)
640K ought to be enough for anybody.
37Large Data Centers
- Web-scale problems? Throw more machines at it!
- Clear trend centralization of computing
resources in large data centers - Important Issues
- Redundancy
- Efficiency
- Utilization
- Management
38The Cloud 10X Improvements
- Ease of Use
- Scalability
- Risk
- Reliability
- Cost
39Ease of Use
- Deploy infrastructure with a mouse or API
- Cloud computing providers deliver applications
via the internet, which are accessed from web
browsers and desktop and mobile apps - Do it yourself remotely from anywhere anytime
40Scalability
- Dynamic provisioning of resources on a
fine-grained, self-service basis near real-time,
without users having to engineer for peak loads - Control your infrastructure with your app
41Risk
- Nothing to buy
- Cancel immediately
- Change instantly, even operating systems
- Throw it out
- Rebuild it instantly after testing
RISK
42Reliability
- Based on enterprise grade hardware
- Design for failures
- Automatically spin up replacements
- Use multiple clouds
43Cost Control
- Cost
- Many systems have variable demands
- Batch processing (e.g. New York Times)
- Web sites with peaks (e.g. Forbes)
- Startups with unknown demand (e.g. the Cash for
Clunkers program) - Reduce risk
- Don't need to buy hardware until you need it
44 Business Agility
- More than scalability - elasticity!
- Ely Lilly in rapidly changing health care
business - Used to take 3 - 4 months to give a department a
server cluster, then they would hoard it! - Using EC2, about 5 minutes!
- And they give it back when they are done!
- Scaling back is as important as scaling up
45Stick to Business
- Most companies don't WANT to do system
administration - Forbes says
- We are is a publishing company, not a software
company - But beware
- Do you really save much on sys admin?
- You don't have the hardware, but you still need
to manage the OS!
46Provisioning Service
- Advantages
- Rapid reconstitution of services
- Enables availability
- Provision in multiple data centers/multiple
instances - Advanced honey net capabilities
- Challenges
- Impact of compromising the provisioning service
47Data Storage Services
- Advantages
- Data fragmentation and dispersal
- Automated replication
- Provision of data zones (e.g., by country)
- Encryption at rest and in transit
- Automated data retention
- Challenges
- Isolation management / data multi-tenancy
- Storage controller
- Single point of failure / compromise?
- Exposure of data to foreign governments
48Cloud Processing Infrastructure
- Advantages
- Ability to secure masters and push out secure
images - Challenges
- Application multi-tenancy
- Reliance on hypervisors
- Process isolation / Application sandboxes
49Cloud Support Services
- Advantages
- On demand security controls (e.g.,
authentication, logging, firewalls) - Challenges
- Additional risk when integrated with customer
applications - Needs certification and accreditation as a
separate application - Code updates
50Cloud Network and Perimeter Security
- Advantages
- Distributed denial of service protection
- VLAN capabilities
- Perimeter security (IDS, firewall,
authentication) - Challenges
- Virtual zoning with application mobility
51The NIST Cloud Definition Framework
Deployment Models
Service Models
Essential Characteristics
Massive Scale
Resilient Computing
Homogeneity
Geographic Distribution
Common Characteristics
Based upon original chart created by Alex Dowbor
- http//ornot.wordpress.com
52Cloud Computing Case Studies
53Google Cloud
- Started with Google Apps
- Platform as Service later on
- Replace office software
- Gmail
- Google Docs (word processing and spreadsheets)
- Google video for business
- Google sites (intranet sites and wikis)
- Google Cloud Connect
- 500,000 organizations use Google Apps
- GE moved 400,000 desktops from Microsoft Office
to Google Apps
54Microsoft Azure Services
55Windows Azure Applications, Storage, and Roles
Three core components Compute, Storage and Fabric
n
m
Web Role
Worker Role
LB
Cloud Storage (blob, table, queue)
Source Microsoft Presentation, A Lap Around
Windows Azure, Manuvir Das
56Amazon Cloud
- Amazon cloud components
- Elastic Compute Cloud (EC2)
- Simple Storage Service (S3)
- SimpleDB
- New Features
- Availability zones
- Place applications in multiple locations for
failovers - Elastic IP addresses
- Static IP addresses that can be dynamically
remapped to point to different instances (not a
DNS change)
57Amazon Cloud Users New York Times and Nasdaq
- Both companies used Amazons cloud offering
- New York Times
- Used EC2 and S3 to convert 15 million scanned
news articles to PDF (4TB data) - Took 100 Linux computers 24 hours (would have
taken months on NYT computers - It was cheap experimentation, and the learning
curve isn't steep. Derrick Gottfrid, Nasdaq - Nasdaq
- Uses S3 to deliver historic stock and fund
information - Millions of files showing price changes of
entities over 10 minute segments - The expenses of keeping all that data online in
Nasdaq servers was too high. Claude Courbois,
Nasdaq VP - Created lightweight Adobe AIR application to let
users view data
58(No Transcript)
59Salesforce Cloud
- Started with information management service that
could replace traditional business software
technology - Pioneered software-as-a-service market (esp. CRM
tools) - 5,000 Public Sector and Nonprofit Customers use
Salesforce Cloud Computing Solutions - Moving beyond SaaS into the platform-as-a-service
market
60Salesforce.com in Government
- President Obamas Citizens Briefing Book
- 134,077 Registered Users
- 1.4 M Votes
- 52,015 Ideas
- Peak traffic of 149 hits per second
- US Census Bureau Uses Salesforce.com Cloud
Application - Project implemented in under 12 weeks
- 2,500 partnership agents use Salesforce.com for
2010 decennial census - Allows projects to scale from 200 to 2,000 users
overnight to meet peak periods with no capital
expenditure -
61VMware Cloud (vCloud)
- Goal
- Federate resources between internal IT and
external clouds - Application portability
- Elasticity and scalability, disaster recovery,
service level management - vServices provide APIs and technologies
62Case Study IBM-Google Cloud
- Google and IBM plan to roll out a worldwide
network of servers for a cloud computing
infrastructure - Initiatives for universities
- Architecture
- Open source
- Linux hosts
- Xen virtualization (virtual machine monitor)
- Apache Hadoop (file system)
- open-source software for reliable, scalable,
distributed computing
63 Facebooks Use of Open Source and Commodity
Hardware
- 400 million users 250,000 new users per day
- 100,000 transactions per second, 10,000 servers
- Built on open source software
- Web and App tier Apache, PHP, AJAX
- Middleware tier Memcached (Open source caching)
- Data tier MySQL (Open source DB)
- Thousands of DB instances store data in
distributed fashion (avoids collisions of many
users accessing the same DB)
64Are Hybrid Clouds in our Future?
- OpenNebula
- Zimory
- IBM-Juniper Partnership
- VMWare Vcloud
65Blogote