SlideShare a Scribd company logo
1 of 42
Download to read offline
PaaS	
  Design	
  and	
  Architecture:	
  	
  
A	
  Deep	
  Dive	
  into	
  	
  
Apache	
  Stratos	
  
Samisa	
  Abeysinghe	
  
VP	
  Delivery,	
  WSO2	
  	
  
Member	
  Apache	
  So<ware	
  FoundaAon	
  
	
  
11th	
  June	
  2014	
  
	
  
	
  
What	
  is	
  Apache	
  Stratos	
  ?	
  
●  A	
  Pla'orm-­‐as-­‐a-­‐Service	
  (PaaS)	
  Framework	
  from	
  Apache	
  
Community	
  
●  Ini@ally	
  developed	
  and	
  maintained	
  by	
  WSO2	
  
●  Donated	
  to	
  Apache	
  SoGware	
  Founda@on	
  
●  Evolved	
  within	
  the	
  Apache	
  Community	
  for	
  nearly	
  a	
  year	
  
●  Significantly	
  re-­‐architected	
  and	
  improved	
  in	
  Apache	
  
●  Graduated	
  to	
  an	
  Apache	
  TLP	
  last	
  month	
  (May	
  2014)	
  	
  
What	
  does	
  it	
  Do?	
  
●  Elas@c	
  scalability	
  for	
  any	
  type	
  of	
  service	
  using	
  underlying	
  
infrastructure	
  cloud	
  
●  Managing	
  logging	
  and	
  metering	
  for	
  services	
  
●  Provides	
  founda@on	
  services	
  
●  User	
  management	
  
●  Storage	
  
●  Billing	
  	
  
Topics	
  Covered	
  
●  Architecture	
  	
  
●  Scalable	
  and	
  dynamic	
  load	
  balancing	
  
●  Mul@-­‐factored	
  auto	
  scaling	
  	
  
●  Controlling	
  IaaS	
  resources	
  
●  Smart	
  policies	
  	
  
●  Mul@-­‐tenancy	
  	
  
●  Cloud	
  burs@ng	
  	
  
●  Logging,	
  metering	
  and	
  monitoring	
  	
  	
  	
  
Architecture	
  
*	
  
Apache	
  Stratos	
  Layered	
  Architecture	
  
Stratos Architecture	
  
Stratos
Controller	
  
IaaS	
  Integra?on	
  with	
  jclouds	
  	
  
Services	
  
Real	
  Time	
  Event	
  Bus	
  
*	
  
Apache	
  Stratos	
  Message	
  Flows	
  
Founda?on	
  Services	
  
Stratos Architecture	
  
*	
  
Why	
  is	
  this	
  architecture	
  so	
  important?	
  
๏  Unified	
  communica@on	
  across	
  components	
  in	
  the	
  PaaS	
  
using	
  message	
  broker	
  	
  
๏  Ability	
  to	
  plugin	
  any	
  third	
  party	
  load	
  balancer	
  using	
  message	
  
broker	
  model	
  
๏  A	
  real	
  @me	
  event	
  bus	
  to	
  capture	
  and	
  process	
  complex	
  
events	
  	
  
๏  Centralized	
  monitoring	
  and	
  metering	
  with	
  unified	
  
logging	
  framework	
  
๏  Ability	
  to	
  plugin	
  any	
  third	
  party	
  health	
  checking/monitoring	
  
framework	
  
๏  Ability	
  to	
  plugin	
  any	
  IaaS	
  due	
  to	
  the	
  use	
  of	
  jclouds	
  API	
  
๏  Cartridge	
  model	
  enable	
  bringing	
  in	
  even	
  legacy	
  apps	
  
into	
  cloud	
  as	
  service	
  nodes	
  	
  
	
  
Architecture	
  Advantages	
  	
  
Stratos	
  Cartridges	
  
Not only Web Oriented: e.g. Can Scale Thrift Services
Scalable	
  and	
  Dynamic	
  	
  
Load	
  Balancing	
  
*	
  
How	
  Scalable	
  it	
  is?	
  
๏  In	
  theory	
  infinite	
  
	
  -­‐	
  horizontal	
  scaling	
  
	
  -­‐	
  limited	
  by	
  resource	
  (instance	
  capacity)	
  availability	
  
	
  
How	
  Dynamic	
  it	
  is?	
  
๏  Load	
  Balancers	
  are	
  spawned	
  dynamically	
  
	
  -­‐	
  LB	
  too	
  is	
  a	
  cartridge	
  
๏  In	
  case	
  of	
  mul@-­‐cloud,	
  mul@-­‐region,	
  LB	
  can	
  scale	
  per	
  
cloud/region	
  
๏  Per	
  service	
  cluster	
  LB	
  
Scalable	
  and	
  Dynamic	
  Load	
  Balancing	
  
*	
  
What	
  is	
  unique	
  about	
  Stratos	
  
๏  Cartridge	
  based	
  LB	
  model	
  
๏  Can	
  bring	
  any	
  third-­‐party	
  LB	
  
	
  -­‐	
  HAProxy,	
  nginx,	
  AWS	
  ELB	
  
	
  -­‐	
  As	
  easy	
  as	
  plugging	
  into	
  LB	
  extension	
  API	
  
Scalable	
  and	
  Dynamic	
  Load	
  Balancing..	
  
*	
  
Scalable	
  and	
  Dynamic	
  Load	
  Balancing..	
  
Mul;-­‐Factored	
  Auto	
  Scaling	
  
*	
  
What	
  is	
  it?	
  
๏  Scaling	
  algorithm	
  can	
  use	
  mul@ple	
  factors.	
  such	
  as	
  
	
  -­‐	
  Load	
  average	
  of	
  the	
  instance	
  
	
  -­‐	
  Memory	
  consump@on	
  of	
  the	
  instance	
  
	
  -­‐	
  In-­‐flight	
  request	
  count	
  in	
  LB	
  
	
  
๏  Capable	
  of	
  predic@ng	
  future	
  load	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  -­‐	
  Real	
  @me	
  analysis	
  of	
  current	
  load	
  status	
  using	
  CEP	
  	
  
	
  	
  	
  integra@on	
  
-­‐	
  Predict	
  immediate	
  future	
  load	
  based	
  on	
  CEP	
  	
  
	
  	
  	
  resul@ng	
  streams	
  	
  
-­‐	
  Predic@ng	
  equa@on	
  s=ut	
  +	
  ½	
  at2	
  
-­‐	
  s=predicted	
  load,	
  u=first	
  deriva@ve	
  of	
  current	
  	
  
	
  	
  average	
  load,	
  t=	
  @me	
  interval	
  ,	
  a=second	
  deriva@ve	
  
	
  	
  of	
  current	
  load	
  
	
  
Mul?-­‐factored	
  Auto	
  Scaling	
  
*	
  
Why	
  should	
  one	
  care?	
  
๏  Maximise	
  resource	
  u@liza@on	
  
๏  Easy	
  to	
  do	
  capacity	
  planning	
  
๏  Dynamic	
  load	
  based	
  resource	
  provisioning	
  
๏  Op@mizing	
  across	
  mul@ple	
  clouds	
  
What	
  are	
  the	
  advantages?	
  
๏  Make	
  DevOps	
  life	
  easy	
  
๏  More	
  accurate	
  capacity	
  planning	
  
Mul?-­‐factored	
  Auto	
  Scaling...	
  
*	
  
Mul?-­‐factored	
  Auto	
  Scaling...	
  
Controlling	
  IaaS	
  Resources	
  	
  
*	
  
What	
  is	
  a	
  Par??on?	
  
๏  Logically	
  group	
  IaaS	
  resource	
  loca@ons	
  
๏  Par@@ons	
  are	
  important	
  to	
  make	
  applica@on	
  high	
  
availability	
  
๏  Cartridge	
  instances	
  are	
  spawned	
  inside	
  these	
  par@@ons	
  
๏  Par@@ons	
  are	
  defined	
  by	
  DevOps	
  
What	
  is	
  a	
  network	
  par??on?	
  
๏  Logical	
  groups	
  mul@ple	
  par@@ons,	
  that	
  are	
  in	
  the	
  same	
  
network	
  
๏  Stratos	
  will	
  spawn	
  Load	
  Balancers	
  per	
  network	
  par@@on	
  
๏  Since	
  LB	
  instances	
  and	
  cartridge	
  instances	
  reside	
  in	
  
same	
  network,	
  they	
  can	
  communicate	
  using	
  private	
  IP	
  
addresses	
  
๏  Used	
  in	
  deployment	
  policies	
  
	
  
Controlling	
  IaaS	
  Resources	
  
*	
  
What	
  are	
  the	
  advantages?	
  
๏  Can	
  control	
  
๏  per	
  cloud,	
  per	
  region,	
  per	
  zone,	
  ...etc	
  
๏  Can	
  achieve	
  high	
  availability,	
  disaster	
  recovery	
  
๏  Help	
  for	
  cloud	
  SLA	
  
๏  Control	
  the	
  resource	
  u@liza@on	
  
๏  Help	
  with	
  geo	
  based	
  deployments	
  
๏  help	
  comply	
  with	
  geo	
  rules/regula@ons	
  
Controlling	
  IaaS	
  Resources	
  
Smart	
  Policies	
  	
  
*	
  
What	
  are	
  the	
  smart	
  policies?	
  
๏  Auto	
  scaling	
  
๏  Deployment	
  
Auto	
  scaling	
  policy	
  
๏  Define	
  thresholds	
  values	
  pertaining	
  scale	
  up/down	
  
decision	
  	
  
๏  Auto	
  Scaler	
  refer	
  this	
  policy	
  
๏  Defined	
  by	
  DevOps	
  
Deployment	
  policy	
  
๏  Defined	
  how	
  and	
  where	
  to	
  spawn	
  cartridge	
  instances	
  
๏  Defined	
  min	
  and	
  max	
  instances	
  in	
  a	
  selected	
  service	
  
cluster	
  
๏  Defined	
  by	
  DevOps	
  based	
  on	
  deployment	
  paaerns	
  
	
  
Smart	
  Policies	
  
*	
  
Why	
  should	
  one	
  care?	
  
๏  Can	
  provide	
  cloud	
  SLA	
  
	
  
What	
  are	
  the	
  advantages?	
  
๏  Make	
  DevOps	
  life	
  easy	
  
	
  -­‐	
  Help	
  keep	
  to	
  SLA	
  
๏  Make	
  SaaS	
  app	
  delivery	
  life	
  easy	
  
	
  -­‐	
  Do	
  not	
  have	
  to	
  worry	
  about	
  availability	
  in	
  
applica@on	
  layer	
  	
  
	
  
Smart	
  Policies	
  
Mul;-­‐Tenancy	
  	
  
*	
  
What	
  MT	
  model	
  does	
  it	
  support?	
  
๏  Container	
  MT	
  
	
  -­‐	
  virtual	
  Machine,	
  LXC,	
  Docker	
  
๏  In-­‐container	
  MT	
  
	
  -­‐	
  within	
  VM/LXC/Docker	
  tenancy	
  
What	
  is	
  unique?	
  
๏  Can	
  have	
  high	
  tenant	
  density	
  
What	
  are	
  the	
  advantage	
  of	
  this	
  model?	
  
๏  Op@mizing	
  resource	
  u@liza@on	
  
๏  Sharing	
  resource	
  such	
  as	
  CPU,	
  memory	
  across	
  tenants	
  
๏  low	
  footprint,	
  based	
  on	
  u@liza@on/usage	
  of	
  the	
  	
  
	
  	
  	
  tenants	
  app	
  
๏  No	
  need	
  dedicated	
  resource	
  alloca@on	
  for	
  tenants	
  
Mul?-­‐tenancy	
  
Cloud	
  Burs;ng	
  	
  
*	
  
What	
  is	
  it?	
  
๏  Expanding/provisioning	
  applica@on	
  into	
  another	
  cloud	
  
to	
  handle	
  peak	
  load.	
  
Why	
  Should	
  one	
  care?	
  
๏  Resource	
  peak	
  @me	
  can	
  be	
  off-­‐loaded	
  to	
  third	
  party	
  
clouds/resources	
  
What	
  is	
  unique	
  about	
  it?	
  
๏  Can	
  off-­‐load	
  to	
  any	
  cloud	
  
-­‐	
  Private,	
  Public	
  and	
  Hybrid	
  
๏  Easy	
  to	
  managed	
  with	
  the	
  model	
  of	
  LB	
  per	
  bus@ng	
  cloud	
  
What	
  are	
  the	
  advantages?	
  
๏  Make	
  DevOps	
  life	
  easy	
  
๏  Low	
  TCO,	
  and	
  higher	
  u@liza@on	
  exis@ng	
  dedicated	
  
resources	
  
	
  
Cloud	
  Burs?ng	
  
Cloud	
  Burs?ng
Logging,	
  Metering	
  and	
  Monitoring	
  
*	
  
How	
  detail	
  it	
  is?	
  
๏  Instance	
  up/down	
  @me	
  
๏  Each	
  and	
  every	
  instance	
  public	
  health	
  status	
  
๏  applica@on	
  health,	
  OS	
  health	
  like	
  load	
  average,	
  memory	
  
consump@on	
  	
  
๏  Applica@on	
  logs	
  
Why	
  should	
  one	
  care?	
  
๏  Centralize	
  view	
  for	
  all	
  logging,	
  metering	
  and	
  monitoring	
  
What	
  are	
  the	
  advantages?	
  
๏  Easy	
  to	
  make	
  throaling	
  
๏  DevOps	
  life	
  easy	
  
๏  centralize	
  log	
  viewer	
  
๏  centralize	
  dashboard	
  
Logging,	
  Metering	
  and	
  Monitoring	
  
DevOps	
  Tooling	
  	
  
Be	
  Part	
  of	
  It	
  
What	
  are	
  the	
  Advantages	
  	
  
●  Elas@c	
  scalability	
  for	
  “anything”	
  –	
  not	
  only	
  HTTP	
  based	
  
services	
  	
  
●  Cloud	
  burs@ng	
  	
  
●  Scale	
  across	
  mul@ple	
  infrastructure	
  clouds	
  (IaaS)	
  simultaneously	
  	
  
●  Mul@	
  zone/data	
  center	
  support	
  	
  	
  
●  Mul@ple	
  tenant	
  isola@on	
  levels	
  	
  
●  In	
  container	
  mul@	
  tenancy	
  	
  
●  OS	
  container	
  (LXC,	
  Docker)	
  	
  
●  Virtual	
  machines	
  	
  
●  Physical	
  machines	
  	
  
What	
  Can	
  you	
  Do	
  with	
  it?	
  	
  
●  Build	
  your	
  SaaS	
  applica@ons	
  on	
  top	
  of	
  it	
  
●  Create	
  Cartridges	
  to	
  extend	
  the	
  services	
  	
  
●  Cloud	
  enable	
  your	
  applica@ons	
  	
  
●  Scale	
  your	
  legacy	
  applica@ons	
  	
  
Apache	
  Stratos	
  	
  
●  Try	
  it!	
  
●  Be	
  part	
  of	
  it!!!	
  
o  Contribute	
  Cartridges	
  –	
  Cartridge	
  Store	
  
o  Join	
  the	
  community!!!	
  	
  
●  hap://stratos.apache.org/index.html	
  	
  
o  Facebook:	
  haps://www.facebook.com/apache.stratos	
  
o  LinkedIn:	
  hap://www.linkedin.com/groups/Apache-­‐Stratos-­‐5131436	
  	
  
o  Twiaer:	
  haps://twiaer.com/ApacheStratos	
  

More Related Content

What's hot

Introduction to Streaming Analytics
Introduction to Streaming AnalyticsIntroduction to Streaming Analytics
Introduction to Streaming Analytics
Guido Schmutz
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Continuent
 
Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?
Guido Schmutz
 
Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...
Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...
Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...
confluent
 

What's hot (20)

Introduction to Streaming Analytics
Introduction to Streaming AnalyticsIntroduction to Streaming Analytics
Introduction to Streaming Analytics
 
How Netflix does Microservices
How Netflix does Microservices How Netflix does Microservices
How Netflix does Microservices
 
Architecting for the Cloud using NetflixOSS - Codemash Workshop
Architecting for the Cloud using NetflixOSS - Codemash WorkshopArchitecting for the Cloud using NetflixOSS - Codemash Workshop
Architecting for the Cloud using NetflixOSS - Codemash Workshop
 
Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
Pivoting Spring XD to Spring Cloud Data Flow with Sabby AnandanPivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
 
Importance of ‘Centralized Event collection’ and BigData platform for Analysis !
Importance of ‘Centralized Event collection’ and BigData platform for Analysis !Importance of ‘Centralized Event collection’ and BigData platform for Analysis !
Importance of ‘Centralized Event collection’ and BigData platform for Analysis !
 
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
 
Data Streaming with Apache Kafka & MongoDB
Data Streaming with Apache Kafka & MongoDBData Streaming with Apache Kafka & MongoDB
Data Streaming with Apache Kafka & MongoDB
 
Cmg06 utilization is useless
Cmg06 utilization is uselessCmg06 utilization is useless
Cmg06 utilization is useless
 
How Narvar Uses Pulsar to Power the Post-Purchase Experience - Pulsar Summit ...
How Narvar Uses Pulsar to Power the Post-Purchase Experience - Pulsar Summit ...How Narvar Uses Pulsar to Power the Post-Purchase Experience - Pulsar Summit ...
How Narvar Uses Pulsar to Power the Post-Purchase Experience - Pulsar Summit ...
 
The Netflix Way to deal with Big Data Problems
The Netflix Way to deal with Big Data ProblemsThe Netflix Way to deal with Big Data Problems
The Netflix Way to deal with Big Data Problems
 
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at UberWSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
 
Event Stream Processing with Kafka and Samza
Event Stream Processing with Kafka and SamzaEvent Stream Processing with Kafka and Samza
Event Stream Processing with Kafka and Samza
 
Full Stack Reactive In Practice
Full Stack Reactive In PracticeFull Stack Reactive In Practice
Full Stack Reactive In Practice
 
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it YourselfWhy Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
 
Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?
 
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
 
Lambda Architecture in Practice
Lambda Architecture in PracticeLambda Architecture in Practice
Lambda Architecture in Practice
 
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
 
Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...
Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...
Enabling Insight to Support World-Class Supercomputing (Stefan Ceballos, Oak ...
 

Viewers also liked

Interview With H E G
Interview With H E GInterview With H E G
Interview With H E G
guest95d50b
 

Viewers also liked (18)

DRP Tech_Fair_Aug2011
DRP Tech_Fair_Aug2011DRP Tech_Fair_Aug2011
DRP Tech_Fair_Aug2011
 
Drp pres sep2011
Drp pres sep2011Drp pres sep2011
Drp pres sep2011
 
Smart Skills for Mobile Developers - MobileMonday IIMA Keynote
Smart Skills for Mobile Developers - MobileMonday IIMA KeynoteSmart Skills for Mobile Developers - MobileMonday IIMA Keynote
Smart Skills for Mobile Developers - MobileMonday IIMA Keynote
 
WSO2 App Dev Strategy and Roadmap - WSO2Con EU 2014
WSO2 App Dev Strategy and Roadmap - WSO2Con EU 2014WSO2 App Dev Strategy and Roadmap - WSO2Con EU 2014
WSO2 App Dev Strategy and Roadmap - WSO2Con EU 2014
 
ApacheCon 2014 - Apache Stratos - The PaaS Project from Apache
ApacheCon 2014  - Apache Stratos - The PaaS Project from ApacheApacheCon 2014  - Apache Stratos - The PaaS Project from Apache
ApacheCon 2014 - Apache Stratos - The PaaS Project from Apache
 
TRETC 2011 - DRP Presentation
 TRETC 2011 - DRP Presentation TRETC 2011 - DRP Presentation
TRETC 2011 - DRP Presentation
 
Android Camp 2011 @ Silicon India
Android Camp 2011 @ Silicon IndiaAndroid Camp 2011 @ Silicon India
Android Camp 2011 @ Silicon India
 
RA-Endeavour SAP Innovation &amp; Technology Forum 2012
RA-Endeavour SAP Innovation &amp; Technology Forum 2012RA-Endeavour SAP Innovation &amp; Technology Forum 2012
RA-Endeavour SAP Innovation &amp; Technology Forum 2012
 
Art and the Browser
Art and the BrowserArt and the Browser
Art and the Browser
 
WSO2 Big Data Analytics Platform
WSO2 Big Data Analytics PlatformWSO2 Big Data Analytics Platform
WSO2 Big Data Analytics Platform
 
Ri Powerpoint
Ri PowerpointRi Powerpoint
Ri Powerpoint
 
DigitalRiversidehematology
DigitalRiversidehematologyDigitalRiversidehematology
DigitalRiversidehematology
 
Interview With H E G
Interview With H E GInterview With H E G
Interview With H E G
 
Infosys Awards&Recognitions
Infosys Awards&RecognitionsInfosys Awards&Recognitions
Infosys Awards&Recognitions
 
Green Light
Green LightGreen Light
Green Light
 
Teacher's Role
Teacher's RoleTeacher's Role
Teacher's Role
 
PETE&C: Using Rich Digital Media
PETE&C: Using Rich Digital MediaPETE&C: Using Rich Digital Media
PETE&C: Using Rich Digital Media
 
Design Resource International
Design Resource InternationalDesign Resource International
Design Resource International
 

Similar to QCon New York 2014 - Apache Stratos

Apache Stratos tutorial WSO2Con Europe-2014
Apache Stratos tutorial WSO2Con Europe-2014Apache Stratos tutorial WSO2Con Europe-2014
Apache Stratos tutorial WSO2Con Europe-2014
Lakmal Warusawithana
 
ApacheCon Essential Elements of an Enterprise PaaS
ApacheCon Essential Elements of an Enterprise PaaSApacheCon Essential Elements of an Enterprise PaaS
ApacheCon Essential Elements of an Enterprise PaaS
Lakmal Warusawithana
 
Building a dev ops paas with puppet, docker, openstack and apache stratos
Building a dev ops paas with puppet, docker, openstack and apache stratosBuilding a dev ops paas with puppet, docker, openstack and apache stratos
Building a dev ops paas with puppet, docker, openstack and apache stratos
Lakmal Warusawithana
 
Building a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaSBuilding a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaS
WSO2
 
WSO2Con Asia 2014 - Essential Elements of an Enterprise PaaS
WSO2Con Asia 2014 - Essential Elements of an Enterprise PaaSWSO2Con Asia 2014 - Essential Elements of an Enterprise PaaS
WSO2Con Asia 2014 - Essential Elements of an Enterprise PaaS
WSO2
 
Essential Elements of an Enterprise PaaS
Essential Elements of an Enterprise PaaSEssential Elements of an Enterprise PaaS
Essential Elements of an Enterprise PaaS
Lakmal Warusawithana
 
Containers in production with Docker, CoreOS, Kubernetes and Apache Stratos
Containers in production with Docker, CoreOS, Kubernetes and Apache StratosContainers in production with Docker, CoreOS, Kubernetes and Apache Stratos
Containers in production with Docker, CoreOS, Kubernetes and Apache Stratos
Lakmal Warusawithana
 
Mongo DB on Apache Stratos
Mongo DB on Apache StratosMongo DB on Apache Stratos
Mongo DB on Apache Stratos
WSO2
 

Similar to QCon New York 2014 - Apache Stratos (20)

PaaS Design & Architecture: A Deep Dive into Apache Stratos
PaaS Design & Architecture: A Deep Dive into Apache StratosPaaS Design & Architecture: A Deep Dive into Apache Stratos
PaaS Design & Architecture: A Deep Dive into Apache Stratos
 
Building a cloud native platform with Apache PaaS
Building a cloud native platform with Apache PaaSBuilding a cloud native platform with Apache PaaS
Building a cloud native platform with Apache PaaS
 
Apache Stratos tutorial WSO2Con Europe-2014
Apache Stratos tutorial WSO2Con Europe-2014Apache Stratos tutorial WSO2Con Europe-2014
Apache Stratos tutorial WSO2Con Europe-2014
 
Essential Elements of an Enterprise PaaS
Essential Elements of an Enterprise PaaSEssential Elements of an Enterprise PaaS
Essential Elements of an Enterprise PaaS
 
ApacheCon Essential Elements of an Enterprise PaaS
ApacheCon Essential Elements of an Enterprise PaaSApacheCon Essential Elements of an Enterprise PaaS
ApacheCon Essential Elements of an Enterprise PaaS
 
Building a dev ops paas with puppet, docker, openstack and apache stratos
Building a dev ops paas with puppet, docker, openstack and apache stratosBuilding a dev ops paas with puppet, docker, openstack and apache stratos
Building a dev ops paas with puppet, docker, openstack and apache stratos
 
Wso2 con 2014-us-talk-deep dive into apache stratos & private paas
Wso2 con 2014-us-talk-deep dive into apache stratos & private paasWso2 con 2014-us-talk-deep dive into apache stratos & private paas
Wso2 con 2014-us-talk-deep dive into apache stratos & private paas
 
Building a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaSBuilding a Cloud Native Platform with WSO2 Private PaaS
Building a Cloud Native Platform with WSO2 Private PaaS
 
Deploying at scale with PaaS
Deploying at scale with PaaSDeploying at scale with PaaS
Deploying at scale with PaaS
 
Apache Stratos (Incubating) is the Platform as a Service (PaaS) project from ...
Apache Stratos (Incubating) is the Platform as a Service (PaaS) project from ...Apache Stratos (Incubating) is the Platform as a Service (PaaS) project from ...
Apache Stratos (Incubating) is the Platform as a Service (PaaS) project from ...
 
PaaS: An Introduction
PaaS: An IntroductionPaaS: An Introduction
PaaS: An Introduction
 
WSO2Con Asia 2014 - Essential Elements of an Enterprise PaaS
WSO2Con Asia 2014 - Essential Elements of an Enterprise PaaSWSO2Con Asia 2014 - Essential Elements of an Enterprise PaaS
WSO2Con Asia 2014 - Essential Elements of an Enterprise PaaS
 
Essential Elements of an Enterprise PaaS
Essential Elements of an Enterprise PaaSEssential Elements of an Enterprise PaaS
Essential Elements of an Enterprise PaaS
 
Deploy in scale with docker, coreos, kubernetes and apache stratos
Deploy in scale with docker, coreos, kubernetes and apache stratosDeploy in scale with docker, coreos, kubernetes and apache stratos
Deploy in scale with docker, coreos, kubernetes and apache stratos
 
Containers in production with Docker, CoreOS, Kubernetes and Apache Stratos
Containers in production with Docker, CoreOS, Kubernetes and Apache StratosContainers in production with Docker, CoreOS, Kubernetes and Apache Stratos
Containers in production with Docker, CoreOS, Kubernetes and Apache Stratos
 
Mongo DB on Apache Stratos
Mongo DB on Apache StratosMongo DB on Apache Stratos
Mongo DB on Apache Stratos
 
Containers in production with docker, coreos, kubernetes and apache stratos
Containers in production with docker, coreos, kubernetes and apache stratosContainers in production with docker, coreos, kubernetes and apache stratos
Containers in production with docker, coreos, kubernetes and apache stratos
 
Openstack - Enterprise cloud management platform
Openstack - Enterprise cloud management platformOpenstack - Enterprise cloud management platform
Openstack - Enterprise cloud management platform
 
Apache Stratos - Building a PaaS using OSGi and Equinox
Apache Stratos - Building a PaaS using OSGi and EquinoxApache Stratos - Building a PaaS using OSGi and Equinox
Apache Stratos - Building a PaaS using OSGi and Equinox
 
Demystifying the cloud
Demystifying the cloudDemystifying the cloud
Demystifying the cloud
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

QCon New York 2014 - Apache Stratos

  • 1. PaaS  Design  and  Architecture:     A  Deep  Dive  into     Apache  Stratos   Samisa  Abeysinghe   VP  Delivery,  WSO2     Member  Apache  So<ware  FoundaAon     11th  June  2014      
  • 2. What  is  Apache  Stratos  ?   ●  A  Pla'orm-­‐as-­‐a-­‐Service  (PaaS)  Framework  from  Apache   Community   ●  Ini@ally  developed  and  maintained  by  WSO2   ●  Donated  to  Apache  SoGware  Founda@on   ●  Evolved  within  the  Apache  Community  for  nearly  a  year   ●  Significantly  re-­‐architected  and  improved  in  Apache   ●  Graduated  to  an  Apache  TLP  last  month  (May  2014)    
  • 3. What  does  it  Do?   ●  Elas@c  scalability  for  any  type  of  service  using  underlying   infrastructure  cloud   ●  Managing  logging  and  metering  for  services   ●  Provides  founda@on  services   ●  User  management   ●  Storage   ●  Billing    
  • 4. Topics  Covered   ●  Architecture     ●  Scalable  and  dynamic  load  balancing   ●  Mul@-­‐factored  auto  scaling     ●  Controlling  IaaS  resources   ●  Smart  policies     ●  Mul@-­‐tenancy     ●  Cloud  burs@ng     ●  Logging,  metering  and  monitoring        
  • 6. *   Apache  Stratos  Layered  Architecture  
  • 9. IaaS  Integra?on  with  jclouds    
  • 12. *   Apache  Stratos  Message  Flows  
  • 15. *   Why  is  this  architecture  so  important?   ๏  Unified  communica@on  across  components  in  the  PaaS   using  message  broker     ๏  Ability  to  plugin  any  third  party  load  balancer  using  message   broker  model   ๏  A  real  @me  event  bus  to  capture  and  process  complex   events     ๏  Centralized  monitoring  and  metering  with  unified   logging  framework   ๏  Ability  to  plugin  any  third  party  health  checking/monitoring   framework   ๏  Ability  to  plugin  any  IaaS  due  to  the  use  of  jclouds  API   ๏  Cartridge  model  enable  bringing  in  even  legacy  apps   into  cloud  as  service  nodes       Architecture  Advantages    
  • 16. Stratos  Cartridges   Not only Web Oriented: e.g. Can Scale Thrift Services
  • 17. Scalable  and  Dynamic     Load  Balancing  
  • 18. *   How  Scalable  it  is?   ๏  In  theory  infinite    -­‐  horizontal  scaling    -­‐  limited  by  resource  (instance  capacity)  availability     How  Dynamic  it  is?   ๏  Load  Balancers  are  spawned  dynamically    -­‐  LB  too  is  a  cartridge   ๏  In  case  of  mul@-­‐cloud,  mul@-­‐region,  LB  can  scale  per   cloud/region   ๏  Per  service  cluster  LB   Scalable  and  Dynamic  Load  Balancing  
  • 19. *   What  is  unique  about  Stratos   ๏  Cartridge  based  LB  model   ๏  Can  bring  any  third-­‐party  LB    -­‐  HAProxy,  nginx,  AWS  ELB    -­‐  As  easy  as  plugging  into  LB  extension  API   Scalable  and  Dynamic  Load  Balancing..  
  • 20. *   Scalable  and  Dynamic  Load  Balancing..  
  • 22. *   What  is  it?   ๏  Scaling  algorithm  can  use  mul@ple  factors.  such  as    -­‐  Load  average  of  the  instance    -­‐  Memory  consump@on  of  the  instance    -­‐  In-­‐flight  request  count  in  LB     ๏  Capable  of  predic@ng  future  load                    -­‐  Real  @me  analysis  of  current  load  status  using  CEP          integra@on   -­‐  Predict  immediate  future  load  based  on  CEP          resul@ng  streams     -­‐  Predic@ng  equa@on  s=ut  +  ½  at2   -­‐  s=predicted  load,  u=first  deriva@ve  of  current        average  load,  t=  @me  interval  ,  a=second  deriva@ve      of  current  load     Mul?-­‐factored  Auto  Scaling  
  • 23. *   Why  should  one  care?   ๏  Maximise  resource  u@liza@on   ๏  Easy  to  do  capacity  planning   ๏  Dynamic  load  based  resource  provisioning   ๏  Op@mizing  across  mul@ple  clouds   What  are  the  advantages?   ๏  Make  DevOps  life  easy   ๏  More  accurate  capacity  planning   Mul?-­‐factored  Auto  Scaling...  
  • 26. *   What  is  a  Par??on?   ๏  Logically  group  IaaS  resource  loca@ons   ๏  Par@@ons  are  important  to  make  applica@on  high   availability   ๏  Cartridge  instances  are  spawned  inside  these  par@@ons   ๏  Par@@ons  are  defined  by  DevOps   What  is  a  network  par??on?   ๏  Logical  groups  mul@ple  par@@ons,  that  are  in  the  same   network   ๏  Stratos  will  spawn  Load  Balancers  per  network  par@@on   ๏  Since  LB  instances  and  cartridge  instances  reside  in   same  network,  they  can  communicate  using  private  IP   addresses   ๏  Used  in  deployment  policies     Controlling  IaaS  Resources  
  • 27. *   What  are  the  advantages?   ๏  Can  control   ๏  per  cloud,  per  region,  per  zone,  ...etc   ๏  Can  achieve  high  availability,  disaster  recovery   ๏  Help  for  cloud  SLA   ๏  Control  the  resource  u@liza@on   ๏  Help  with  geo  based  deployments   ๏  help  comply  with  geo  rules/regula@ons   Controlling  IaaS  Resources  
  • 29. *   What  are  the  smart  policies?   ๏  Auto  scaling   ๏  Deployment   Auto  scaling  policy   ๏  Define  thresholds  values  pertaining  scale  up/down   decision     ๏  Auto  Scaler  refer  this  policy   ๏  Defined  by  DevOps   Deployment  policy   ๏  Defined  how  and  where  to  spawn  cartridge  instances   ๏  Defined  min  and  max  instances  in  a  selected  service   cluster   ๏  Defined  by  DevOps  based  on  deployment  paaerns     Smart  Policies  
  • 30. *   Why  should  one  care?   ๏  Can  provide  cloud  SLA     What  are  the  advantages?   ๏  Make  DevOps  life  easy    -­‐  Help  keep  to  SLA   ๏  Make  SaaS  app  delivery  life  easy    -­‐  Do  not  have  to  worry  about  availability  in   applica@on  layer       Smart  Policies  
  • 32. *   What  MT  model  does  it  support?   ๏  Container  MT    -­‐  virtual  Machine,  LXC,  Docker   ๏  In-­‐container  MT    -­‐  within  VM/LXC/Docker  tenancy   What  is  unique?   ๏  Can  have  high  tenant  density   What  are  the  advantage  of  this  model?   ๏  Op@mizing  resource  u@liza@on   ๏  Sharing  resource  such  as  CPU,  memory  across  tenants   ๏  low  footprint,  based  on  u@liza@on/usage  of  the          tenants  app   ๏  No  need  dedicated  resource  alloca@on  for  tenants   Mul?-­‐tenancy  
  • 34. *   What  is  it?   ๏  Expanding/provisioning  applica@on  into  another  cloud   to  handle  peak  load.   Why  Should  one  care?   ๏  Resource  peak  @me  can  be  off-­‐loaded  to  third  party   clouds/resources   What  is  unique  about  it?   ๏  Can  off-­‐load  to  any  cloud   -­‐  Private,  Public  and  Hybrid   ๏  Easy  to  managed  with  the  model  of  LB  per  bus@ng  cloud   What  are  the  advantages?   ๏  Make  DevOps  life  easy   ๏  Low  TCO,  and  higher  u@liza@on  exis@ng  dedicated   resources     Cloud  Burs?ng  
  • 36. Logging,  Metering  and  Monitoring  
  • 37. *   How  detail  it  is?   ๏  Instance  up/down  @me   ๏  Each  and  every  instance  public  health  status   ๏  applica@on  health,  OS  health  like  load  average,  memory   consump@on     ๏  Applica@on  logs   Why  should  one  care?   ๏  Centralize  view  for  all  logging,  metering  and  monitoring   What  are  the  advantages?   ๏  Easy  to  make  throaling   ๏  DevOps  life  easy   ๏  centralize  log  viewer   ๏  centralize  dashboard   Logging,  Metering  and  Monitoring  
  • 39. Be  Part  of  It  
  • 40. What  are  the  Advantages     ●  Elas@c  scalability  for  “anything”  –  not  only  HTTP  based   services     ●  Cloud  burs@ng     ●  Scale  across  mul@ple  infrastructure  clouds  (IaaS)  simultaneously     ●  Mul@  zone/data  center  support       ●  Mul@ple  tenant  isola@on  levels     ●  In  container  mul@  tenancy     ●  OS  container  (LXC,  Docker)     ●  Virtual  machines     ●  Physical  machines    
  • 41. What  Can  you  Do  with  it?     ●  Build  your  SaaS  applica@ons  on  top  of  it   ●  Create  Cartridges  to  extend  the  services     ●  Cloud  enable  your  applica@ons     ●  Scale  your  legacy  applica@ons    
  • 42. Apache  Stratos     ●  Try  it!   ●  Be  part  of  it!!!   o  Contribute  Cartridges  –  Cartridge  Store   o  Join  the  community!!!     ●  hap://stratos.apache.org/index.html     o  Facebook:  haps://www.facebook.com/apache.stratos   o  LinkedIn:  hap://www.linkedin.com/groups/Apache-­‐Stratos-­‐5131436     o  Twiaer:  haps://twiaer.com/ApacheStratos