SlideShare ist ein Scribd-Unternehmen logo
1 von 47
Downloaden Sie, um offline zu lesen
<Insert Picture Here>




Running your Java EE 6 Applications in the Cloud
Arun Gupta, Java EE & GlassFish Guy
blogs.sun.com/arungupta, @arungupta
The following/preceding 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.



                                                     2
Agenda

•   Introduction to Java EE 6
•   Java EE 6 on Amazon
•   Java EE 6 on RightScale
•   Java EE 6 on Elastra
•   Java EE 6 on Joyent
•   Multi-cloud Vendor Comparison
•   Evolving Java EE for Cloud
•   Conclusions

                                    3
Brief Introduction to Java EE 6

●
    Light-weight
    ●
        Java EE 6 Web Profile, Pruning
●
    Extensible
    ●
        Embrace open-source frameworks using web fragments
●
    Easy-to-use
    ●
        CDI, Bean Validation, JAX-RS
    ●
        JPA 2, JSF 2, Servlets 3, EJB 3.1
    ●
        Annotations-based, Optional “web.xml”/”faces-config.xml”,
        EJB-in-WAR, ...



                                                                    4
Java EE 6 Demo


                 5
Oracle's definition of Cloud Computing

●
    Virtualized elastic platform for applications
    ●
        Standards-based application development/execution platform
    ●
        Includes hardware and software
    ●
        Virtualized and Elastic
    ●
        Runs a wide variety of applications
    ●
        On both public and private clouds




                                                                6
Oracle Exalogic Elastic Cloud

●
    Hardware and Software
    engineered to work together
●
    100% Fault-tolerant & Scalable
    On-Demand
●
    30 compute servers, 360 cores,
    980 GB Solid-state disk, 40
    GB/sec Infiniband, Patch
    centrally
●
    Servers, Network, Storage, VM,
    Operating System, Middleware,
    Develop/Run all applications



                                     7
Based upon
research work ...

                    8
What is Amazon ?


•   Boot server instances, scale up/down, pay-per-use
•   EC2: Compute capacity in the cloud
•   S3: Storage capacity in the cloud (1b → 5 GB)
•   RRS (reduced redundancy), RDS (database), FWS
    (fulfillment), SQS (queue), SNS (notification),
    CloudWatch (monitoring), FPS (payment), VPC
    (private cloud), EBS (block storage), ...




                                                    9
Java EE 6 on Amazon

• 2 New AMIs based on Hardened OpenSolaris
 • Oracle GlassFish Server 3.0 (not released)
 • Apache HTTP Server + mod_jk (not released)
 • Pre-existing MySQL Database 5.1 AMI
• Instances managed by SMF
 • GlassFish: svcadm restart/enable/disable
   svc:/application/GlassFish/domain1:default
 • MySQL SMF: svcadm enable mysql
 • mod_jk: svcadm restart/refresh/enable/disable
   svc:/network/http:apache22



                                                   10
Java EE 6 on Amazon
# Define a load-balancing worker
                                                AJP_INSTANCE_NAME
worker.list=worker1                              in GlassFish instances
#
# Define an ajp13 worker to represent instance1
worker.instance1.type=ajp13
worker.instance1.host=ec2-67-202-51-223.compute-1.amazonaws.com
worker.instance1.port=8009
#
# Define an ajp13 worker to represent instance2
worker.instance2.type=ajp13
worker.instance2.host=ec2-67-202-7-236.compute-1.amazonaws.com
worker.instance2.port=8009
#
# Define the type of worker1
worker.worker1.type=lb
# Add inst1 and inst2 to the balance_workers property of worker1
worker.worker1.balance_workers=instance1,instance2




                                                                          11
mod_jk
                                        Managed
                                          Using
                                        “cladmin”


                            ...
GlassFish-1   GlassFish-1         GlassFish-N




               MySQL



                                                    12
How to Deploy ?
• Launch MySQL AMI, create database, user,
  privileges, …
• Launch 1 or more GlassFish AMI
  • Set AJP_INSTANCE_NAME in each GlassFish
• Administer multiple instances using cladmin
  • --target instance-list OR set AS_TARGET=”...”
  • cladmin create-jdbc-connection-pool …
  • cladmin deploy ~/samples/hello.war
• Launch mod_jk AMI
  • Configure “worker.properties”



                                                    13
14
GlassFish 3.0.1
               JAX-RS
               EJB 3.1
               JPA 2




100,000+
surveys/hr



                         15
Pricing




http://aws.amazon.com/ec2/pricing/



                                     16
Java EE 6 on RightScale
                                                     Cloud
                                                   Applications



                      Automation                     C loud-R eady                         Expertise
R ig htS c a le




                      Architecture                      S olutions                         & S upport


                      Web
                      Site



                                                     Right
                      Grid                           Scripts




                  Amazon       Amazon     Amazon         Amazon                    IBM
                                                                     R ackspace                  VM Ware
                  US E as t    US Wes t     EU            As ia                   C loud




                                                                                                           17
How to Deploy ?
Macro Definition

• Launches a new virtual server with clean install
  of Ubuntu
• Install GlassFish Server Open Source Edition 3.0
• Detects database in the deployment
  • Installs MySQL Connector/J Driver
  • Creates a JDBC Connection Pool and Resource
• Install samples
  • Archives (WAR/EAR/...) stored in S3




                                                  18
High Availability Deployment
                        DNS Round Robin



          Load Balancer-1                 Load Balancer-2

                                                                    Min: 0;Max: 5

                                                            ...
GlassFish-1            GlassFish-2            GlassFish-3          GlassFish-n

                                                                    Server Array


              Master        replication      Slave
 EBS           DB                             DB            EBS
 Vol                                                        Vol   Amazon EC2

                            Amazon S3


                                                                                 19
RightScripts




               20
Alerts




         21
22
Pricing




          http://www.rightscale.com/products/plans-pricing/


                                                              23
What is Elastra ?
• Design, deploy, manage system designs on
  private/public clouds
  • Component: A piece of software such as GlassFish or Apache
  • Connectors: Enables components to communicate
  • Resources: Network storage
• Manage a hybrid cloud (Design → Deployment(s))
  • VMWare vCenter 2.5, VMWare vSphere4, AWS
• Enterprise Cloud Server (ECS) or AWS Edition




                                                            24
25
GlassFish Properties




                       26
Resource Allocation




                      27
Mapping to Amazon Instances




                              28
How to Deploy ?
Design → Deployment




                      29
Uninstalled
 Installing
 Installed
Configuring
Configured
  Starting
  Started




              30
How to Deploy ?
  Deploying Your App


• Web-based Admin Console to deploy/manage
  application on GlassFish
• MySQL GUI Tool




                                             31
Pricing

• Not publicly listed on website
  •   24 x 7 support
  •   Unlimited support tickets
  •   2-hour guaranteed response time
  •   Dedicated support engineer
  •   Forums
  •   ...




                                        32
Java EE 6 on Joyent

●
    High performance and reliable public, private,
    and hybrid cloud
●
    Environment
    ●
        Language: Java, PHP, Ruby, …
    ●
        Server: GlassFish, Apache, nginx, …
    ●
        Database: MySQL, Oracle, ...




                                                     33
Vs
Amazon




         34
Java EE 6 on Joyent

●
    Smart Machine (nee Accelerators)
    ●
        Public IP Address
    ●
        Root access to Solaris Zone
    ●
        Guaranteed minimum CPU/RAM
    ●
        Dedicated IP address + 100 Mbps connectivity
    ●
        Common packages like MySQL can be installed using
        Webmin
    ●
        “sftp” to upload application packages




                                                            35
36
37
Pricing
 • Included support issues
      • Inaccessible smart machine
      • Slow performance
      • System-level functionality not working
 • $199/incident (max one hour)




http://www.joyent.com/support/support-programs/



                                                  38
Multi-cloud Vendors




                      39
Vendor        Language   Compute         Storage Provider
RightScale    Bash, Ruby, Yes            Yes      Amazon, GoGrid, FlexiScale,
              Perl                                Eucalyptus
Elastra       Design     Yes             ??       Amazon, ??

SimpleCloud   PHP        No              Yes,     Microsoft, IBM, Rackspace,
                                         Queing   Nirvanix, GoGrid
libcloud      Python     Yes             ??       Dreamhost, Amazon, Eucalyptus,
                                                  IBM Cloud, Linode, Rackspace,
                                                  RimuHosting, SliceHost,
                                                  vCloud, ...
jClouds       Java,      Yes             Yes      Opscode, Chef, IBM Developer
              Clojure                             Cloud, Eucalyptus, Google
                                                  Storage, Terremark, Slicehost,
                                                  Box.net, Azure
DeltaCloud    Ruby,      Create/Start/   No       Amazon, GoGrid, OpenNebula,
              REST       Stop/Reboot              Rackspace, RHEV-M,
                         /Destroy                 RimuHosting
CloudLoop     Java       No              Yes      Amazon, Nirvanix

Dasein        Java       ??              ??       Amazon, Rackspace, vSphere
                                                                                   40
What does Java EE offer to Cloud ?

●
    Containers
●
    Injectable services
●
    Scale to large clusters
●
    Security model
●
    ...




                                         41
What can Java EE do for Clouds ?

●
    Tighter requirements for resource and state
    management
●
    Better isolation between applications
●
    Potential standard APIs for NRDBMS, Caching, …
●
    HTML5
●
    Common management and monitoring interfaces
●
    Better packaging
    ●
        Apps/Data are (multiple) versioned, Upgrades,
        Expose/Connect to services, QoS attributes, ...
●
    Evolution, not revolution

                                                          42
GlassFish Distributions
Distribution              License      Features

GlassFish Open Source     CDDL &       • Java EE 6 Compatibility
Edition 3.0.1             GPLv2        • No Clustering
                                       • Clustering planned in 3.1
                                       • mod_jk for load balancing

GlassFish Open Source     CDDL &       • Java EE 5 Compatibility
Edition 2.1.1             GPLv2        • In memory replication
                                       • mod_loadbalancer
Oracle GlassFish Server   Commercial   • GlassFish Open Source Edition 3.0.1
3.0.1                                  • GlassFish Server Control            Clustering
                                       • Clustering planned in 3.1            Coming
                                                                                Soon!
Oracle GlassFish Server   Commercial   • GlassFish Open Source Edition 2.1.1
2.1.1                                  • Enterprise Manager
                                       • HADB
GlassFish Roadmap Detail




  44
©2010 Oracle Corporation
Conclusions

• Java EE 6 is light-weight, flexible, easy-to-use
• GlassFish Server Open Source Edition 3.0 and
  Oracle GlassFish Server 3.0 provides feature-
  rich implementation
• Java EE 6 applications can be easily deployed
  on Amazon, RightScale, Elastra, Joyent, and
  other clouds
• Talk to us at users@glassfish.dev.java.net.



                                                     45
References


• glassfish.org
• oracle.com/goto/glassfish
• blogs.sun.com/theaquarium
• glassfish.org/roadmap
• youtube.com/user/GlassFishVideos
• Follow @glassfish




                                     46
<Insert Picture Here>




Running your Java EE 6 Applications in the Cloud
Arun Gupta, Java EE & GlassFish Guy
blogs.sun.com/arungupta, @arungupta

Weitere ähnliche Inhalte

Was ist angesagt?

Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
Shreedhar Ganapathy
 

Was ist angesagt? (20)

Java EE 7 at JAX London 2011 and JFall 2011
Java EE 7 at JAX London 2011 and JFall 2011Java EE 7 at JAX London 2011 and JFall 2011
Java EE 7 at JAX London 2011 and JFall 2011
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
 
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
 
GlassFish REST Administration Backend
GlassFish REST Administration BackendGlassFish REST Administration Backend
GlassFish REST Administration Backend
 
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
 
GlassFish Community Update @ JavaOne 2011
GlassFish Community Update @ JavaOne 2011GlassFish Community Update @ JavaOne 2011
GlassFish Community Update @ JavaOne 2011
 
Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0Java Summit Chennai: JAX-RS 2.0
Java Summit Chennai: JAX-RS 2.0
 
Java EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolioJava EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolio
 
GlassFish OSGi Server
GlassFish OSGi ServerGlassFish OSGi Server
GlassFish OSGi Server
 
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudTDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
 
Java Summit Chennai: Java EE 7
Java Summit Chennai: Java EE 7Java Summit Chennai: Java EE 7
Java Summit Chennai: Java EE 7
 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010
 
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
 
Boston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFishBoston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFish
 
OSGi and Java EE in GlassFish - Tech Days 2010 India
OSGi and Java EE in GlassFish - Tech Days 2010 IndiaOSGi and Java EE in GlassFish - Tech Days 2010 India
OSGi and Java EE in GlassFish - Tech Days 2010 India
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011
 
Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
 
TDC 2011: OSGi-enabled Java EE Application
TDC 2011: OSGi-enabled Java EE ApplicationTDC 2011: OSGi-enabled Java EE Application
TDC 2011: OSGi-enabled Java EE Application
 
Java EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
Java EE 7: Developing for the Cloud at Geecon, JEEConf, JohannesburgJava EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
Java EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
 

Ähnlich wie Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010

Running your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudRunning your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the Cloud
IndicThreads
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
Tom Laszewski
 

Ähnlich wie Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010 (20)

Running your Java EE 6 applications in the clouds
Running your Java EE 6 applications in the clouds Running your Java EE 6 applications in the clouds
Running your Java EE 6 applications in the clouds
 
JFokus 2011 - Running your Java EE 6 apps in the Cloud
JFokus 2011 - Running your Java EE 6 apps in the CloudJFokus 2011 - Running your Java EE 6 apps in the Cloud
JFokus 2011 - Running your Java EE 6 apps in the Cloud
 
Running your Java EE 6 Applications in the Cloud
Running your Java EE 6 Applications in the CloudRunning your Java EE 6 Applications in the Cloud
Running your Java EE 6 Applications in the Cloud
 
Running your Java EE 6 applications in the Cloud (FISL 12)
Running your Java EE 6 applications in the Cloud (FISL 12)Running your Java EE 6 applications in the Cloud (FISL 12)
Running your Java EE 6 applications in the Cloud (FISL 12)
 
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
 
JavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
JavaOne India 2011 - Running your Java EE 6 Apps in the CloudJavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
JavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
 
Running your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudRunning your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the Cloud
 
Running your Java EE 6 applications in the cloud
Running your Java EE 6 applications in the cloudRunning your Java EE 6 applications in the cloud
Running your Java EE 6 applications in the cloud
 
Javaee6 Jazoon 2010 100603081147 Phpapp01
Javaee6 Jazoon 2010 100603081147 Phpapp01Javaee6 Jazoon 2010 100603081147 Phpapp01
Javaee6 Jazoon 2010 100603081147 Phpapp01
 
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
 
Cloud computing & lamp applications
Cloud computing & lamp applicationsCloud computing & lamp applications
Cloud computing & lamp applications
 
Deep dive into AWS fargate
Deep dive into AWS fargateDeep dive into AWS fargate
Deep dive into AWS fargate
 
Cloudy Ajax 08 10
Cloudy Ajax 08 10Cloudy Ajax 08 10
Cloudy Ajax 08 10
 
Running Oracle EBS in the cloud (DOAG TECH17 edition)
Running Oracle EBS in the cloud (DOAG TECH17 edition)Running Oracle EBS in the cloud (DOAG TECH17 edition)
Running Oracle EBS in the cloud (DOAG TECH17 edition)
 
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
Running Oracle EBS in the cloud (OAUG Collaborate 18 edition)
 
Cloud-native legacy applications
Cloud-native legacy applicationsCloud-native legacy applications
Cloud-native legacy applications
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
 
AWS (Hadoop) Meetup 30.04.09
AWS (Hadoop) Meetup 30.04.09AWS (Hadoop) Meetup 30.04.09
AWS (Hadoop) Meetup 30.04.09
 
Protect your app from Outages
Protect your app from OutagesProtect your app from Outages
Protect your app from Outages
 
19th February 2013, AWS User Group UK, Meetup #3, Managing your apps on AWS: ...
19th February 2013, AWS User Group UK, Meetup #3, Managing your apps on AWS: ...19th February 2013, AWS User Group UK, Meetup #3, Managing your apps on AWS: ...
19th February 2013, AWS User Group UK, Meetup #3, Managing your apps on AWS: ...
 

Mehr von Arun Gupta

Mehr von Arun Gupta (20)

5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf
 
Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019
 
Machine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesMachine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and Kubernetes
 
Secure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerSecure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using Firecracker
 
Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019
 
Why Amazon Cares about Open Source
Why Amazon Cares about Open SourceWhy Amazon Cares about Open Source
Why Amazon Cares about Open Source
 
Machine learning using Kubernetes
Machine learning using KubernetesMachine learning using Kubernetes
Machine learning using Kubernetes
 
Building Cloud Native Applications
Building Cloud Native ApplicationsBuilding Cloud Native Applications
Building Cloud Native Applications
 
Chaos Engineering with Kubernetes
Chaos Engineering with KubernetesChaos Engineering with Kubernetes
Chaos Engineering with Kubernetes
 
How to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAMHow to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAM
 
Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018
 
The Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 KeynoteThe Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 Keynote
 
Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018
 
Mastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv SummitMastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv Summit
 
Top 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's LandscapeTop 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's Landscape
 
Container Landscape in 2017
Container Landscape in 2017Container Landscape in 2017
Container Landscape in 2017
 
Java EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShiftJava EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShift
 
Docker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developersDocker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developers
 
Thanks Managers!
Thanks Managers!Thanks Managers!
Thanks Managers!
 
Migrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to ContainersMigrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to Containers
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Kürzlich hochgeladen (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010

  • 1. <Insert Picture Here> Running your Java EE 6 Applications in the Cloud Arun Gupta, Java EE & GlassFish Guy blogs.sun.com/arungupta, @arungupta
  • 2. The following/preceding 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. 2
  • 3. Agenda • Introduction to Java EE 6 • Java EE 6 on Amazon • Java EE 6 on RightScale • Java EE 6 on Elastra • Java EE 6 on Joyent • Multi-cloud Vendor Comparison • Evolving Java EE for Cloud • Conclusions 3
  • 4. Brief Introduction to Java EE 6 ● Light-weight ● Java EE 6 Web Profile, Pruning ● Extensible ● Embrace open-source frameworks using web fragments ● Easy-to-use ● CDI, Bean Validation, JAX-RS ● JPA 2, JSF 2, Servlets 3, EJB 3.1 ● Annotations-based, Optional “web.xml”/”faces-config.xml”, EJB-in-WAR, ... 4
  • 5. Java EE 6 Demo 5
  • 6. Oracle's definition of Cloud Computing ● Virtualized elastic platform for applications ● Standards-based application development/execution platform ● Includes hardware and software ● Virtualized and Elastic ● Runs a wide variety of applications ● On both public and private clouds 6
  • 7. Oracle Exalogic Elastic Cloud ● Hardware and Software engineered to work together ● 100% Fault-tolerant & Scalable On-Demand ● 30 compute servers, 360 cores, 980 GB Solid-state disk, 40 GB/sec Infiniband, Patch centrally ● Servers, Network, Storage, VM, Operating System, Middleware, Develop/Run all applications 7
  • 9. What is Amazon ? • Boot server instances, scale up/down, pay-per-use • EC2: Compute capacity in the cloud • S3: Storage capacity in the cloud (1b → 5 GB) • RRS (reduced redundancy), RDS (database), FWS (fulfillment), SQS (queue), SNS (notification), CloudWatch (monitoring), FPS (payment), VPC (private cloud), EBS (block storage), ... 9
  • 10. Java EE 6 on Amazon • 2 New AMIs based on Hardened OpenSolaris • Oracle GlassFish Server 3.0 (not released) • Apache HTTP Server + mod_jk (not released) • Pre-existing MySQL Database 5.1 AMI • Instances managed by SMF • GlassFish: svcadm restart/enable/disable svc:/application/GlassFish/domain1:default • MySQL SMF: svcadm enable mysql • mod_jk: svcadm restart/refresh/enable/disable svc:/network/http:apache22 10
  • 11. Java EE 6 on Amazon # Define a load-balancing worker AJP_INSTANCE_NAME worker.list=worker1 in GlassFish instances # # Define an ajp13 worker to represent instance1 worker.instance1.type=ajp13 worker.instance1.host=ec2-67-202-51-223.compute-1.amazonaws.com worker.instance1.port=8009 # # Define an ajp13 worker to represent instance2 worker.instance2.type=ajp13 worker.instance2.host=ec2-67-202-7-236.compute-1.amazonaws.com worker.instance2.port=8009 # # Define the type of worker1 worker.worker1.type=lb # Add inst1 and inst2 to the balance_workers property of worker1 worker.worker1.balance_workers=instance1,instance2 11
  • 12. mod_jk Managed Using “cladmin” ... GlassFish-1 GlassFish-1 GlassFish-N MySQL 12
  • 13. How to Deploy ? • Launch MySQL AMI, create database, user, privileges, … • Launch 1 or more GlassFish AMI • Set AJP_INSTANCE_NAME in each GlassFish • Administer multiple instances using cladmin • --target instance-list OR set AS_TARGET=”...” • cladmin create-jdbc-connection-pool … • cladmin deploy ~/samples/hello.war • Launch mod_jk AMI • Configure “worker.properties” 13
  • 14. 14
  • 15. GlassFish 3.0.1 JAX-RS EJB 3.1 JPA 2 100,000+ surveys/hr 15
  • 17. Java EE 6 on RightScale Cloud Applications Automation C loud-R eady Expertise R ig htS c a le Architecture S olutions & S upport Web Site Right Grid Scripts Amazon Amazon Amazon Amazon IBM R ackspace VM Ware US E as t US Wes t EU As ia C loud 17
  • 18. How to Deploy ? Macro Definition • Launches a new virtual server with clean install of Ubuntu • Install GlassFish Server Open Source Edition 3.0 • Detects database in the deployment • Installs MySQL Connector/J Driver • Creates a JDBC Connection Pool and Resource • Install samples • Archives (WAR/EAR/...) stored in S3 18
  • 19. High Availability Deployment DNS Round Robin Load Balancer-1 Load Balancer-2 Min: 0;Max: 5 ... GlassFish-1 GlassFish-2 GlassFish-3 GlassFish-n Server Array Master replication Slave EBS DB DB EBS Vol Vol Amazon EC2 Amazon S3 19
  • 21. Alerts 21
  • 22. 22
  • 23. Pricing http://www.rightscale.com/products/plans-pricing/ 23
  • 24. What is Elastra ? • Design, deploy, manage system designs on private/public clouds • Component: A piece of software such as GlassFish or Apache • Connectors: Enables components to communicate • Resources: Network storage • Manage a hybrid cloud (Design → Deployment(s)) • VMWare vCenter 2.5, VMWare vSphere4, AWS • Enterprise Cloud Server (ECS) or AWS Edition 24
  • 25. 25
  • 28. Mapping to Amazon Instances 28
  • 29. How to Deploy ? Design → Deployment 29
  • 31. How to Deploy ? Deploying Your App • Web-based Admin Console to deploy/manage application on GlassFish • MySQL GUI Tool 31
  • 32. Pricing • Not publicly listed on website • 24 x 7 support • Unlimited support tickets • 2-hour guaranteed response time • Dedicated support engineer • Forums • ... 32
  • 33. Java EE 6 on Joyent ● High performance and reliable public, private, and hybrid cloud ● Environment ● Language: Java, PHP, Ruby, … ● Server: GlassFish, Apache, nginx, … ● Database: MySQL, Oracle, ... 33
  • 34. Vs Amazon 34
  • 35. Java EE 6 on Joyent ● Smart Machine (nee Accelerators) ● Public IP Address ● Root access to Solaris Zone ● Guaranteed minimum CPU/RAM ● Dedicated IP address + 100 Mbps connectivity ● Common packages like MySQL can be installed using Webmin ● “sftp” to upload application packages 35
  • 36. 36
  • 37. 37
  • 38. Pricing • Included support issues • Inaccessible smart machine • Slow performance • System-level functionality not working • $199/incident (max one hour) http://www.joyent.com/support/support-programs/ 38
  • 40. Vendor Language Compute Storage Provider RightScale Bash, Ruby, Yes Yes Amazon, GoGrid, FlexiScale, Perl Eucalyptus Elastra Design Yes ?? Amazon, ?? SimpleCloud PHP No Yes, Microsoft, IBM, Rackspace, Queing Nirvanix, GoGrid libcloud Python Yes ?? Dreamhost, Amazon, Eucalyptus, IBM Cloud, Linode, Rackspace, RimuHosting, SliceHost, vCloud, ... jClouds Java, Yes Yes Opscode, Chef, IBM Developer Clojure Cloud, Eucalyptus, Google Storage, Terremark, Slicehost, Box.net, Azure DeltaCloud Ruby, Create/Start/ No Amazon, GoGrid, OpenNebula, REST Stop/Reboot Rackspace, RHEV-M, /Destroy RimuHosting CloudLoop Java No Yes Amazon, Nirvanix Dasein Java ?? ?? Amazon, Rackspace, vSphere 40
  • 41. What does Java EE offer to Cloud ? ● Containers ● Injectable services ● Scale to large clusters ● Security model ● ... 41
  • 42. What can Java EE do for Clouds ? ● Tighter requirements for resource and state management ● Better isolation between applications ● Potential standard APIs for NRDBMS, Caching, … ● HTML5 ● Common management and monitoring interfaces ● Better packaging ● Apps/Data are (multiple) versioned, Upgrades, Expose/Connect to services, QoS attributes, ... ● Evolution, not revolution 42
  • 43. GlassFish Distributions Distribution License Features GlassFish Open Source CDDL & • Java EE 6 Compatibility Edition 3.0.1 GPLv2 • No Clustering • Clustering planned in 3.1 • mod_jk for load balancing GlassFish Open Source CDDL & • Java EE 5 Compatibility Edition 2.1.1 GPLv2 • In memory replication • mod_loadbalancer Oracle GlassFish Server Commercial • GlassFish Open Source Edition 3.0.1 3.0.1 • GlassFish Server Control Clustering • Clustering planned in 3.1 Coming Soon! Oracle GlassFish Server Commercial • GlassFish Open Source Edition 2.1.1 2.1.1 • Enterprise Manager • HADB
  • 44. GlassFish Roadmap Detail 44 ©2010 Oracle Corporation
  • 45. Conclusions • Java EE 6 is light-weight, flexible, easy-to-use • GlassFish Server Open Source Edition 3.0 and Oracle GlassFish Server 3.0 provides feature- rich implementation • Java EE 6 applications can be easily deployed on Amazon, RightScale, Elastra, Joyent, and other clouds • Talk to us at users@glassfish.dev.java.net. 45
  • 46. References • glassfish.org • oracle.com/goto/glassfish • blogs.sun.com/theaquarium • glassfish.org/roadmap • youtube.com/user/GlassFishVideos • Follow @glassfish 46
  • 47. <Insert Picture Here> Running your Java EE 6 Applications in the Cloud Arun Gupta, Java EE & GlassFish Guy blogs.sun.com/arungupta, @arungupta