Anda di halaman 1dari 66

Enterprise Cloud Computing

By
Dr. Atanu Rakshit
Email: atanu.rakshit@iimrohtak.ac.in
atanu.raks@gmail.com

Enterprise Cloud Computing


Text Book:
Cloud Computing Bible by Barrie Sosinsky, 2/e,
Wiley Publication, 2013

Reference Material:
Building Applications in the Cloud by Christopher
M. Moyer, Pearson, 2013
Cloud Computing Automating the Virtualized
Data Center by Venkata Josyula, Malcolm Orr and
Greg Page, Pearson, 2012
Cloud Computing Implementation, Management
and Security by John W. Rittinghouse and James
F. Ransome, CRC Press, 2010

Enterprise Cloud Computing


Sessions Plan

Introduction to Cloud Computing


Assessing the Value Proposition
Cloud Computing Architecture
Service and Application Types
Abstraction and Virtualization
Capacity Planning and Resource Optimization
Understanding Service Oriented Architecture
Moving Applications and Application Framework in Cloud
Cloud Security
Mobile Cloud Computing

Enterprise Cloud Computing

Service and
Application Types

Five Service Models


Business Process as a Service
BPaaS
Software as a Service
SaaS
Platform as a Service
PaaS
Infrastructure as a Service
IaaS
Data as a Service
DaaS

Service Model
A Business Process as a Service (BPaaS) is any business process
delivered as a service through cloud solutions
The Application layer forms the basis for Software as a Service
(SaaS)
The Platform layer forms the basis for Platform as a Service
(PaaS) models
Infrastructure as a Service (IaaS) provisioned virtual server
what may be determined to be a utility computing model, to
meet customer requirement as per SLA
Data as a Service (DaaS) is an information provision and
distribution model in which data files are made available to
customers over a network, typically the Internet

What is the landscape of Cloud


Computing?
Three primary models for Cloud Computing have emerged:
SaaS
(Software as a Service)

PaaS
(Platform as a Service)

Applications, typically
available via the browser:
Google Apps
Salesforce.com

Hosted application
environment for building and
deploying cloud applications:
Salesforce.com
Amazon E2C
Microsoft Azure

IaaS
(Infrastructure as a Service)
Utility computing data center
providing on demand server
resources:
HP Adaptive Infrastructure
as a Service
Rackspace
Amazon E2C & S3

SaaS and IaaS are the key cloud capabilities for 80% of our customers

Service Model Architectures


Cloud Infrastructure

Cloud Infrastructure

Cloud Infrastructure
IaaS

PaaS

PaaS

SaaS

SaaS

SaaS

Cloud Infrastructure

Cloud Infrastructure
IaaS

PaaS

Cloud Infrastructure
IaaS

PaaS

Software as a Service
(SaaS)
Architectures

Platform as a Service (PaaS)


Architectures

Infrastructure as a Service (IaaS)


Architectures

Infrastructure as a Service (IaaS)


Infrastructure as a Service (IaaS) is a cloud
computing service model in which hardware is
virtualized in the cloud.
The fundamental unit of virtualized client in an
IaaS deployment is called a workload
A workload simulates the ability of a certain
type of real or physical server to do an amount
of work

IaaS Workload
The work done can be measured by the
number of Transactions Per Minute (TPM) or a
similar metric
A workload has certain other attributes such as
Disk I/Os measured in Input/Output Per Second
IOPS
The amount of RAM consumed under load in MB
Network throughput and latency

Virtual Private Server in IaaS Stack

IaaS Stack
In cloud computing, a provisioned server called an
instance is reserved by a customer
The above figure shows how three virtual private
server instances are partitioned in an IaaS stack.
The three workloads require three different sizes of
computers: small, medium, and large.
The IaaS infrastructure runs these server instances is
drawing from a pool of virtualized machines, RAID
storage, and network interface capacity
These three layers are expressions of physical
systems that are partitioned as logical units

IaaS Stack
LUNs, the cloud interconnect layer, and the virtual
application software layer are logical constructs
Logical Unit Number LUNs are logical storage
containers
The cloud interconnect layer is a virtual network
layer that is assigned IP addresses from the IaaS
network pool
The virtual application software layer contains
software that runs on the physical VM instance(s)

Amazon IaaS Stack


The Amazon Elastic Computer Cloud (EC2) behaves
as if each server is its own separate network - unless
you create your own Virtual Private Cloud (an EC2
add-on feature)
When one scale EC2 deployment, it is adding
additional networks to your infrastructure
It imposes additional network overhead because
traffic must be routed between logical networks
Amazon Web Service's routing limits broadcast and
multicast traffic because Layer-2 (Data Link)
networking is not supported

E-Commerce System Stack

Web server
Application server
File server
Database
Transaction engine
The different workloads are:
Queries against the database
processing of business logic
serving up clients' Web pages

Pod
Workloads support a certain number of users, at
which point you exceed the load that the instance
sizing allows
When you reach the limit of the largest virtual
machine instance possible, one must make a copy or
clone of the instance to support additional users
A group of users within a particular instance is called
a pod. Pods are managed by a Cloud Control System
(CCS).

Pods
Pods are aggregated into pools within an IaaS region or
site called an availability zone
In very large cloud computing networks, when systems
fail, they fail on a pod-by-pod basis, and often on a zoneby-zone basis
Amazon Web Services AWS' IaaS infrastructure, the
availability zones are organized around the company's
data centers in Northern California, Northern Virginia,
Ireland, and Singapore
A failover system between zones gives IaaS private
clouds a very high degree of availability

Pods

The above figure shows how pods are aggregated and virtualized in IaaS across
zones.

Silo
When a cloud computing infrastructure isolates user
clouds from each other, the management system is
incapable of interoperating with other private clouds,
it creates an information silo, or simply a silo.
Most often, the term silo is applied to PaaS offerings
such as Force.com or QuickBase
Silos often are an expression of the manner in which
a cloud computing infrastructure is architected
Silos are the cloud computing equivalent of compute
islands

Cloud Computing - The Coming Storm

Infrastructure as a Service (IaaS)


Compute resources (processors, memory, storage,
bandwidth, etc.) are provided in an as-needed, pay-asyou-go model
Able to provide from single server up to entire data
centers
Creates new opportunities such as Cloud bursting: shifting
usage spike traffic to alternate resources
Infrastructure scales up and down quickly to meet
demand
Built on a utility computing architecture to host a SOA
application layer

Cloud Computing - The Coming Storm

What are the benefits & challenges


IaaS?

Benefits
Systems managed by SLA should
equate to fewer breaches
Higher return on assets through higher
utilization
Reduced cost driven by
Less hardware
Less floor space from smaller
hardware footprint
Higher level of automation from
fewer administrators
Lower power consumption
Able to match consumption to
demand

Challenges
Portability of applications
Maturity of systems
management tools
Integration across the Cloud
boundary
Extension of internal
security models

IaaS is the onramp for corporate IT to Cloud Computing!

Platform as a Service (PaaS)


The Platform as a Service model describes a software
environment in which a developer can create
customized solutions within the context of the
development tools that the platform provides
Platforms can be based on specific types of
development languages, application frameworks, or
other constructs
A PaaS offering provides the tools and development
environment to deploy applications on another
vendor's application

Platform as a Service (PaaS)


Often a PaaS tool is a fully integrated development
environment; that is, all the tools and services are part
of the PaaS service
In a PaaS model, customers may interact with the
software to enter and retrieve data, perform actions,
get results, and to the degree that the vendor allows it,
customize the platform involved
The vendor is responsible for all the operational
aspects of the service, for maintenance, and for
managing the product(s) lifecycle

Platform as a Service (PaaS)


The one example that is most quoted as a PaaS offering is
Google's App Engine platform
Another example of a PaaS offering is Force.com,
Salesforce.com's developer platform for its SaaS offerings
Google itself also serves as a PaaS vendor within this
system, because it offers many of its Web service
applications to customers as part of this service model.
Like - Google Maps, Google Earth, Gmail
The difficulty with PaaS is that it locks the developer (and
the customer) into a solution that is dependent upon the
platform vendor

Cloud Computing - The Coming Storm

Platform as a Service (PaaS)


Applications are built in the cloud on the platform using
a variety of technologies
Simplifies orchestration of cloud services
Development, testing, and production environments
(servers, storage, bandwidth, etc.) are billed monthly like
hosting
Pay-as-you-go model
Environments scale up & down at the click of a button
Concerns include code & data privacy, security and
scalability

Cloud Computing - The Coming Storm

What are the benefits & challenges of


PaaS?

Benefits
Pay-as-you-go for
development, test, and
production environments
Enables developers to focus
on application code
Instant global platform
Elimination of H/W
dependencies and capacity
concerns
Inherent scalability
Simplified deployment model

Challenges
Governance
Tie-in to the vendor
Extension of the security
model to the provider
Connectivity
Reliance on 3rd party SLAs

Strong governance required to prevent lines of business from building applications without
IT involvement

Software as a Service (SaaS)


The most complete cloud computing service model is
one in which the computing hardware and software,
as well as the solution itself, are provided by a vendor
as a complete service offering
SaaS provides the complete infrastructure, software,
and solution stack as the service offering
A good way to think about SaaS is that it is the cloudbased equivalent of shrink-wrapped software
Software as a Service (SaaS) may be succinctly
described as software that is deployed on a hosted
service and can be accessed globally over the Internet

Shrink-Wrapped Vs SaaS
TABLE 4.1

Shrink-Wrapped versus SaaS Licensing


Shrink-Wrapped
Software
Licensing

Location

Management

Owned

Hybrid Model
Subscription (flat fee)

Locally installed

Local IT staff

Available through an
application

Application Service
Provider (ASP)

SaaS
Metered subscription

Cloud based

Cloud vendor through a Service


Level Agreement (SLA)

__________________________________________________________________

SaaS Characteristics
The software is available over the Internet globally
through a browser on demand
The typical license is subscription-based or usagebased and is billed on a recurring basis
Reduced distribution and maintenance costs and
minimal end-user system costs generally make SaaS
applications cheaper to use than their shrink-wrapped
versions
Such applications feature automated upgrades,
updates, and patch management

SaaS Characteristics
SaaS applications often have a much lower barrier to
entry than their locally installed competitors
All users have the same version of the software so
each user's software is compatible with another's
SaaS supports multiple users and provides a shared
data model through a single-instance, multi-tenancy
model

Open SaaS
A considerable amount of SaaS software is based on
open source software
When open source software is used in a SaaS, it
referred to as Open SaaS
The advantages of using open source software are
that systems are much cheaper to deploy because
no need to purchase the operating system or software
there is less vendor lock-in
applications are more portable

A modern implement of SaaS using an Enterprise


Service Bus and architected with SOA components

Software as a Service (SaaS)


Examples of SaaS software for end-users are Google
Gmail and Calendar, QuickBooks online, Zoho Office
Suite, and others that are equally well known

Cloud Computing - The Coming Storm

Software as a Service (SaaS)


Applications (word processor, CRM, etc.) or application
services (schedule, calendar, etc.) execute in the cloud
using the interconnectivity of the internet to propagate
data
Custom services are combined with 3rd party commercial
services via orchestration (SOA) to create new
applications
Requires investment to build an enabling layer with
governance, security and data management functionality
May require integration with back-office systems
Pay-as-you-go model

Cloud Computing - The Coming Storm

What are the benefits & challenges of


SaaS?
Benefits

Speed
Reduced up-front cost,
potential for reduced lifetime
cost
Transfer of some/all support
obligations
Elimination of licensing risk
Elimination of version
compatibility
Reduced hardware footprint

Challenges
Extension of the security
model to the provider (data
privacy and ownership)
Governance and billing
management
Synchronization of client and
vendor migrations
Integrated end-user support
Scalability

Strong governance required to prevent lines of business from purchasing application


services externally without IT involvement

Application/Software as a Service
Cloud Platform
Cloud
Application

Cloud
Extra
Functions

Application
Platform

Browser/
Client

Application

Application

Users

Users

Developers

Data as a Service (DaaS)


Data as a Service (DaaS) is an information provision and
distribution model in which data files (including text, images,
sounds, and videos) are made available to customers over a
network, typically the Internet
DaaS offers convenient and cost-effective solutions for
customer- and client-oriented enterprises
DaaS is emerging as underlying technologies that
support Web services and SOA (service-oriented architecture)
mature
The evolution of SOA has greatly reduced the relevance of the
particular platform on which data resides
DaaS is expected to facilitate new and more effective ways of
distributing and processing data

Data as a Service (DaaS) Benifits


Ability to move data easily from one platform to another
Avoidance of the confusion and conflict that can occur
when multiple "versions" of (supposedly) the same data
exist in different locations
Preservation of data integrity by implementing access
control measures such as strong
passwords and encryption

Avoidance of "vendor lock-in."


Ease of collaboration
Compatibility among diverse platforms
Automatic updates.

Data as a Service
A service provider that enables data access on
demand to users regardless of their geographic
location.
Similar to SaaS
Information is stored in the cloud and is
accessible by a wide range of systems and devices
Two ways to use data-as-a-service:
by outsourcing your own data or
taking advantage of public data managed by a third
party

Data as a Service
DaaS is other offering service from Cloud
providers to its client to use provider's
database infrastructure on the basis of what
they use.
Instead of spending money on setting up of
database environment on your premises, we
can take the benefit of provider's database
cloud.

The sites that provides data as a


service
Google
Windows Azure
Amazon

DAAS Architecture

DAAS Architecture
Gather:
Includes retrieving and organizing data input files of
different formats.

Process:
Shapes the data through normalizing and prepares
specialized views of the data.

Publish:
Uses maps to extract data from the RDBMS into a
variety of formats that are consumed by the end
users.

Data as a Service
Pervasive Data Integrator:
is a graphical alternative to shell or Python
scripting that provides logging and configuration
services to Map Designer.
Used in typical loading and transforming process
Pervesives map designer creates code of map
Stored procedures are invoked by Pervasive
Process Designer.

DaaS: Pricing Model


1. Volume-based Model
a. Quantity-based pricing and
b. Pay per call

2. Data type-based Model

Data as a Service (DaaS)


Hundreds of DaaS vendors, with various pricing models,
exist worldwide
Pricing can be volume-based (a fixed cost per megabyte
of data in the entire repository) or format-based (a fixed
price per text file, another fixed price per image file,
etc.).
DaaS providers: Urban Mapping, a geography data
service
Xignite is a company that makes financial data available
to customers
Hoovers provides customers with business data on
various organizations

Traditional Approach Vs. DaaS


Data As Goods

Data As Service

Bulk onetime download

Dynamic access

Dated with the time of download

Always latest update

Need for storage

Storage is provided

Complex access when a large amount


of data

Easy and simple access and views

Benefits

Agility
Cost-effectiveness
Data quality
Faster/ Easy access
Larger storage
Large number of users
Scalability/ Flexibility
Reliability
Maintenance

Drawbacks
Reliance of the customer on the service
provider's ability to avoid server downtime
Generally data is not available for download

References
www.google.com/publicdata
www.wikipedia.com
http://bekwam.blogspot.com/2010/12/buildingdata-as-service-architecture.html
http://snipplr.com/
http://pixlr.com/editor/
http://cssdesk.com/
http://www.squidoo.com/guide-to-cloudcomputing

Business Process as a Service


(BPaaS)
A Business Process as a Service (BPaaS) is any
business process delivered as a service through cloud
solutions
With BPaaS one or more business processes are
uploaded to a cloud service that performs and
monitors them
Gartner defines business process as a service
(BPaaS) as the delivery of business process
outsourcing (BPO) services that are sourced from the
cloud and constructed for multitenancy

Business Process as a Service


(BPaaS)

Business Process as a Service (BPaaS) is any type of horizontal or vertical business process
thats delivered based on the cloud services model. These cloud services which include
Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service
(IaaS) are therefore dependent on related services

Business Process as a Service


(BPaaS) Characteristics
The BPaaS sits on top of the other three foundational
cloud services: SaaS, PaaS, and IaaS
A BPaaS service is configurable based on the process
being designed
A BPaaS must be able to support multiple languages
and multiple deployment environments because a
business cannot predict how a business process will
be leveraged in the future
A BPaaS environment must be able to handle
massive scaling.

Business Process as a Service


(BPaaS)
HR BPaaS: HR BPaaS is an efficient, replicable and repeatable
HRO solution. The solution includes HR Process Consulting &
change management consulting for effective HR
Transformation.
Procurement BPaaS: S2P BPaaS solution is an end to end
Business Process as a Service platform which provides
customers complete control over their spend and also
improved supplier relationship management
Loyalty BPaaS: Loyalty BPaaS is Wipro's holistic Loyalty
solution and services offering that spans across Consulting, IT,
BPO and Loyalty Marketing Services

Clouds Type
Commercial Clouds

Private/Community Clouds
Build by commercial or open-source
Solutions

Hybrid Clouds
Commercial clouds and private
clouds: EC2 Vs Eucalyptus, EC2
Vs OpenNebular

Page 55

Cloud Services Stack


Application
Cloud Services
Platform
Cloud Services
Compute & Storage
Cloud Services
Co-Location
Cloud Services
Network
Cloud Services
Nov.8, 2010

Kai Hwang, USC

56

Cloud Service Models


Software as a
Service (SaaS)

Platform as a
Service (PaaS)

SalesForce CRM
LotusLive

Google
App
Engine

57 Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim
Grance

Infrastructure as a
Service (IaaS)

Different Cloud Computing Layers


Application Service
(SaaS)

58

MS Live/ExchangeLabs, IBM,
Google Apps; Salesforce.com
Quicken Online, Zoho, Cisco

Application Platform

Google App Engine, Mosso,


Force.com, Engine Yard,
Facebook, Heroku, AWS

Server Platform

3Tera, EC2, SliceHost,


GoGrid, RightScale, Linode

Storage Platform

Amazon S3, Dell, Apple, ...

Virtual Machines
VM technology allows multiple virtual
machines to run on a single physical machine.
App

App

App

App

App

Guest OS
(Linux)

Guest OS
(NetBSD)

Guest OS
(Windows)

VM

VM

VM

Virtual Machine Monitor (VMM) / Hypervisor


Hardware

Xen
VMWare
UML
Denali
etc.

Performance: Para-virtualization (e.g. Xen) is very close to raw physical

performance!
59

Some Commercial Cloud Offerings

60

Cloud Research

General
issues

Cloud definition,
services
Management
Cloud technologies,
solutions, issues,
cost model

Cloud
migration

Web application
Big data
HPC applications

Cloud
Optimization

Future Direction
Across-Cloud implementations
Tools and middleware will be available to enable
interoperability and portability across different clouds

IaaS

PaaS

Become
standardized and
commoditized
Add new utilities
and PaaS
capabilities

Battleground for
determining the
future of Cloud
Computing

SaaS
Integrate with
applications
utilizing mobile
devices and
sensors

How do SaaS, PaaS, and IaaS


compare?
SaaS
Easy first step to adopt alternative desktop office application
Requires nothing more than a credit card to start
Will drive home the SOA value proposition

PaaS
Aimed primarily at small & new companies but models apply to all
Large companies will benefit as services scale up and model is driven into
internal software development tools and processes

IaaS
Galvanizing approach to Utility Computing to drive high ROA
Overflow to external provider to avoid cap-ex to meet peaks
Longer term play due to immature tools and resistance to change

Service Delivery Model Examples


Amazon

Google

Microsoft

Salesforce

SaaS

PaaS

IaaS

Products and companies shown for illustrative purposes only and should not be
construed as an endorsement

Cloud Computing - The Coming Storm

Solutions and vendors are emerging


daily
Software as a Service (Saas)

Google Apps
Zoho Office
Workday
Microsoft Office Live

Oracle On Demand Apps


NetSuite ERP
Salesforce.com SFA

External IaaS
HP/EDS (TBD)
IBM Blue Cloud
Sun Grid
Joyent

Rackspace
Jamcracker

Utility Systems Management Tools+


VMWare
IBM Tivoli
Cassatt
Parallels

Xen
Zuora
Aria Systems
eVapt

Platform as a Service

Amazon E2C
Salesforce.com Force.com
Google App Engine
Coghead

Etelos
LongJump
Boomi
Microsoft Azure*

Internal IaaS
HP Adaptive Infrastructure as a Service

Utility Application Development


Data Synapse
Univa UD
Elastra Cloud Server
3tera App Logic

TIBCO AMX BPM Suit


IBM WebSphere XD
BEA Weblogic Server VE
Mule

Q&A