Building an Enterprise Cloud with WSO2 Private PaaS

32
Enterprise Cloud with WSO2 Private PaaS Pradeep Fernando Associate Technical Lead, WSO2 Inc. 06 th Feb 2014

description

 

Transcript of Building an Enterprise Cloud with WSO2 Private PaaS

Page 1: Building an Enterprise Cloud with WSO2 Private PaaS

Enterprise  Cloud  with  WSO2  Private  PaaS  

Pradeep  Fernando  Associate  Technical  Lead,  WSO2  Inc.  

06th  Feb  2014  

Page 2: Building an Enterprise Cloud with WSO2 Private PaaS

2  

About  the  Presenter  

๏  Pradeep  Fernando  

๏  WSO2  Carbon    

๏  CommiFer  and  PPMC  at  Apache  Stratos(IncubaIng)  

๏  Experience  in  enterprise  integraIon  

Page 3: Building an Enterprise Cloud with WSO2 Private PaaS

3  

About  WSO2  ๏  Global  enterprise,  founded  in  2005  by  

acknowledged  leaders  in  XML,  web  services    technologies,  standards    and  open  source  

๏  Provides  only  open  source  plaTorm-­‐as-­‐a-­‐service  for  private,  public  and  hybrid  cloud  deployments  

๏  All  WSO2  products  are  100%  open  source  and  released  under  the  Apache  License  Version  2.0.  

๏  Is  an  AcIve  Member  of  OASIS,  Cloud  Security  Alliance,  OSGi  Alliance,  AMQP  Working  Group,  OpenID  FoundaIon  and  W3C.  

๏  Driven  by  InnovaIon  

๏  Launched  first  open  source  API  Management  soluIon  in  2012  

๏  Launched  App  Factory  in  2Q  2013  

๏  Launched  Enterprise  Store  and  first  open  source  Mobile  soluIon  in  4Q  2013  

Page 4: Building an Enterprise Cloud with WSO2 Private PaaS

4  

What  WSO2  delivers  

Page 5: Building an Enterprise Cloud with WSO2 Private PaaS

Todays  Webinar…  

๏  What/Why  is  PlaTorm  as  a  Service  (PaaS)  

๏  Understanding  the  WSO2  private  PaaS  architecture  

๏  Auto  scaling  and  deployment  policies  

๏  Cloud  bursIng  

๏  Towards  your  very  own  enterprise  cloud  

Page 6: Building an Enterprise Cloud with WSO2 Private PaaS

Why  you  need  a  PaaS  

๏  OrganizaIon  wide  visibility  through  monitoring/billing  and  metering  

๏  Provision  allowed  applicaIon  types  within  minutes  

๏  Let  the  PaaS  worry  about  auto  scaling  of  your  applicaIon  

๏  Build  your  own  service  plaTorm  on  top  the  PaaS.    

6  

Page 7: Building an Enterprise Cloud with WSO2 Private PaaS

At  the  Very  Heart  of  PaaS  ๏  Create  a  VM  image  that  runs  on  a  specific  IaaS    

๏  This  image  contains  the  applicaIon  you  want  to  run  –  e.g.:  Tomcat  

๏  When  you  subscribes  the  PaaS  will  spawn  an  instance  from  that  image  

๏  It  will  assign  a  load  balancer  and  gives  you’re  an  IP  to  access  

๏  When  the  load  increases  the  PaaS  will  spawn  another  instance  and  assign  it  to  the  same  load  balancer  

 

Page 8: Building an Enterprise Cloud with WSO2 Private PaaS

What  is  WSO2  Private  PaaS  

๏  Based  on  Apache  Stratos(IncubaIng)  

๏  Provides  WSO2  Carbon  servers  as  cartridges  

๏  Instance  level  mulI-­‐tenancy  

๏  Closely  integrates  with  the  Stratos  tenants  

๏  Billing  and  metering  

๏  Centralized  Log  processing  

 8  

Page 9: Building an Enterprise Cloud with WSO2 Private PaaS

Why  WSO2  PaaS  

9  

Page 10: Building an Enterprise Cloud with WSO2 Private PaaS

Extensible  via  Cartridges/Polyglot  

๏  We  ship  number  of  cartridge  types  

๏  WriIng  a  new  one  is  trivial  

๏  Load  balancer  itself  can  be  a  cartridge  

๏  Plug-­‐in  your  own  load  balancer  

10  

Page 11: Building an Enterprise Cloud with WSO2 Private PaaS

Auto  Scaling    

๏  Set  you  scaling  parameters  

๏  Write  scaling  rules  using  a  policy  language  

๏  Or  use  the  default  ones  

๏  Watch  your  applicaIon  scales  

11  

Page 12: Building an Enterprise Cloud with WSO2 Private PaaS

Supports  number  IaaS  es/Polyhost  

๏  WSO2  private  PaaS  support  number  of  IaaS  es.  

๏  EC2,  OpenStack,  Vcloud  to  name  a  few  

 

12  

Page 13: Building an Enterprise Cloud with WSO2 Private PaaS

Cloud  BursIng  

๏  Enterprises  do  capacity  planning  

๏  AllocaIng  resources  generously  would  solve  the  issue,  but  not  the  most  wisest  of  soluIons.  

๏  It  is  possible  to  extend  the  my  private  cloud  to  protected  public  cloud  infrastructure  (IaaS)  

 

13  

Page 14: Building an Enterprise Cloud with WSO2 Private PaaS

Make  the  Most  out  of  MulI-­‐tenancy  

๏  PaaS  level  tenancy  

๏  Tenancy  at  the  container  level  –  LXCs  and  VM  instances  

๏  Tenancy  at  the  applicaIon  level  –  mulI-­‐tenant  cartridges  

๏  One  tenant  model  across  the  plaTorm  

14  

Page 15: Building an Enterprise Cloud with WSO2 Private PaaS

Orchestrate  using  puppet  

๏  A  base  VM  image  gets  provisioned  by  puppet  

๏  All  the  default  shipped  Cartridges  are  provisioned  using  puppet  

๏  Push  updates  and  applicaIon  patches    

 

 

15  

Page 16: Building an Enterprise Cloud with WSO2 Private PaaS

The  REST  API  

๏  REST  API  

๏  Use  Curl  to  perform  operaIons  

๏  Use  the  CLI  tool  

๏  Use  the  web-­‐based  management  console  

16  

Page 17: Building an Enterprise Cloud with WSO2 Private PaaS

The  API  

17  

Page 18: Building an Enterprise Cloud with WSO2 Private PaaS

Architecture  

18  

Page 19: Building an Enterprise Cloud with WSO2 Private PaaS

Architecture  101  

19  

Page 20: Building an Enterprise Cloud with WSO2 Private PaaS

Architecture  101  

๏  JCloud  abstracIon  for  IaaS  es.  

๏  Common  bus  –  Any  JMS  compaIble  message  broker.  WSO2  MB  is  preferred  

๏  Plug  in  your  own  load  balancer  –  Stratos  LB  and  HA  Proxy  supported  at  the  moment.  

๏  Cartridges  are  VM  images  that  runs  on  an  IaaS.  

20  

Page 21: Building an Enterprise Cloud with WSO2 Private PaaS

Architecture  101  

21  

Page 22: Building an Enterprise Cloud with WSO2 Private PaaS

Cartridges    ๏  Bring  your  applicaIon  to  cloud  

๏  Can  be  a  applicaIon  cartridge/  framework  cartridge  such  as  tomcat  

๏  Cartridge  is  dependent  on  the  underlying  IaaS  

๏  Actual  unit  of  execuIon  

22  

Host OS

VM Cartridge

LXC Cartridge

Stratos Agent

Stratos Agent Guest OS

Application/Framework

Application/Framework

Page 23: Building an Enterprise Cloud with WSO2 Private PaaS

Auto  scaling  

๏  Make  use  of  real  Ime  events    

๏  Policy  language  to  define  scaling  rules  

๏  Bring  in  your  own  scaling  factor  to  the  framework  –  no  code  changes  required  

๏  Deployment  policies  –  where  to  spawn  my  instance  

23  

Page 24: Building an Enterprise Cloud with WSO2 Private PaaS

Auto  Scaling  

๏  WSO2  CEP  as  the  event  aggregator  

๏  All  the  enIIes  publish  their  runIme  events  to  CEP  

๏  CEP  aggregates  them  and  coarse  grained  events  get  pushed  in  to  auto  scalar  

๏  Auto  scaling  rules  act  upon  them.  

24  

Page 25: Building an Enterprise Cloud with WSO2 Private PaaS

Cloud  BursIng  

๏  Way  of  defining  deployment  policies  

๏  Spawn  new  instances  in  public  IaaS  only  if  run  out  of  on  premise  resources    

๏  Good  for  seasonal  load  handling  

25  

Page 26: Building an Enterprise Cloud with WSO2 Private PaaS

How  You  can  Extend  the  WSO2  PaaS  

๏  Bring  in  your  own  cartridge  types  

๏  Deploy  over  your  preferred  IaaS      

๏  Write  agents  that  publish  your  very  own  scaling  parameters  

๏  Write  scaling  rules  and  CEP  rules  

26  

Page 27: Building an Enterprise Cloud with WSO2 Private PaaS

Mix  and  Match  

๏  Use  your  preferred  message  broker  

๏  Bring  in  your  own  event  processor  

๏  Plug  your  own  load  balancer  

๏  Integrate  to  your  own  dashboards  

27  

Page 28: Building an Enterprise Cloud with WSO2 Private PaaS

Cartridges  –  4  Types  

๏  ApplicaIon    :  WordPress  ,  Drupal  

๏  Framework  –  PHP,  Tomcat,  JBoss  AS,  Node  

๏  Data  -­‐  MySQL  

๏  Load  balancer  –  HA  proxy,  WSO2  ELB  

Come  up  with  your  own  cartridge,  its  not  difficult…  

28  

Page 29: Building an Enterprise Cloud with WSO2 Private PaaS

We  are  working  on…  ๏  Composite  applicaIons  –  dependency  

among  cartridges  

๏  First  Class  LXC  support    

๏  SimulaIon  environment  based  on  LXC  s.  

๏  More  control  over  IaaS  assigned  IPs  

๏  More  control  over  instance  spin  up  locaIon  –  depends  on  the  underlying  IaaS  

๏  MulIple  network  interfaces  for  cartridge  instances  

29  

Page 30: Building an Enterprise Cloud with WSO2 Private PaaS

QuesIons??  

30  

Page 31: Building an Enterprise Cloud with WSO2 Private PaaS

31  

Business  Model  

Page 32: Building an Enterprise Cloud with WSO2 Private PaaS

Contact  us  !