• No results found

Platforms in the Cloud

N/A
N/A
Protected

Academic year: 2021

Share "Platforms in the Cloud"

Copied!
40
0
0

Loading.... (view fulltext now)

Full text

(1)

Platforms in the Cloud

Where Will Your Next Application Run?

Copyright © 2011 Chappell & Associates

Jazoon, Zurich June 2011

(2)

An Organization without Cloud Computing

Compute/Storage/Network Users

On-Premises Data Center A

VM

A VM

A

VM A A

A Application

VM Virtual Machine

(3)

Categorizing Cloud Computing

Three categories

 Cloud applications

Often called Software as a Service (SaaS)

 Cloud platforms

‒ Public cloud platforms

 Private clouds

‒ On-premises cloud platforms

(4)

Compute/Storage/Network A

VM

A VM

A VM Cloud Platform

An Organization with Cloud Computing

On-Premises Service Provider

A VM

A VM Private Cloud

Compute/Storage/Network A A

VM Users

A A

Cloud Applications Compute/Storage/Network

A

The main focus of this talk

(5)

A Framework for Comparison

Cloud Platforms

(6)

What is a Cloud Platform?

Some defining characteristics

 It lets developers create and run apps, store data, and more

 It provides self-service access to a pool of computing resources

 It allows granular, elastic allocation of resources

 It allows charging only for the resources an application uses

(7)

Public Clouds and Privat e Clouds

Typical definitions

Public cloud: A cloud platform run by a service provider made

available to many end-user organizations

Private cloud: A cloud platform run solely for a single end-user

organization, such as a bank or retailer

‒ The technology can be much like public clouds, but the economics are different

 Most organizations will use some hybrid of both

(8)

Cloud Platform Technologies

 The most important today:

‒ Computing

Infrastructure as a Service (IaaS)

Platform as a Service (PaaS)

‒ Storage

Relational storage

Scale-out storage

Blobs

 There are many more

‒ Messaging, identity, caching, …

(9)

Computing

Infrastructure as a Service (IaaS)

 Developers create virtual machines (VMs) on demand

‒ They have full access to these VMs

 Strengths:

‒ Can control and configure environment

‒ Familiar technologies

‒ Limited code lock-in

 Weaknesses:

‒ Must control and configure environment

‒ Requires administrative skills to use

(10)

Computing

Platform as a Service (PaaS)

 Developers provide an application, which the platform runs

‒ They don’t work directly with VMs

 Strengths:

‒ Provides higher-level services than IaaS

‒ Requires essentially no administrative skills

 Weaknesses:

‒ Allows less control of the environment

(11)

Computing

What’s the most popular approach?

 IaaS is more widely used today than PaaS

‒ Gartner estimates that public IaaS revenues are significantly greater than public PaaS revenues today

 Perspective:

‒ IaaS is easier to adopt than PaaS

IaaS emulates your existing world in the cloud

‒ Over time, PaaS is likely to dominate

PaaS should have an overall lower cost than IaaS

It’s typically a better choice for new applications

(12)

Storage

Relational

 Traditional relational storage in the cloud

‒ With support for SQL

 Strengths:

‒ Familiar technologies

‒ Many available tools, e.g., for reporting

‒ Limited data lock-in

‒ Can be cheaper than on-premises relational storage

 Weaknesses:

‒ Scaling to handle very large data is challenging

(13)

Storage

Scale-out

 Massively scalable storage in the cloud

‒ No support for SQL

 Strengths:

‒ Scaling to handle very large data is straightforward

‒ Can be cheaper than relational storage

 Weaknesses:

‒ Unfamiliar technologies

‒ Few available tools

‒ Significant data lock-in

(14)

Storage

Blobs

 Storage for Binary Large OBjects in the cloud

‒ Such as video, back-ups, etc.

 Strengths:

‒ Globally accessible way to store and access large data

‒ Can be cheaper than on-premises storage

 Weaknesses:

‒ Provides only simple unstructured storage

(15)

Public Private

Cloud Platforms

A summary

IaaS PaaS

Computing

IaaS Relational Scale-Out

Storage

Blobs

Amazon Microsoft

Google

Salesforce VMware

Cloud-Only Vendor

(16)

Applying Public Cloud Platforms (1)

Some characteristics of typical applications

 App development

‒ Example: A VM-based dev/test environment

 Apps with variable load

‒ Example: An on-line ticketing application

 Apps that do parallel processing

‒ Example: A financial modeling application

 Apps that need massive scale

‒ Example: A Web 2.0 application

 Apps that need high reliability

‒ Example: A SaaS application

(17)

Applying Public Cloud Platforms (2)

Some characteristics of typical applications

 Apps with a short or unpredictable lifetime

‒ Example: An app created for a marketing campaign

 Apps that must fail fast or scale fast

‒ Example: Start-ups

 Apps that don’t fit well in an organization’s data center

‒ Example: A business unit that wishes to avoid its IT department

 Apps that can benefit from external storage

‒ Example: An application that archives data

(18)

Applying the Framework

Cloud Platforms

(19)

From Server Virtualization to Private Clouds

 IaaS allows allocating, managing, and charging for VMs in a

more effective way

 This idea first appeared in a public cloud platform

‒ If it makes sense there, why not use it in your own data center?

 Private clouds provide IaaS in your data center

‒ Although they can also offer more application-oriented services

(20)

Microsoft

Private and public cloud platform software

IaaS PaaS Relational Scale-Out

Computing Storage

Hyper-V Cloud Hyper-V

Cloud

IaaS

Public Private

Amazon Microsoft

Google

Salesforce VMware

Key

Cloud Platform Cloud Platform Software

Blobs

(21)

VMware

Private and public cloud platform software

IaaS PaaS Relational Scale-Out

Computing Storage

Hyper-V Cloud Hyper-V

Cloud

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter vCloud

Key

Cloud Platform Cloud Platform Software

Blobs

(22)

Windows Azure Platform

Public cloud platform

IaaS PaaS Relational Scale-Out

Computing Storage

Windows Azure

SQL Azure

Windows Azure Tables

Windows Azure Blobs Hyper-V

Cloud Hyper-V

Cloud

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter vCloud

Key

Cloud Platform Cloud Platform Software

Blobs

(23)

Windows Azure Platform

Illustrating the highlights

Web Role Instances (VMs)

IIS

Windows Server

SQL Azure

Windows Azure Tables

Load Balancer

Windows Server Windows Application

Worker Role Instances (VMs)

Dynamic Scaling

Web Application (e.g., ASP.NET)

(24)

Windows Azure Platform

Pricing examples (in US dollars)

 Compute: $0.05/hour to $0.96/hour for each instance

(depending on instance size)

 Storage:

‒ Blobs and tables:

Data: $0.15/GB per month

Access: $0.01/10,000 operations

‒ Relational:

$9.99/GB per month

 Bandwidth: $0.10/GB in, $0.15/GB out

(25)

VMware Cloud Foundry

Public cloud platform software

IaaS PaaS Relational Scale-Out

Windows Azure

SQL Azure

Windows Azure Tables

Computing Storage

Windows Azure Blobs Hyper-V

Cloud Hyper-V

Cloud

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter

vCloud Cloud Foundry

Frameworks

Cloud Foundry Storage

Key

Cloud Platform Cloud Platform Software

Blobs

(26)

VMware Cloud Foundry

Essentials

 Cloud Foundry is an open source PaaS platform

‒ Led by VMware

 Designed to support diverse technologies:

‒ Frameworks: Spring, Rails, etc.

‒ Storage: MySQL, MongoDB, etc.

 Not yet available as a service

‒ VMware provides a public dev/test service

‒ Partners will provide commercial public platforms

(27)

Amazon Web Services

Public cloud platform

IaaS PaaS Relational Scale-Out

Windows Azure

SQL Azure

Windows Azure Tables

Computing Storage

Blobs

Windows Azure Blobs Hyper-V

Cloud

Elastic Compute Cloud (EC2)

Relational Database Service (RDS)

SimpleDB

Simple Storage Service (S3) Elastic

Beanstalk Hyper-V

Cloud

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter

vCloud Cloud Foundry

Frameworks

Cloud Foundry Storage

Key

Cloud Platform Cloud Platform Software

(28)

A Broader View of IaaS/Paas

An aside

 More than cloud compute can be viewed through the

IaaS/PaaS lens

 Example: Cloud options for relational storage

‒ Run a database server in an AWS EC2 VM

An IaaS storage sevice

‒ Use a managed database server with AWS RDS

‒ Use a managed database service with SQL Azure

A PaaS storage service

(29)

Amazon Web Services

Pricing examples

 Compute: $0.02/hour to $3.68/hour for each VM (depending

on size and OS)

 Storage (blobs):

‒ Data: $0.14/GB per month to $0.037/GB per month (depending on data size and redundancy)

‒ Access: $0.01/1,000 PUT, COPY, POST, LIST operations, $0.01/10,000 GET operations

 Bandwidth: $0.10/GB in, $0.15/GB to $0.08/GB out

(depending on volume)

(30)

Eucalyptus

Private cloud software

IaaS

Elastic Compute Cloud (EC2)

PaaS Relational Scale-Out

Windows Azure

SQL Azure

Windows Azure Tables

Relational Database Service (RDS)

SimpleDB

Computing Storage

Simple Storage Service (S3)

Windows Azure Blobs Hyper-V

Cloud

Elastic Beanstalk Hyper-V

Cloud

Eucalyptus

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter

vCloud Cloud Foundry

Frameworks

Cloud Foundry Storage

Key

Cloud Platform Cloud Platform Software

Blobs

(31)

The Commoditization of IaaS

An aside

 Public IaaS compute service is widely available today

 Providers include:

‒ GoGrid Cloud Hosting

‒ Terremark vCloud Express

‒ IBM SmartCloud Enterprise

‒ Rackspace Cloud Servers

A leader in creating OpenStack, open source IaaS private/public cloud platform software

(32)

Google App Engine

Public cloud platform

IaaS

Elastic Compute Cloud (EC2)

PaaS Relational Scale-Out

Windows Azure

SQL Azure

Windows Azure Tables

Relational Database Service (RDS)

SimpleDB

Computing Storage

Simple Storage Service (S3)

Windows Azure Blobs

App

Engine Datastore Blobstore

Hyper-V Cloud

Elastic Beanstalk Hyper-V

Cloud

Eucalyptus

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter

vCloud Cloud Foundry

Frameworks

Cloud Foundry Storage

Key

Cloud Platform Cloud Platform Software

Blobs

(33)

Python or Java Runtime Web Server

Google App Engine

Illustrating the essentials

App Engine Datastore Python or Java

Application Load

Balancer

Auto Scaling

(34)

Google App Engine

Pricing examples (today)

 Compute: $0.10/CPU hour

 Storage:

‒ Datastore: $0.15/GB per month

‒ Blobstore: $0.15/GB per month

 Bandwidth: $0.10/GB in, $0.12/GB out

 App Engine also allows some free usage every day

‒ Other platforms have a free tier as well

(35)

AppForce VMForce

Database .com

Salesforce.com Force.com

Public cloud platform

IaaS

Elastic Compute Cloud (EC2)

PaaS Relational Scale-Out

Windows Azure

SQL Azure

Windows Azure Tables

App Engine

Relational Database Service (RDS)

SimpleDB

Computing Storage

Datastore

Simple Storage Service (S3)

Windows Azure Blobs

Blobstore Hyper-V

Cloud

Elastic Beanstalk Hyper-V

Cloud

Eucalyptus

IaaS

Public Private

Amazon Microsoft

Google

Salesforce

VMware Express and vCloud DataCenter

vCloud Cloud Foundry

Frameworks

Cloud Foundry Storage

Key

Cloud Platform Cloud Platform Software

Blobs

(36)

Force.com Appforce

Force.com Runtime Web Server

Database.com Force.com/Apex

Application Load

Balancer

(37)

Salesforce.com Force.com

Pricing examples

 One (small) application is free

 Enterprise Edition: $50/user per month

‒ Compute: up to 10 applications

‒ Storage: up to 200 database objects

‒ Bandwidth: No extra charge

 Unlimited Edition: $75/user per month

‒ Compute: unlimited applications

‒ Storage: up to 2,000 database objects

‒ Bandwidth: No extra charge

(38)

Conclusions

 Cloud platforms are important

‒ Many vendors are active here

 A new world is unfolding

‒ Prepare to be part of it

(39)

About the Speaker

David Chappell is Principal of Chappell & Associates (www.davidchappell.com) in San Francisco, California. Through his speaking, writing, and consulting, he helps people around the world understand, use, and make better decisions about new technology. David has been the keynote speaker for more than a hundred events and conferences on five continents, and his seminars have

been attended by tens of thousands of IT leaders, architects, and developers in forty countries. His books have been published in a dozen languages and used regularly in courses at MIT, ETH Zurich, and other universities. In his consulting practice, he has helped clients such as Hewlett-Packard, IBM, Microsoft,

Stanford University, and Target Corporation adopt new technologies, market new products, and educate their customers and staff. Earlier in his career, David wrote networking software, chaired a U.S. national standards working group, and played keyboards with the Peabody-award-winning Children’s

Radio Theater. He holds a B.S. in Economics and an M.S. in Computer Science, both from the University of Wisconsin-Madison.

(40)

Copyright © 2011 David Chappell | www.davidchappell.com

References

Related documents