cloudbees paas presentation at oakland jug
DESCRIPTION
CloudBees PaaS Overview. Presentation by Harpreet Singh and Vivek Pandey at Oakland JUG on April 20th, 2011.TRANSCRIPT
Taking your Applications to the Cloud CloudBees Platform - Comprehensive Platform as a Service
April 20th, 2011 Vivek Pandey Architect Harpreet Singh Senior Director, Product Management
©2011 Cloud Bees, Inc. All Rights Reserved
2
• What’s the cloud? • RUN@cloud • DEV@cloud
Agenda
©2011 CloudBees, Inc. All Rights Reserved
3 ©2011 CloudBees, Inc. All Rights Reserved
App Deployment – Simplified: Is this you?
Provision node:
Provision cluster:
Provision DB:
Provision cluster Provision DB Deploy schema
Deploy App to each node
Deploy App:
(not a transparent update process) Manage environment (recurring) Metering/Scaling (recurring)
Deploy App to traditional Java platform
Provision Node
Install LoadBalancer
Configure LB
Secure LB
Setup BC for cluster
QA Cluster
Configure DNS
Configure OS
Secure OS
Install AS on OS
Configure AS
Secure AS
Provision Node
Install DB
Configure DB
Secure DB
Setup BC for DB
Measure App Performance
Acquire Hardware
Provision Node
Update Cluster
Update LB
Update Security
Analyse BulleEns
Maintain OS
Maintain JVM
Maintain AS
Maintain DB
Maintain FW
Validate/QA stack
Security
QA
AS/OS
What’s the cloud? What does it mean for you?
©2011 Cloud Bees, Inc. All Rights Reserved
5
Traditional Software Stack
©2011 CloudBees, Inc. All Rights Reserved
Install
Monitor
Patch
Upgrade
Validate Stack
6 ©2011 CloudBees, Inc. All Rights Reserved
Install
Monitor
Patch
Upgrade
Validate Stack
Cloud Computing: Outsourcing headaches
Cloud Provider
7
Cloud Services Market
©2011 Cloud Bees, Inc. All Rights Reserved
"Cloud computing is on-demand access to virtualized IT resources that are housed outside of your own data center, shared by others, simple to use, paid for via subscription, and accessed over the Web.“ - John Foley, Information Week
SaaS
PaaS
IaaS
8
• Amazon – the most popular example • Lego blocks of servers, vm’s, DBs, AS etc • Development Environment:
– Flexible, complicated – “Give me a server, give me a OS, give me a
virtualization platform, give me a AS, give me a database. I will manage everything.”
• User Perspective – Customized apps
IaaS
©2011 CloudBees, Inc. All Rights Reserved
9
• SalesForce, the most popular example • Development Environment:
– Rigid – “Give me your environment, I will build my
app to your environment” • User Perspective
– Cookie cutter apps
SaaS
©2011 CloudBees, Inc. All Rights Reserved
10
• CloudBees • Development Environment:
– Flexible Platform – “Give me my standards-based environment
and manage servers,scalability for me” • User Perspective
– Customized apps
PaaS
©2011 CloudBees, Inc. All Rights Reserved
11
Developers View
©2011 CloudBees, Inc. All Rights Reserved
Iaas Juggle Technologies
Saas Constrained
Paas Flexible
CloudBees Who are we and what we can do for you?
©2011 Cloud Bees, Inc. All Rights Reserved
13 ©2011 Cloud Bees, Inc. All Rights Reserved
About CloudBees Our Mission
Strategy
Become the leading PlaPorm as a Service (PaaS) for Java™
Why We’re Different
CloudBees services the complete lifecycle of Cloud applica?on development and deployment. No Servers. No Virtual Machines. No IT.
§ DEV@cloud – Cloud Services for Developers § RUN@cloud -‐ FricEonless runEme PaaS for Java apps
14 ©2011 CloudBees, Inc. All Rights Reserved
App Deployment – simplified really!
Upload App DONE
• No need to provision nodes, clusters, load-‐balancers, databases, etc.
• Environment constantly managed and monitored
• Metering/scaling updated in real-‐Eme
• Business ConEnuity built-‐in
Deploy App to CloudBees
15
IaaS Providers (Public Cloud)
©2011 CloudBees, Inc. All Rights Reserved
CloudBees: Platform as a Service + Nectar
SaaS Vendor Applica?ons
Enterprise User Applica?ons
CloudBees Core PlaPorm Services
RUN@cloud DEV@cloud
Development Projects
Partner Services
APIs
Private Cloud
SaaS for developers: Repositories, build, test, etc.
Nectar Inside
Run your applica8ons: Auto-‐scale, maintain, etc.
Core run8me services & back-‐end services
1 2
3
A B
EC2, Rackspace, … Verizon, Terremark, …
Enterprises
Nectar/ Jenkins
4
End-users OEM
16
IaaS Providers (Public Cloud)
©2011 CloudBees, Inc. All Rights Reserved
CloudBees Platform as a Service
Continuous Deployment
Production
Build
Test
Provisioning
Maintenance
Jenkins
SaaS Vendor Applica?ons
Enterprise User Applica?ons
JVM – Java EE Java, Python, Scala, …
CloudBees Core PlaPorm Services
RUN DEV
Repositories
Data Services RDBMS, NoSQL
Metering Billing Monitoring Management
Messaging Identity Logging/ Auditing
Back-end services
Runtime services
Development Projects Partner Services
GIT Maven … SVN
APIs
Testing Preproduction
CloudBees Services
Databases
Other SaaS
On Premise
Private Cloud
17
• CloudBees integrated plaPorm allows Java developers to put their code into the DEV@cloud build system, and from here publish their applicaEon on the RUN@cloud PaaS for Java
• Customers will now be able to do everything – develop, build, test and deploy – in the cloud
• This is the first Java PaaS to date that offers a complete environment, from development to producEon
• Some Numbers – More than 4,000 applicaEon deployments to date on RUN@cloud – More than 1500 accounts on DEV@cloud – More than 250,000 minutes of build Eme consumed on DEV@cloud
Continuous Deployment
©2011 CloudBees, Inc. All Rights Reserved
CloudBees Jenkins Solutions
CloudBees - Confidential 18
DEV@cloud
Public cloud On-premise
Simple setup
1
2 3
1. Subscription/support for installed Jenkins community 2. Nectar == productized Jenkins with proprietary add-
ons, stable release cycle, service-packs 3. Self-service pay-as-you-go public cloud “Jenkins as a
Service” 4. Self-Service on-premise “Jenkins as a Service” for
Enterprises
RUN@cloud Deep dive of CloudBees PaaS
©2011 Cloud Bees, Inc. All Rights Reserved
20
• PlaPorm as a Service for Java – Targets Java Web ApplicaEons. Tomcat, Spring, Java EE support – Supports other JVM-‐based languages/frameworks: Scala, JRuby, ColdFusion,
Grails, Play, etc. • RUN@cloud plaPorm
– Easily provision applicaEons and resources (databases, etc.) – Scalability – Redundancy – MulE-‐tenancy – Monitoring & reporEng
• RUN@cloud SDK – Local tools for running and deploying apps from local workstaEon
• RUN@cloud API – HTTP-‐based API for managing RUN@cloud services
CloudBees PaaS - Java Platform
©2011 CloudBees, Inc. All Rights Reserved
21
• Features – Turnkey setup via self-‐service web interface – AutomaEon via HTTP-‐based management API – Service Level Monitoring
• Java as a Service – HTTP load-‐balanced clustering – Shared or dedicated server deployments – Local development sandbox
• MySQL as a Service – Master/Slave setups – Load balanced JDBC driver – Automated backups
RUN@cloud Managed Services
©2011 CloudBees, Inc. All Rights Reserved
22 ©2011 CloudBees, Inc. All Rights Reserved
CloudBees RUN@cloud
RUN@cloud
Production
JVM-based Application Server
…
RUN@cloud environment provides run?me-‐agnos?c PaaS sub-‐systems
• Possible to handle non-‐Java environments in the future • Flexible applicaEon scalability • Session state externalized from JVM-‐runEme • Deployment from mulEple sources: UI, Eclipse, CLI, REST, Maven, Ant, etc.
Java/JVM PaaS • Tomcat-‐based (future: JBoss)
• Aim to support EE 6 WP • Supports a variety of JVM-‐based languages and frameworks
• Spring, JRuby, CFML (ColdFusion), Scala, etc.
Scale-DUO High-Availability
Session Management
Multi-tenancy PaaS Deployers
Dependency Management
CFML Scala …
Java EE Spring JRuby
23
RUN@cloud Demo
©2011 CloudBees, Inc. All Rights Reserved
• Deploying a Java EE Web applicaEon
DEV@cloud Deep Dive of CloudBees Developer Services
©2011 Cloud Bees, Inc. All Rights Reserved
25 ©2011 Cloud Bees, Inc. All Rights Reserved
Continuous Integration in the Cloud
• No disrupEon when code changes break things
• “Working” build always available for test, demos, etc.
• Provides criEcal metrics about development – quality, producEvity, funcEonal
Why Con?nuous Integra?on?
Test Code
Stage
ConEnuous Deployment
Monitor Repositories
Build Code
ConEnuous IntegraEon
Jenkins/Hudson • Build machines always available when you need them, lowers CAPEX
• Scale DUO – Pay for what you use, when you need it
• IntegraEon between CI modules reduces dev complexity, lowers OPEX
• Seamless integraEon to runEme PaaS
• ConEnuous Deployment Capability
Why in the Cloud?
26
Benefits of DEV@cloud Jenkins Service: • Scale your Jenkins environment with the
power of the Cloud • Ease your Jenkins management overhead • Speed your Jenkins builds • Save money with on-‐demand Jenkins
Service.
©2011 Cloud Bees, Inc. All Rights Reserved
Continuous Integration – Jenkins/Hudson
0
5,000
10,000
15,000
20,000
25,000
Jenkins/Hudson Adoption, by Builds
Source: Hudson Labs
Nectar – On-‐Premise Enterprise Jenkins • Support from the Jenkins experts. • VMware scale your Jenkins environment. • Enterprise Features extend Jenkins for
large environments. • Integrate with the Cloud integraEon with
DEV@Cloud and RUN@Cloud coming
27
GA in January • ConEnuous integraEon based on
Jenkins – Jenkins as a Service – On-‐demand Jenkins build agents paid by-‐the-‐minute
• Private code repository (SVN, GIT) • Private Maven repositories & proxy • Grand Central management console • Support infrastructure • Runs on AWS
CloudBees DEV@cloud Features
©2011 Cloud Bees, Inc. All Rights Reserved
CPU scaling of the Cloud for group development and tesEng. Natural integraEon point for most development-‐related acEviEes. (Independent on-‐premise Jenkins offering available under the Nectar brand)
28
DEV@cloud Demo
©2011 CloudBees, Inc. All Rights Reserved
• ConEnuous Deployment • CloudBees Eclipse Plugins
29
• CloudBees Resources Page – http://www.cloudbees.com/support.cb
• Try DEV@Cloud & RUN@cloud – https://grandcentral.cloudbees.com/account/signup
• CloudBees Eclipse Plugin – http://cloudbees.com/eclipse-plugin.cb
CloudBees Resources
©2011 CloudBees, Inc. All Rights Reserved
30 ©2011 Cloud Bees, Inc. All Rights Reserved
Parting Thoughts…
Today: Developers build, IT deploys and manages. Extra layers to support the Cloud.
Extra IT
With CloudBees: Develop & Run entirely in the Cloud.
Build. Test. Run.
No IT