experiences in building a paas platform - java one sfo 2012

50
1 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Upload: jagadish-prasath

Post on 27-Jun-2015

127 views

Category:

Technology


1 download

DESCRIPTION

Experiences in building a PaaS Platform

TRANSCRIPT

Page 1: Experiences in building a PaaS Platform - Java One SFO 2012

1 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Page 2: Experiences in building a PaaS Platform - Java One SFO 2012

2 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

LOGO

Experiences in building a PaaS platformBhavanisankara SapaligaJagadish Ramu

Conference Session - CON7735

Page 3: Experiences in building a PaaS Platform - Java One SFO 2012

3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle OpenWorld Bookstore

• Visit the Oracle OpenWorld Bookstore for a fabulous selection of books on many of the conference topics and more!

• Bookstore located at Moscone West, Level 2• All Books at 20% Discount

Page 4: Experiences in building a PaaS Platform - Java One SFO 2012

4 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Page 5: Experiences in building a PaaS Platform - Java One SFO 2012

5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Program Agenda

• Cloud Computing• PaaS and Java EE• PaaS implications on application deployment• Design Model• Service Orchestration• Resources

Page 6: Experiences in building a PaaS Platform - Java One SFO 2012

6 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Cloud Computing

• Illusion of infinite computing resources available on demand

• Elimination of an up-front commitment by cloud users• Ability to pay for use of computing resources on a short-

term basis

What’s new?

(+) Above the Clouds, Armbrust et al, UC Berkeley, 2009

Page 7: Experiences in building a PaaS Platform - Java One SFO 2012

7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Cloud Computing

• On-demand Self-Service• Broad network access• Resource Pooling• Rapid Elasticity• Measured Service

Essential Characteristics

(*) NIST Definition of Cloud Computing – 800-145 (Draft)

Page 8: Experiences in building a PaaS Platform - Java One SFO 2012

8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Cloud Computing

• Private Cloud– Operated solely for an organization– On-premise or off-premise

• Community Cloud• Public Cloud

– Access to general public• Hybrid Cloud

– 2 or more clouds, Cloud Bursting

Deployment Models

(*) NIST Definition of Cloud Computing – 800-145 (Draft)

Page 9: Experiences in building a PaaS Platform - Java One SFO 2012

9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Cloud Computing

• Software as a Service (SaaS)• Platform as a Service (PaaS)

– Deploy customer-created applications– Using languages and tools supported by PaaS Provider– No control of underlying cloud infrastructure– Control over deployed applications, hosting env. Configurations

• Infrastructure as a Service (IaaS)

Service Models

(*) NIST Definition of Cloud Computing – 800-145 (Draft)

Page 10: Experiences in building a PaaS Platform - Java One SFO 2012

10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Program Agenda

• Cloud Computing• PaaS and Java EE• PaaS implications on application deployment• Design Model• Service Orchestration• Resources

Page 11: Experiences in building a PaaS Platform - Java One SFO 2012

11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS and Java EE

• Common programming model for enterprise developers• Runtime handles application’s infrastructure concerns• Declarative resource references• Scalable (scale-out) component models

Java EE design principles and capabilities

Page 12: Experiences in building a PaaS Platform - Java One SFO 2012

12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS and Java EE

• Enhancements– New Roles for PaaS– Services as first class citizens– Multitenancy

• Evolution, not a revolution!

Java EE 7: “Making Java EE ready for the cloud”

Page 13: Experiences in building a PaaS Platform - Java One SFO 2012

13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

New PaaS Roles in Java EE 7

• PaaS Product Vendor• PaaS Provider• PaaS Account Manager• PaaS Customer• Application Submitter• Application Administrator• End-User

Page 14: Experiences in building a PaaS Platform - Java One SFO 2012

14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Java EE 7 Roles in a PaaS scenario

Page 15: Experiences in building a PaaS Platform - Java One SFO 2012

15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Program Agenda

• Cloud Computing• PaaS and Java EE• PaaS implications on application deployment• Design Model• Service Orchestration• Resources

Page 16: Experiences in building a PaaS Platform - Java One SFO 2012

16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS Implications on Deployment• Simplified PaaS Application Deployment

– Single-click, self-service, “push to cloud”

Page 17: Experiences in building a PaaS Platform - Java One SFO 2012

17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS Implications on Deployment

• Automatic Service Provisioning and Management– Service Orchestration

• Automatic Service Dependency discovery• Service Provisioning and Association

– Handle operational infrastructure concerns automatically• Network configuration, HA, Clustering, Load Balancing …

– Application and Service deployment versioning

Services Management

Page 18: Experiences in building a PaaS Platform - Java One SFO 2012

18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS Implications on Deployment

• Scalable virtualized on-demand environment– Support multiple cloud deployment models

• Public, Private, Hybrid– PaaS Provider decoupled from IaaS infrastructure– Multi-tenancy

Virtualized runtimes

Page 19: Experiences in building a PaaS Platform - Java One SFO 2012

19 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS Implications on Deployment

• Automatic Scaling of Services– Scale to application’s needs– User-defined alerts and actions

• Control over application hosting environment– Flexibility in choice of application services, framework– Rich service configuration– Shared services– Extensible runtime to allow new Services

Scaling and Operations

Page 20: Experiences in building a PaaS Platform - Java One SFO 2012

20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

A sample application stack

Page 21: Experiences in building a PaaS Platform - Java One SFO 2012

21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Traditional Java EE Application Deployment

Page 22: Experiences in building a PaaS Platform - Java One SFO 2012

22 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

DemoClassic Deployment

Page 23: Experiences in building a PaaS Platform - Java One SFO 2012

23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Java EE PaaS Application Deployment

Page 24: Experiences in building a PaaS Platform - Java One SFO 2012

24 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

DemoPaaS Deployment

Page 25: Experiences in building a PaaS Platform - Java One SFO 2012

25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Program Agenda

• Cloud Computing• PaaS and Java EE• PaaS implications on application deployment• Design Model• Service Orchestration• Resources

Page 26: Experiences in building a PaaS Platform - Java One SFO 2012

26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Orchestration

Enable single-click deployment of a PaaS application through automatic service dependency discovery, service provisioning and service association

One-liner

Page 27: Experiences in building a PaaS Platform - Java One SFO 2012

27 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Terminology

• Service• ServiceType

– Java EE, RDBMS, HTTP Load Balancer etc.• Services – scope and lifecycle

– Provisioned Services• Application scoped• Shared

– External (a priori ) services

Page 28: Experiences in building a PaaS Platform - Java One SFO 2012

28 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Specification of Service Metadata

• Optional!– When not specified (vanilla EE app archives)

• Orchestration Engine automatically handles discovery of service deps

• Automatic wiring to default Service Templates– Metadata may be specified when:

• Finer grain control of application environment desired• Application-specific Service configuration

Page 29: Experiences in building a PaaS Platform - Java One SFO 2012

29 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Design Model

Page 30: Experiences in building a PaaS Platform - Java One SFO 2012

30 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Specification of Service Metadata

• Service Definition– Metadata used to provision and configure a Service

• What : Service characteristics (functional and non-functional) → Template matching

• How : Explicit Template specification → Template wiring• Service Reference

– An application component’s dependency on a Service• Explicit : User-specified through deployment descriptors• Implicit and Discovered: Information contained within the

archive

Page 31: Experiences in building a PaaS Platform - Java One SFO 2012

31 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Dependency Specification

Page 32: Experiences in building a PaaS Platform - Java One SFO 2012

32 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Sample Service Definition

Page 33: Experiences in building a PaaS Platform - Java One SFO 2012

33 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Sample Service Reference

Page 34: Experiences in building a PaaS Platform - Java One SFO 2012

34 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Program Agenda

• Cloud Computing• PaaS and Java EE• PaaS implications on application deployment• Design Model• Service Orchestration• Resources

Page 35: Experiences in building a PaaS Platform - Java One SFO 2012

35 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

GlassFish PaaS Runtime Architecture

Page 36: Experiences in building a PaaS Platform - Java One SFO 2012

36 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Orchestration Flow

Page 37: Experiences in building a PaaS Platform - Java One SFO 2012

37 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Dependency Discovery

Page 38: Experiences in building a PaaS Platform - Java One SFO 2012

38 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Orchestration Flow

Page 39: Experiences in building a PaaS Platform - Java One SFO 2012

39 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Provisioning

Page 40: Experiences in building a PaaS Platform - Java One SFO 2012

40 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Orchestration Flow

Page 41: Experiences in building a PaaS Platform - Java One SFO 2012

41 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Service Association

Page 42: Experiences in building a PaaS Platform - Java One SFO 2012

42 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS Deployment Usecases

• GlassFish 4.0 latest builds– PaaS Deployment/Undeployment– Application enable/disable– Elastic scaling of GlassFish Services

Available now in GlassFish 4.0

Page 43: Experiences in building a PaaS Platform - Java One SFO 2012

43 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

PaaS Deployment Usecases

• Redeployment support with retain services• PaaS Application Versioning• Shared and External Services• Support for other ServiceTypes – MQ …

Candidate Features

Page 44: Experiences in building a PaaS Platform - Java One SFO 2012

44 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Program Agenda

• Cloud Computing• PaaS and Java EE• PaaS implications on application deployment• Design Model• Service Orchestration• Resources

Page 45: Experiences in building a PaaS Platform - Java One SFO 2012

45 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Resources

• GlassFish 4.0 http://download.java.net/glassfish/4.0/promoted/– Service Orchestration Onepager http://bit.ly/pXOzFP– Java EE 7 keynote demo http://bit.ly/q9T7Z2

• Java EE 7 http://jcp.org//en/jsr/detail?id=342– PaaS Model http://bit.ly/o3XZIP

• Above the Clouds: A Berkeley View of Cloud Computing http://bit.ly/15MEL0

• The NIST Definition of Cloud Computing -- Special Publication 800-145(Draft) http://1.usa.gov/eZ8PSn

For more information

Page 46: Experiences in building a PaaS Platform - Java One SFO 2012

46 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Key Features

• Simplified Deployment in PaaS runtimes• Standards based application development• Support multiple Deployment Models and make

transition seamless

Service Orchestration

Page 47: Experiences in building a PaaS Platform - Java One SFO 2012

47 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Q&A

Page 48: Experiences in building a PaaS Platform - Java One SFO 2012

48 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Page 49: Experiences in building a PaaS Platform - Java One SFO 2012

49 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.

Classic Duke Future Tech Duke

Page 50: Experiences in building a PaaS Platform - Java One SFO 2012

50 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.