Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Stratos Open PaaS OSCON 2011

6,147 views

Published on

My OSCON 11 presentation on Stratos

Published in: Technology

Stratos Open PaaS OSCON 2011

  1.      WSO2  Stratos  –  Open  Source  Public  and   Private  PaaS       Paul  Fremantle   CTO  and  Co-­‐Founder   www.wso2.com     paul@wso2.com   #pzfreo    
  2. Paul  Fremantle  •  Working  in  Apache  since  2002  •  Apache  Member  and  Commi8er  •  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  
  3. What  should  you  take  away  from  this  presentaEon?  •  What  is  Stratos?  •  Why  is  an  Open  PaaS  important?  •  How  can  I  try  out  Stratos?   –  On  the  Web?   –  On  your  machine?  •  What  services  does  Stratos  provide?  •  Where  can  you  get  more  informaRon?   3  
  4. 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  applicaRons   –  A  reasonable  conclusion  is  that  the  number  of   applicaRons  will  double  every  15  months  too  
  5. PaaS  is  hot   5  
  6. Why  is  PaaS  hot?   6  
  7. Stratos  Overview  •  Stratos  –  an  Open  Source  project  /  product   –  A  full  middleware  plaorm  available  as  a  service,  with   self  service   •  Fast  provisioning   –  Based  on  OSGi   •  Modular,  componenRzed,  standard     –  MulR-­‐tenant,  ElasRc,  Metered  and  Billed   •  EffecRve  and  powerful   –  Available  under  the  Apache  License   •  Open  Source,  Open  License,  Open  Development  •  StratosLive  –  a  Plaorm-­‐as-­‐a-­‐Service   –  Stratos  running  in  the  cloud  with  various  plans   •  Including  a  free  demo  plan  
  8. Stratos  resources  •  Running  on  the  web     –  h8p://stratoslive.wso2.com    •  Stratos  SVN   –  h8p://svn.wso2.org/repos/wso2/trunk/stratos/  •  Stratos-­‐dev  list   –  h8ps://mail.wso2.org/cgi-­‐bin/mailman/lisRnfo/stratos-­‐ dev  •  Blog  on  how  to  build  /  install   –  h8p://yumani.blogspot.com/2011/06/sedng-­‐up-­‐wso2-­‐ stratos-­‐in-­‐personal.html     8  
  9. InstallaEon  opEons  •  1.  Full  installaRon  (like  StratosLive)   –  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  (on  my  laptop)   –  Pre-­‐reqs   •  A  machine  with  lots  of  memory  (4Gb  min,  8GB   preferred)     •  JVM   •  MySQL  &  Perl     9  
  10. InstallaEon  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     10  
  11. Deploy  a  webapp   h8p://stratoslive.wso2.com     11  
  12. Isn’t  something  missing?  •  APIs  and  Services  •  You  can’t  just  run  a  webapp  •  You  need:   –  Data   –  Messaging   –  Logging   –  What  else?   12  
  13. JDBC  in  Stratos   13  
  14. Cassandra  in  Stratos   14  
  15. Hector  API      /**        *  Insert  a  new  value  keyed  by  key        *  @param  key  Key  for  the  value        *  @param  value  the  String  value  to  insert        */      public  void  insert(final  String  key,  final  String  value)  throws  ExcepRon  {          execute(new  Command(){              public  Void  execute(final  Keyspace  ks)  throws  ExcepRon  {                  ks.insert(key,  createColumnPath(COLUMN_NAME),  bytes(value));                  return  null;              }          });      }       15  
  16. What  are  the  dimensions  to  evaluate  a  PaaS?  •  Which  languages  and  APIs  does  it  support?   –  (Are  you  locked  in?)  •  Is  it  available  to  run  on  a  private  cloud?   –  (Are  you  locked  in?)  •  Which  services  does  it  offer?   –  (Are  you  locked  in?)  •  Is  it  Open  Source?   –  (Are  you  locked  in?!)   16  
  17. Who  are  the  other  players  in  the  PaaS  market?  •  Those  without  a  Private  PaaS   –  Force.com  and  Heroku   –  Google  App  Engine   –  Amazon  ElasRc  Beanstalk  •  Those  with  a  Private  /  Public  PaaS   –  Tibco   –  Microsox  •  Those  with  an  Open  Private  /  Public  PaaS   –  SpringSource  CloudFoundry     –  WSO2  Stratos   17  
  18. Available  Services  in  Stratos    (a  selecEon)   18  
  19. Available  Services  (low  level)  •  MulR-­‐tenancy  •  Deployment  synchronizer  •  ElasRc  Load  Balancer     –  tenant-­‐aware  •  Tenant-­‐aware  idenRty  manager   –  SAML2,  OpenId,  Oauth,  XACML  •  Tenant  Metering  and  Billing  •  Discovery  •  Logging  •  ConfiguraRon  &  Repository  •  Data-­‐as-­‐a-­‐Service  •  Queueing-­‐as-­‐a-­‐Service  •  Health  Monitor  •  Private  /  Public  Cloud  bridging   19  
  20. Every  Service  has  a  network  API  •  All  admin  funcRons  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  integraRon   –  Automated  provisioning   –  Support  hybrid  mulE-­‐tenancy  models  for  legacy   soVware   20  
  21. MulE-­‐tenancy  •  Every  service  can  support  mulRple  tenants  in  the  same   container   –  Higher  efficiency,  lower  resources   –  Can  be  split  tenant  per-­‐VM  using  the  MT-­‐aware  Load  Balancer  •  IsolaRon  includes  classloaders,  code  signing  and  Java   security  policies   –  Cross-­‐tenant  sharing  is  via  the  network  (REST,  SOAP,  etc)  •  Every  tenant  has  all  services  by  default  but  they  can  be   turned  off  •  You  can  deploy  webapps  that  are  available  to  all  tenants   21  
  22. Stratos  1.5.1  Services     ©  WSO2  2011    
  23. InstallaEon  opEons  •  1.  Full  installaRon   –  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     23  
  24. InstallaEon  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     24  
  25. Examples  and  Case  Studies  •  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   –  CombinaRon  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  applicaRons    
  26. Stratos  1.5.1  launched    •  StratosLive  GA  producRon  •  Stratos  1.5.1  available  18th  July  2011  •  Full  producRon  SLAs  for  StratosLive  customers  •  New  features  for  Stratos:   –  Google  Apps  integraRon   –  Data-­‐as-­‐a-­‐Service   –  Distributed  mulR-­‐tenant  logging   –  Cloud  Service  Gateway  (hybrid  cloud  bridging)   –  Billing  and  Metering  (including  Paypal  integraRon)     ©  WSO2  2011    
  27. Beyond  Stratos  1.x  •  SimplificaRon  of  the  Cloud  Programming  model   –  DSLs  for  Data  definiRon,  appdev  (including  mobile)  and  integraRon  •  Mobile   –  Working  to  provide  Mobile  PaaS    •  VerRcal  industry  iniRaRves     –  E.g.  FIX/HL7  in  the  Cloud  •  End-­‐to-­‐end  automated  governance  and  development  •  Pure  VM  deployment  and  management  •  Super-­‐scale  shared  nothing   –  Based  on  NoSQL  Cassandra  and  elasRc  load  balancer   –  MulR-­‐tenant  HDFS-­‐as-­‐a-­‐Service     ©  WSO2  2011    
  28. What  to  take  away  with  you  •  Look  at  the  lock-­‐in  points  •  What  services  do  you  need  now,  and  in  the   future  •  Try  some  out  PaaS’s  now  •  Even  if  its  too  early  for  your  main   producRon,  it  might  suit  some  part  of  your   deployment   h8p://stratoslive.wso2.com       28  
  29. QuesEons?   h8p://www.flickr.com/photos/oberazzi/   29  

×