PaaSing a Java EE Application

Preview:

Citation preview

1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

2 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

PaaSing a Java EE Application

Kshitiz Saxena Jagadish Ramu

3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

San Francisco September 30–October 4, 2012

4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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.

5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Agenda

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

6 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Cloud Computing

On-demand Self-Service

Broad network access

Resource Pooling

Rapid Elasticity

Measured Service

Essential Characteristics

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

8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Program Agenda

Cloud Computing

PaaS and Java EE

PaaS implications on application deployment

Design Model

Resources

11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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”

13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

New PaaS Roles in Java EE 7

PaaS Product Vendor

PaaS Provider

PaaS Account Manager

PaaS Customer

Application Submitter

Application Administrator

End-User

14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Java EE 7 Roles in a PaaS scenario

15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Program Agenda

Cloud Computing

PaaS and Java EE

PaaS implications on application deployment

Design Model

Resources

16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

PaaS Implications on Deployment

Simplified PaaS Application Deployment• Single-click, self-service, “push to cloud”

17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

19 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

A sample application stack

21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Traditional Java EE Application Deployment

22 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Java EE PaaS Application Deployment

23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

PaaSing a Java EE Application in the Cloud

Demo

24 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Conference Planning in the Cloud

25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

PaaS Deployment for Demo

26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Program Agenda

Cloud Computing

PaaS and Java EE

PaaS implications on application deployment

Design Model

Resources

27 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Terminology

Service

ServiceType– Java EE, RDBMS, HTTP Load Balancer etc.

Services – scope and lifecycle– Provisioned Services

• Application scoped• Shared

– External (a priori ) services

28 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

29 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Design Model

30 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

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

31 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Service Dependency Specification

32 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Sample Service Definition

33 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Sample Service Reference

34 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

GlassFish PaaS Runtime Architecture

35 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Service Orchestration Flow

36 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

37 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Program Agenda

Cloud Computing

PaaS and Java EE

PaaS implications on application deployment

Design Model

Resources

38 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Resources

GlassFish 4.0 http://download.java.net/glassfish/4.0/promoted/– Spec http://bit.ly/sAZtEL– 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 http://1.usa.gov/ohXnlM

For more information

39 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Q&A

40 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

41 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Classic Duke Future Tech Duke

42 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Recommended