stratos and paas for london java community
DESCRIPTION
The presentation on WSO2 Stratos and PaaS I gave the London Java CommunityTRANSCRIPT
Platform-as-a-Serviceand WSO2 Stratos
Paul FremantleCTO and Co-Founder
www.wso2.com
[email protected]#pzfreo
Paul Fremantle
• Working in Apache since 2002• Apache Member and Committer• CTO and Co-Founder of WSO2• VP, Apache Synapse• 10 years at IBM ending as STSM
in WebSphere Development– Led the IBM Web Services Gateway
team
• I also play the Tin Whistle
@tedleung
Moore’s Law for Data
• The amount of data online went from– 5 exabytes in 2002– 281 exabytes in 2009
• Doubling every 15 months
• You cannot deal with this data growth with the same applications– A reasonable conclusion is that the number of
applications will double every 15 months too
Cloud Native Attributes
• http://bit.ly/CloudNative• Core Attributes
– Self-service– Multi-tenant– Distributed / Scalable– Elastically / Dynamically Scaled– Metered
• Extended attributes– Incrementally Deployable and testable– Billed– Dynamically wired
4
http://www.flickr.com/photos/ladymaggic/
http://www.flickr.com/photos/jurvetson/
Gartner Reference Model for Platform as a Service
Hardware
Integrated PaaS Platform Management, Monitoring, Governance,Provisioning
System Infrastructure or System Infrastructure Services (IaaS)
PaaS Service Offerings
PaaS Technology Core
Cloud Performance Foundation
Cloud Value Foundation(Shared Resources, Multitenancy, Self-Service, Elasticity, Real-Time Versioning, Metadata Management, Subscription/Use Billing)
(In-Memory Computing, Grid/Massive Scale, Auto-Scaling, SLA Enforcement, Use Tracking, High Availability, Security, Data Integrity, Parallel Processing)
Integrated PaaS Application Modeling, Design, Development, Maintenance, Life Cycle Management
Applications
PaaS
IaaS
SaaS
Application Platform
Integration Platform
Business Process Management Platform
Cloud Database Platform
OtherUser Experience Platform
Shared what?
• Shared Nothing • Shared Hardware• Shared Database • Shared OS• Shared Container• Shared Everything
8
Central Limit Theorem
Cloud Middleware Platform and PaaS
• A PaaS requires an underlying software base– Cloud Middleware Platform (CMP), or – Cloud Enabled Application Platform (CEAP – Gartner)– “Private PaaS” / On Premise PaaS
• Not all PaaS have redistributable CMPs• The benefit of having a CMP is choice:
– Run your own PaaS in a private cloud– More than one PaaS provider
• Open PaaS / Open CMP fights lock-in
11
Carbon and Stratos
Single-tenant Multi-tenant
On premise deployment WSO2 Carbon products WSO2 Stratos
Cloud / Elastic deployment WSO2 Carbon Cloud Images WSO2 StratosLive
Shared CodebaseOpen Source Apache License
Open Development
12
One Enterprise Platform wherever you need it:
WSO2 Carbon
On Premise:•In Production at Fortune 1000 companies•Handling 1bn transactions/day•The only modular open source middleware stack•Everything you need to build Enterprise Applications•From Core Logic to Mobile Apps
WSO2 Stratos
In Private Cloud:•A single managed platform•Elastic, Self-Service, Multi-tenant•Accelerates your private cloud beyond virtual machines to provide real Enterprise Cloud Services•Use only what you need
WSO2 StratosLive
As a Service in the Public Cloud:•We manage, run and maintain your application platform•Complete Pay as you Use•ESB-as-a-Service•Governance-as-a-Service•Identity-as-a-Service•With appropriate SLAs and simple monthly billing
• A single code continuum• Completely modular based on OSGi• Complete Enterprise SOA Architecture:
• AppServer, ESB, Governance, Portal, BPMS, BAM, Identity and more• Supported 24x7 with phone, web and full SLAs
Stratos Overview
• A full middleware platform available as a service, with self service– Fast provisioning
• Based on OSGi– Modular, componentized, standard
• Multi-tenant, Elastic, Metered and Billed– Effective and powerful
• Available under the Apache License– Open Source, Open License, Open Development
Stratos resources
• Stratos SVN– http://svn.wso2.org/repos/wso2/trunk/stratos/
• Stratos-dev list– https://mail.wso2.org/cgi-bin/mailman/listinfo/
stratos-dev• Blog on how to build / install
– http://yumani.blogspot.com/2011/06/setting-up-wso2-stratos-in-personal.html
15
Stratos and StratosLive Timeline
• Stratos is the code/product, StratosLive is the service
• April 2010– Stratos alpha release– StratosLive alpha
• November 2010– Stratos 1.0 Gold– StratosLive 1.0 beta
• July 2011– Stratos 1.5.1– StratosLive GA
© WSO2 2011
StratosLive
1.0 codebase Beta http://cloud.wso2.com 1.5 codebase GA http://stratoslive.wso2.com
(warning we are just going live on Monday 18th!)
17
Installation options• 1. Full installation
– Pre-reqs• IaaS – Eucalyptus, vmWare, Ubuntu or Amazon• MySQL & Perl & JVM• Ability to run a number of VMs (one per service)
• 2. Laptop/Simple install– Pre-reqs
• A machine with lots of memory (4Gb min, 8GB preferred)
• JVM• MySQL & Perl
18
Installation of Stratos 1.5.1 pack
• Config mysql– max_allowed_packet = 16M
• ulimit –n 65000• Unzip the distro• cd stratos• ./stratos-setup.pl• export STRATOS_DIR=`pwd`/deploy• cd deploy• ./stratos.sh start all
19
Who are the players in the PaaS market?• Those without a Private PaaS
– Force.com– Heroku– Google App Engine– Amazon Elastic Beanstalk
• Those with a Private / Public PaaS– Tibco– Microsoft (nearly)
• Those with an Open Private / Public PaaS– SpringSource CloudFoundry – WSO2 Stratos
20
Available Services (low level)• Multi-tenancy• Deployment synchronizer• Elastic Load Balancer
– tenant-aware• Tenant-aware identity manager
– SAML2, OpenId, Oauth, XACML• Tenant Metering and Billing• Discovery• Logging• Configuration & Repository• Data-as-a-Service• Queueing-as-a-Service• Health Monitor• Private / Public Cloud bridging
21
Every Service has a network API
• All admin functions and all the low level services are available as SOAP APIs– Full SOAP support, REST in some cases– Always possible to bridge into REST using the ESB
• Why?– Clear SOA design
• Allow mashups, BPEL and ESB integration– Automated provisioning– Support hybrid multi-tenancy models for legacy
software
22
Available Services (mid-level)• Application Server
– Webapp deployment • Multi-tenant deployment of Tomcat 7
– Service Deployment • Axis2, JAXWS, POJO, Spring
– Transaction Manager– SaaS deployment model
• Portal Server– Based on the OpenSocial/Google Gadget spec– Gadget repository and strong personalization features– SAML2 and OpenId Single Sign-on
• Data Services• Enterprise Service Bus
– Full multi-tenant deployment of Apache Synapse• Governance Registry
– Governance-as-a-Service model
23
Available Services (high-level)
• Business Process Manager– Full BPEL runtime in the cloud– Human Task support
• Business Rules Server• Complex Event Processing• Business Activity Monitoring
24
Case Studies (in progress)
• System Integrator– Currently running Stratos for internal projects– Examining the use of Stratos for customer projects and SaaS
• Home Loan Bank– WSO2 runs a private deployment of Stratos– Developer sandbox and test environment– Currently apps are then deployed internally in Carbon
• Niche PaaS– Combination of cross tenant services / APIs– Allow each tenant to deploy / customise the logic
• Mobile PaaS– Building a PaaS environment for a mobile telco
• SaaS-enablement of legacy applications
Futures
• SLA management and Priority Execution• Better thread/CPU management and
instrumentation• HDFS support• VM deployment• End-to-end development lifecycle
integration (Maven, SVN, Hudson/Jenkins, Junit)
Still time to Register! http://freo.me/mSBIOX
27
Questions?
28
http://www.flickr.com/photos/oberazzi/