Stratos and PaaS for London Java Community


Published on

The presentation on WSO2 Stratos and PaaS I gave the London Java Community

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Tutorial: Platform as a service is exposed to its users as a familiar middleware service, but below the "surface," there are layers of cloud-specific technology that deliver the scalability, availability, elasticity and self-service that are essential to the cloud computing experience. Platform as a service is middleware "in the sky." Although offered as a service, its functional role remains the role of the middleware — platform, integration or other middleware type. Because there are different types of middleware offerings (application servers, integration brokers [ESBs], business process management suites [BPMSs], portal products, messaging products, etc.), each can also be delivered as a service. In some cases, these middleware services are delivered stand-alone as specialized PaaS services (StormMQ is a specialist messaging service). More often, the same cloud service provider offers multiple middleware services to meet the requirements of real-world projects ( includes services of a DBMS, an application server and an application development tool). Over time, most PaaS providers will aim to deliver a growing set of middleware functions. To be implemented as a cloud service, a PaaS service must not only deliver its middleware functionality, but also possess the features that make it cloud-worthy (the cloud performance foundation) and cloud-enabled (cloud behavior foundation). The cloud performance foundation is responsible for scalability and availability to match the potential demand of the global cloud user base. The cloud behavior foundation delivers resource sharing, multitenancy, elasticity, self-service and other characteristics expected of a cloud service. The common, shared development and management environments complete the picture of a well-designed PaaS platform, whether it offers only a few middleware services or is a comprehensive end-to-end PaaS.
  • Stratos and PaaS for London Java Community

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