SlideShare a Scribd company logo
Overview of Apache Stratos (Incubation)
4.0 Architecture
by Lakmal Warusawithana
Committer, PPMC Member Apache Stratos (Incubating)
Software Architect , WSO2 Inc
14th November 2013
Architecture, Design and Code Reviews
Date

Description

Owner

14th
november

Discuss overall Stratos 4 architecture

Lakmal

18th
november

Load Balancer

Imesh

21st
november

Autoscaler Architecture

Lahiru

25th
november

Cloud Controller

Reka

28th
november

CEP Integration

Nirmal

3rd
december

Cartridge Agent

Sajith
Architecture of Apache Stratos
(Incubating) 4.0
USER -----create application-----> Stratos Manager
●

select Cartridges and auto scaling policy and deployment policy for the
application

●

provide repository for the Application

●

SM (Stratos Manager) will generate a “subscription key” for the
subscription and store against the repository information

SM -----subscription details-----> Cloud Controller
●

Pass subscription details (Cartridges+Policies+Subscription key) to
CC (Cloud Controller) via a service call
CC ---publish to topology topic---> Message Broker
●

create payload for the subscription. It will include
○ subscription cluster id
○ subscription key

●

publish “cluster created” event to topology topic which include
associated policy names

MB -----getting topology update-----> Auto Scaler
●

AS (Auto Scaler) already subscribed to topology topic.

●

Received “cluster created” message, then update the current in
memory topology inside the AS

●

AS will evaluate the rules and send the decision to CC via service call
CC -----update topology-----> MB
●

received the decision that send the auto scaler.

●

CC update the payload with followings
○ member_id
○ MB and CEP service endpoints

●

create instance via jclouds and pass the payload to instance

●

update topology topic with “instance spawned”
Cartridge Agent -----instance_status topic-----> MB
●

subscribe to depSync topic

●

Publish “member started” event to instance_status, and wait

MB -----get instance_status-----> SM
●

SM already subscribed to instance_status topic

●

received the “member started” message

●

send the depSync message, with encrypted repository information
using previously generated “subscription key”
Cartridge Agent -----instance_status topic-----> MB
●

receiving depSync message and decrypted repository information with
“subscription key” and store in memory

●

check and wait for all necessary applications to be started

●

publish “member ready” event to instance_status topic with member
information

●

start cartridge heath publisher. publish periodic health stats to CEP via
thrift
CC -----update topology-----> MB
●

CC already subscribed to instance_status topic

●

received “member ready” message

●

publish “member activated” event to topology

MB -----update end-point members-----> LB
●

LB already subscribe to topology topic

●

received “member activated” message, then update in memory
topology for relevant cluster

●

update relevant cluster member list of the load balancing end point
Multifactor Auto Scaling
Support for External Load Balancers
Scalable Dynamic Load Balancing

●

LB could be defined as a Cartridge

●

Service Cluster or a group could defined its own LB

●

Subscription can request a dedicate LB

●

LB can auto scale
Scalable Dynamic Load Balancing
Smart Policies

●

Ability to define Smart Policies
○ High availability in multi-cloud
○ Economy policy
○ Failover policy
○ High performance
○ Dedicated resources

●

Meet SLAs

●

Policy could be define by DevOps
Cloud Bursting and Multi-cloud PaaS
Build in LXC Support
Composite Application Deployment
Thank you

More Related Content

PDF
CEP Integration for Apache Stratos 4.0.0
PDF
The Role of Elastic Load Balancer - Apache Stratos
PDF
Apache Stratos (incubating) Hangout IV - Stratos Controller and CLI Internals
PDF
Apache Stratos Incubator - hangout 2
PDF
Apache stratos (incubation) technical deep dive
PDF
Apache stratos hangout 3
PDF
Autoscaler architecture of apache stratos 4.0.0
PDF
Load Balancer Component Architecture - Apache Stratos 4.0.0
CEP Integration for Apache Stratos 4.0.0
The Role of Elastic Load Balancer - Apache Stratos
Apache Stratos (incubating) Hangout IV - Stratos Controller and CLI Internals
Apache Stratos Incubator - hangout 2
Apache stratos (incubation) technical deep dive
Apache stratos hangout 3
Autoscaler architecture of apache stratos 4.0.0
Load Balancer Component Architecture - Apache Stratos 4.0.0

What's hot (20)

PDF
Building your own PaaS using Apache Stratos
PDF
Make 2016 your year of SMACK talk
PDF
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
PDF
Introduction to apache kafka
PPTX
Openstack heat & How Autoscaling works
ODP
Kafka aws
PDF
KSQL Intro
PPTX
How to Autoscale in Apache Cloudstack using LiquiD AutoScaler
PDF
Tales from the four-comma club: Managing Kafka as a service at Salesforce | L...
PDF
Monitoring, the Prometheus Way - Julius Voltz, Prometheus
PDF
Fully fault tolerant real time data pipeline with docker and mesos
PDF
Deploying Kafka Streams Applications with Docker and Kubernetes
PDF
Apache Kafka® Security Overview
PDF
OpenStack Ceilometer
PDF
[Demo session] 관리형 Kafka 서비스 - Oracle Event Hub Service
PDF
A Journey through the JDKs (Java 9 to Java 11)
PDF
AWS Study Group - Chapter 10 - Matching Supply and Demand [Solution Architect...
PDF
Containerizing Distributed Pipes
PDF
The Easiest Way to Configure Security for Clients AND Servers (Dani Traphagen...
PDF
Akka at Enterprise Scale: Performance Tuning Distributed Applications
Building your own PaaS using Apache Stratos
Make 2016 your year of SMACK talk
Sharing is Caring: Toward Creating Self-tuning Multi-tenant Kafka (Anna Povzn...
Introduction to apache kafka
Openstack heat & How Autoscaling works
Kafka aws
KSQL Intro
How to Autoscale in Apache Cloudstack using LiquiD AutoScaler
Tales from the four-comma club: Managing Kafka as a service at Salesforce | L...
Monitoring, the Prometheus Way - Julius Voltz, Prometheus
Fully fault tolerant real time data pipeline with docker and mesos
Deploying Kafka Streams Applications with Docker and Kubernetes
Apache Kafka® Security Overview
OpenStack Ceilometer
[Demo session] 관리형 Kafka 서비스 - Oracle Event Hub Service
A Journey through the JDKs (Java 9 to Java 11)
AWS Study Group - Chapter 10 - Matching Supply and Demand [Solution Architect...
Containerizing Distributed Pipes
The Easiest Way to Configure Security for Clients AND Servers (Dani Traphagen...
Akka at Enterprise Scale: Performance Tuning Distributed Applications
Ad

Similar to Overview of apache stratos (incubation) 4.0 architecture (20)

PPTX
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
PDF
Getting Started with Apache Spark on Kubernetes
PDF
LinuxCon 2013 Steven Dake on Using Heat for autoscaling OpenShift on Openstack
PDF
Python web conference 2022 apache pulsar development 101 with python (f li-...
PDF
Kubermatic.pdf
PDF
Kubermatic CNCF Webinar - start.kubermatic.pdf
PDF
Fast Streaming into Clickhouse with Apache Pulsar
PDF
Python Web Conference 2022 - Apache Pulsar Development 101 with Python (FLiP-Py)
PDF
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
PDF
A Step-By-Step Disaster Recovery Blueprint & Best Practices for Your NetBacku...
PPT
Training netbackup6x2
PPTX
ELK Ruminating on Logs (Zendcon 2016)
PPTX
Kubernetes #2 monitoring
PPTX
Centralized log-management-with-elastic-stack
PDF
Federated Kubernetes: As a Platform for Distributed Scientific Computing
PPTX
Hot tutorials
PDF
How DBAs can garner the power of the Oracle Public Cloud?
PPTX
ACDKOCHI19 - Turbocharge Developer productivity with platform build on K8S an...
PPTX
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
PDF
Training Slides: 203 - Backup & Recovery
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
Getting Started with Apache Spark on Kubernetes
LinuxCon 2013 Steven Dake on Using Heat for autoscaling OpenShift on Openstack
Python web conference 2022 apache pulsar development 101 with python (f li-...
Kubermatic.pdf
Kubermatic CNCF Webinar - start.kubermatic.pdf
Fast Streaming into Clickhouse with Apache Pulsar
Python Web Conference 2022 - Apache Pulsar Development 101 with Python (FLiP-Py)
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
A Step-By-Step Disaster Recovery Blueprint & Best Practices for Your NetBacku...
Training netbackup6x2
ELK Ruminating on Logs (Zendcon 2016)
Kubernetes #2 monitoring
Centralized log-management-with-elastic-stack
Federated Kubernetes: As a Platform for Distributed Scientific Computing
Hot tutorials
How DBAs can garner the power of the Oracle Public Cloud?
ACDKOCHI19 - Turbocharge Developer productivity with platform build on K8S an...
[발표자료] 오픈소스 기반 고가용성 Pacemaker 소개 및 적용 사례_20230703_v1.1F.pptx
Training Slides: 203 - Backup & Recovery
Ad

More from Lakmal Warusawithana (20)

PDF
[Lakmal] Automate Microservice to API
PDF
Api Management with Service Mesh
PDF
Microservices, Containers, and Beyond
PDF
Container Native Architecture
PDF
Future of Cloud Computing with Containers
PDF
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
PDF
DevOps & cloud : Lessons & Stories
PDF
Unleashing k8 s to reduce complexities of an entire middleware platform
PDF
WSO2 Virtual Hackathon Big Data in the Cloud Case Study
PDF
Containers in production with Docker, CoreOS, Kubernetes and Apache Stratos
PDF
Deploy in scale with Docker, CoreOS, Kubernetes and Apache Stratos
PDF
Deep dive into Apache Stratos & Private PaaS WSO2Con EU 2015
PDF
Introduction to docker
PDF
PaaS: An Introduction
PDF
How to deploy your own private cloud with openstack
PDF
Building a Paa s with CloudStack and Apache Stratos
PDF
Apache stratos roadmap and strategy
PDF
Wso2 con 2014-us-talk-deep dive into apache stratos & private paas
PDF
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...
PDF
Containerizing the cloud with docker
[Lakmal] Automate Microservice to API
Api Management with Service Mesh
Microservices, Containers, and Beyond
Container Native Architecture
Future of Cloud Computing with Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
DevOps & cloud : Lessons & Stories
Unleashing k8 s to reduce complexities of an entire middleware platform
WSO2 Virtual Hackathon Big Data in the Cloud Case Study
Containers in production with Docker, CoreOS, Kubernetes and Apache Stratos
Deploy in scale with Docker, CoreOS, Kubernetes and Apache Stratos
Deep dive into Apache Stratos & Private PaaS WSO2Con EU 2015
Introduction to docker
PaaS: An Introduction
How to deploy your own private cloud with openstack
Building a Paa s with CloudStack and Apache Stratos
Apache stratos roadmap and strategy
Wso2 con 2014-us-talk-deep dive into apache stratos & private paas
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...
Containerizing the cloud with docker

Recently uploaded (20)

PDF
Approach and Philosophy of On baking technology
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Modernizing your data center with Dell and AMD
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Encapsulation theory and applications.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
A Presentation on Artificial Intelligence
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Unlocking AI with Model Context Protocol (MCP)
Approach and Philosophy of On baking technology
The Rise and Fall of 3GPP – Time for a Sabbatical?
Reach Out and Touch Someone: Haptics and Empathic Computing
20250228 LYD VKU AI Blended-Learning.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Modernizing your data center with Dell and AMD
Per capita expenditure prediction using model stacking based on satellite ima...
Encapsulation theory and applications.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Review of recent advances in non-invasive hemoglobin estimation
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
A Presentation on Artificial Intelligence
Digital-Transformation-Roadmap-for-Companies.pptx
Big Data Technologies - Introduction.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Unlocking AI with Model Context Protocol (MCP)

Overview of apache stratos (incubation) 4.0 architecture

  • 1. Overview of Apache Stratos (Incubation) 4.0 Architecture by Lakmal Warusawithana Committer, PPMC Member Apache Stratos (Incubating) Software Architect , WSO2 Inc 14th November 2013
  • 2. Architecture, Design and Code Reviews Date Description Owner 14th november Discuss overall Stratos 4 architecture Lakmal 18th november Load Balancer Imesh 21st november Autoscaler Architecture Lahiru 25th november Cloud Controller Reka 28th november CEP Integration Nirmal 3rd december Cartridge Agent Sajith
  • 3. Architecture of Apache Stratos (Incubating) 4.0
  • 4. USER -----create application-----> Stratos Manager ● select Cartridges and auto scaling policy and deployment policy for the application ● provide repository for the Application ● SM (Stratos Manager) will generate a “subscription key” for the subscription and store against the repository information SM -----subscription details-----> Cloud Controller ● Pass subscription details (Cartridges+Policies+Subscription key) to CC (Cloud Controller) via a service call
  • 5. CC ---publish to topology topic---> Message Broker ● create payload for the subscription. It will include ○ subscription cluster id ○ subscription key ● publish “cluster created” event to topology topic which include associated policy names MB -----getting topology update-----> Auto Scaler ● AS (Auto Scaler) already subscribed to topology topic. ● Received “cluster created” message, then update the current in memory topology inside the AS ● AS will evaluate the rules and send the decision to CC via service call
  • 6. CC -----update topology-----> MB ● received the decision that send the auto scaler. ● CC update the payload with followings ○ member_id ○ MB and CEP service endpoints ● create instance via jclouds and pass the payload to instance ● update topology topic with “instance spawned”
  • 7. Cartridge Agent -----instance_status topic-----> MB ● subscribe to depSync topic ● Publish “member started” event to instance_status, and wait MB -----get instance_status-----> SM ● SM already subscribed to instance_status topic ● received the “member started” message ● send the depSync message, with encrypted repository information using previously generated “subscription key”
  • 8. Cartridge Agent -----instance_status topic-----> MB ● receiving depSync message and decrypted repository information with “subscription key” and store in memory ● check and wait for all necessary applications to be started ● publish “member ready” event to instance_status topic with member information ● start cartridge heath publisher. publish periodic health stats to CEP via thrift
  • 9. CC -----update topology-----> MB ● CC already subscribed to instance_status topic ● received “member ready” message ● publish “member activated” event to topology MB -----update end-point members-----> LB ● LB already subscribe to topology topic ● received “member activated” message, then update in memory topology for relevant cluster ● update relevant cluster member list of the load balancing end point
  • 11. Support for External Load Balancers
  • 12. Scalable Dynamic Load Balancing ● LB could be defined as a Cartridge ● Service Cluster or a group could defined its own LB ● Subscription can request a dedicate LB ● LB can auto scale
  • 14. Smart Policies ● Ability to define Smart Policies ○ High availability in multi-cloud ○ Economy policy ○ Failover policy ○ High performance ○ Dedicated resources ● Meet SLAs ● Policy could be define by DevOps
  • 15. Cloud Bursting and Multi-cloud PaaS
  • 16. Build in LXC Support