JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON



Similar documents
APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

What Is the Cloud?

Amazon Elastic Beanstalk

Last time. Today. IaaS Providers. Amazon Web Services, overview

Last time. Today. IaaS Providers. Amazon Web Services, overview

Razvoj Java aplikacija u Amazon AWS Cloud: Praktična demonstracija

Jfokus PaaS Hands-On Lab

Drive new Revenue With PaaS/IaaS. Ruslan Synytsky CTO, Jelastic

Last time. Today. IaaS Providers. Amazon Web Services, overview

Cloud Hosting. QCLUG presentation - Aaron Johnson. Amazon AWS Heroku OpenShift

How to choose the right PaaS Platform?

Intel IT s Cloud Journey. Speaker: [speaker name], Intel IT

SCOUT IN THE CLOUD. How to Scale Eclipse Scout Applications in the Cloud? Judith Gull & Thomas Schweigler

Stackato PaaS Architecture: How it works and why.

Automatic Deployment to PaaS Cloud

Leverage the Cloud for your Python & Perl Applications. Stackato Offers a Fast, Simple Way to Deploy Webs Apps to the Cloud

EEDC. Scalability Study of web apps in AWS. Execution Environments for Distributed Computing

Scalable Application. Mikalai Alimenkou

OpenShift and Cloud Foundry PaaS: High-level Overview of Features and Architectures

Scalable Architecture on Amazon AWS Cloud

Extending your VMware Cloud Infrastructure with a Private Platform-as-a-Service

ur skills.com

Thing Big: How to Scale Your Own Internet of Things.

OpenShift on OpenStack

A Comparison of Clouds: Amazon Web Services, Windows Azure, Google Cloud Platform, VMWare and Others (Fall 2012)

JavaOne JVM PaaS

AIST Data Symposium. Ed Lenta. Managing Director, ANZ Amazon Web Services

Java PaaS Enabling CI, CD, and DevOps

Enterprise PaaS Evaluation Guide

Networks and Services

PaaS solutions evaluation

Assignment # 1 (Cloud Computing Security)

Cloud computing - Architecting in the cloud

Scaling in the Cloud with AWS. By: Eli White (CTO & mojolive) eliw.com - mojolive.com

Platforms in the Cloud

PaaS - Platform as a Service Google App Engine

Cloud Computing with Amazon Web Services and the DevOps Methodology.

Apache Stratos Building a PaaS using OSGi and Equinox. Paul Fremantle CTO and Co- Founder, WSO2 CommiCer, Apache Stratos

OpenShift. OpenShift platform features. Benefits Document. openshift. Feature Benefit OpenShift. Enterprise

OpenShift on you own cloud. Troy Dawson OpenShift Engineer, Red Hat November 1, 2013

ArcGIS for Server: In the Cloud

Cloud Computing: Making the right choices

Running Oracle Applications on AWS

OpenShift 3.0 in the Sogeti Services Factory

Private PaaS 101: What It Is and Why You Need It. Insulate Your Cloud with the Stackato Secure Middleware Layer

The Cloud as a Computing Platform: Options for the Enterprise

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

OpenShift Enterprise PaaS by Red Hat. Andrey Markelov RHCA Red Hat, Presales Solution Architect

OUR TEAM. Enterprise Application Experts

A central continuous integration platform

Users VM A A A. Application. Compute/Storage/Network. VM Virtual Machine. On-Premises Data Center

Chapter 9 PUBLIC CLOUD LABORATORY. Sucha Smanchat, PhD. Faculty of Information Technology. King Mongkut s University of Technology North Bangkok

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

Migration Scenario: Migrating Backend Processing Pipeline to the AWS Cloud

Logentries Insights: The State of Log Management & Analytics for AWS

Overview. The Cloud. Characteristics and usage of the cloud Realities and risks of the cloud

GigaSpaces Real-Time Analytics for Big Data

Distributed Cloud Computing Platform as a Service (PaaS) Analysis and Recommendations

Private Clouds with Open Source

TECHNOLOGY WHITE PAPER Jan 2016

TECHNOLOGY WHITE PAPER Jun 2012

Cloud Computing. Chapter 1 Introducing Cloud Computing

Introduction to DevOps on AWS

Concentrate Observe Imagine Launch

Déployer son propre cloud avec OpenStack. GULL François Deppierraz

DevOps. Josh Preston Solutions Architect Stardate

RED HAT CLOUD SUITE FOR APPLICATIONS

How AWS Pricing Works May 2015

PLATFORM-AS-A-SERVICE: ADOPTION, STRATEGY, PLANNING AND IMPLEMENTATION

Making Your ColdFusion Apps Highly Available. Brian Klaas Johns Hopkins Bloomberg School of Public Health

Java, PHP & Ruby - Cloud Hosting

Enterprise Cloud Computing with AWS. for internal partner use only

The Virtualization Practice

Introduction to Cloud Computing

Primex Wireless OneVue Architecture Statement

DevOps Course Content

Web 2.0 Technology Overview. Lecture 8 GSL Peru 2014

Building Success on Acquia Cloud:

Amazon Web Services Yu Xiao

Intro to Cloud Computing. ID2210 Jim Dowling

Cloud Computing an introduction

Cloud Computing. Relevance to Enterprise. Abstract

Demystifying the Cloud Computing

Analysis of the European Platform-as-a-service Market. The Need for Efficient Application Delivery will Influence PaaS Growth

Linux A first-class citizen in Windows Azure. Bruno Terkaly bterkaly@microsoft.com Principal Software Engineer Mobile/Cloud/Startup/Enterprise

Paul Barham Program Manager - Java. David Staheli (dastahel@microsoft.com) Software Development Manager - Java

How To Manage An Orgsync Database On An Amazon Cloud 2 Instance

Transcription:

JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON Eberhard Wolff Architecture and Technology Manager adesso AG, Germany 12.10.

Agenda A Few Words About Cloud Java and IaaS PaaS Platform as a Service Google App Engine Amazon Beanstalk VMware CloudFoundry Cloud Bees

A Few Words About Cloud

IaaS PaaS SaaS Infrastructure as a Service Platform as a Service Software as a Service > Virtual Servers > Similar to Virtualization > Manage Everything Yourself > Virtual App Server > Handles Scale-Out > Mostly Managed by Provider > Software or Service that you use > Components that you add/integrate into your app

Cloud Deployment Model Public > Available to general public Private > Available to only one organization

Why Cloud: Economics Public Cloud: > Pay only what you need (Pay-as-you-go) (Public Cloud) > No CapEx > Handle load peaks cheaply > Transparent cost model Private Cloud: > Better Resource Utilization

Amazon Rechner 7

Why Cloud: Business Agility From development to production with just one click Much faster Much simpler Adrian Colyer (CTO VMware): Customers want Business Agility even if it means higher prices Application scales automatically > Higher load means more resources are used automatically Create a test environment with just one click > Production-like sizing > Cheaply (only paid during the test) Werner Vogels (CTO Amazon): Amazon Cloud is the answer to Amazon developers spending 70% of their time with scalability and technology

Why Cloud: Business Agility DevOps Continuous Delivery

Why Cloud? Platform of the Next Generation Based on cheap commodity technologies No costly high available hardware Individual server may fail Network may fail But: Data and application can be held redundantly in multiple data centers Automatic distribution Starting new computers trivial Cheap systems with high availability and high data durability Just like Google, Amazon, Facebook... Needs different architectures

What this is all about... WAR

So, let me get started Get an account at an IaaS provider or virtualize your data center and create a self service portal Install your (Java EE) environment Install your (Java) application Done Wow, that was easy!

That is not enough How do you deal with peaks? Need more app server instances The server instances must be shut down after the peak otherwise you would pay for them Traditional middleware does not allow for that Elastic scaling Individual nodes fail deal with it! RBMS prefer scale up (larger server) In the cloud it is easier to scale out (more server) That is why Amazon and Google use NoSQL / key-value stores

What you will eventually come up with A tool to take an Application and create a VM with all needed infrastructure etc Dynamically i.e. scale up and down App Need tools to > Install software > Manage infrastructure > Configure infrastructure > Set up user etc Puppet, Chef etc. Like a factory for VMs Works on Private Cloud, Public Cloud or your local machine VM VM

Advantages of IaaS Approach Very flexible Works for any IaaS and any software to be installed Works for complex environments with many infrastructure pieces > Install a database server, some Tomcats, a load balancer and a cache server > Install your own and totally proprietary special solution > Fine tune all the parameters Can deploy different parts of the application to special nodes But often developers just want a platform to run applications on No fine tuning Standardized and uniform services Also: Developers need other non-java-ee services

Not just automated App VM

Invisible App PaaS

PaaS Platform as a service (PaaS) is the delivery of a computing platform and solution stack as a service.

PaaS: Advantages and Disadvantages Advantages Easier to use than IaaS: You would need to install a server anyway Automatic scaling Resources automatically added Can offer additional service Tuned for Cloud Technical e.g. data store, messaging, GUI elements but IaaS does the same (Amazon) Disadvantages Less flexible Pre-defined programming model Defines environment Programming model might be different Hard to learn & port existing code

Google App Engine

Google App Engine Pioneer: Very early in the market Supports Java, Pyhton, Go (beta) For Java: Very restrictive environment > Java classes white list > Limited sandbox > Focus on NoSQL while typical Java applications use RDBMS > Limited Preview: Cloud SQL (MySQL) > Limit on start up time of application etc > Limit on response time (30 seconds) > No control or access to operating system > Can t change configuration of the web server Benefits? Specialized frameworks have been created (Gaelyk for Groovy) Recently changed pricing

Amazon Elastic Beanstalk

Amazon Web Services Collection of Cloud Offerings (mostly IaaS) Elastic Compute Cloud (EC2) Elastic Map Reduce Auto Scaling SimpleDB : Big Table like NoSQL database Simple Queue Service (SQS) Simple Notification Service (SNS) Simple Email Service (SES) Virtual Private Cloud (VPC) Simple Storage Service (S3) Elastic Block Storage (EBS) ElastiCache AWS is a marketplace: 3 rd party offerings https://mongohq.com/ for MongoDB and https://cloudant.com/ for CouchDB

Amazon Elastic Beanstalk Based on the Amazon EC2 infrastructure and Auto Scaling S3 to host the WARs Adds Linux, OpenJDK, Tomcat 6 / 7 Currently in beta and only in US-East Eclipse Plug In available Supports versioning of applications Supports elastic scaling depending on load indicators Simple Monitoring built in Detailed control over the environment (Tomcat parameters, used VM image, log in to machine etc.)

Amazon Elastic Beanstalk Access to Tomcat logs etc. Access to the OS Fine tuning of Tomcat parameters possible Easy, yet powerful Very easy to get started Demo application based on Spring Uses also S3 (storage) and Simple Notification Service (SNS) Add Relational Database Service (RDS) for enterprise scale MySQL or Oracle and all the other Amazon Web Services (AWS) Virtual Private Cloud (VPC) to access your backend Elasticache for performance

Amazon Elastic Beanstalk Can be much like your average Enterprise Java environment = Tomcat + RDBMS Cloud features like elastic scaling available Can easily add other AWS elements Runs on a proven environment But: 1 server = 1 virtual machine GAE can run multiple applications on one machine Less efficient (?)

VMware Cloud Foundry

VMware Cloud Foundry Open Source > At https://github.com/cloudfoundry/ under Apache2 license No commercial offering yet Hosted at cloudfoundry.com, currently beta

VMware Cloud Foundry Can run Java, Ruby and Node.js > Spring, Grails, Scala / Lift, Rails, Sinatra & Node.js supported > Erlang, PHP, Python, Play created by community > Support for other languages currently in development by the community Spring / Grails / Lift use Tomcat internally 1 server runs multiple applications Command line tool available Eclipse Plug In available Only possible to add new instances, no elastic scaling depending on load indicators Well you can build it J

VMware Cloud Foundry Services Relational Database Service (MySQL, PostgreSQL) NoSQL Key-Value Store (Redis) NoSQL Document Store (mongodb) Messaging Service (RabbitMQ) Services are shared across applications i.e. one server for multiple clients Framework support (e.g. Spring) allows easy access to services Behind the scenes: Environment variable for server, user, password i.e. can also use without framework support More to come in the future

VMware Cloud Foundry: Other Platforms Announced: Private Cloud Offering by VMware Beta: Activestate Private PaaS Offering Rightscale VM images for EC2 Ubuntu 11.10 has a repository for Cloud Foundry Easy to create larger installations on EC2 using juju Ubuntu s juju coordinates and installs a set of VMs VMware Cloud Foundry Microcloud: Try applications on your laptop

CloudBees DEV@Cloud and RUN@Cloud

CloudBees: DEV@Cloud Continuous Integration (Jenkins) > Good application for the Cloud: Peaks and high load only during working hours > Standardized and universally applicable service > Some Essentials Plug Ins in free version > More in Base / Pro / Enterprise pay version > Also more parallel build in pay version > and faster build machines Maven repository > Snapshot / Release > Builds can be automatically deployed Might add other services in the future Partner: SonarSource (Sonar in the Cloud), Sauce Labs On Demand (Selenium)

CloudBees: RUN@Cloud Tomcat / Java EE 6 Web Profile Runs on Amazon EC2 Multiple applications run on one machine Easily deploy a WAR > either by web interface > or command line utility (bees SDK) Simple monitoring (web / command line) Access to logs MySQL database > Very simple (i.e. just one server, but backup included) > Could use Amazon RDS and partner offering for MonogDB / CouchDB instead

Other Players Oracle > Just launched its Public Cloud based on Java EE Heroku > Pioneer for PaaS, in particular Ruby > Now support for Scala, Java etc > Acquired by Salesforce.com > git push into the Cloud RedHat > OpenShift Express: Public Cloud with Perl, Pyhton, Ruby, and Java EE support > OpenShift Felx: Public Cloud for Java EE based on EC2 > OpenShift Power (announced): Support for arbitrary Linux applications

Cloud Cloud is interesting because > Economics > Business Agility > Platform of the Future Google App Engine: The pioneer Amazon Beanstalk: The Tomcat you are used to based on Amazon Web Services Cloud Foundry: Open Source platform with a lot of innovation CloudBees: Developer Focus Other players: Red Hat, Oracle and Heroku

Questions? @ewolff