SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
Apache Stratos
(Incubation)
Technical Deep Dive
by Lakmal Warusawithana
17th July 2013
What is Apache Stratos?
● A Platform-as-a-Service (PaaS) Framework
● Initially it was WSO2 Stratos, developed and maintained by WSO2.
Recently donated to Apache and now it is in the incubation.
● Deploys onto an Infrastructure-as-a-Service (IaaS)
Including Amazon EC2, VMWare vCloud, OpenStack...etc
● Creates a secure, multi-tenant, elastic, metered, billed PaaS
● Supports private, public or hybrid PaaS
● Can enable multiple flavours of PaaS:
● Application PaaS (aPaaS), Integration PaaS (iPaaS), Data PaaS
(dPaaS), etc
Stratos Core Components
● Cloud Controller(CC): using jclouds creates/removes VM or LXC
instances, based on input from ELB
● Elastic Load Balancer(ELB): distributes requests to the correct
instances, based on tenant and load balance, including rewriting URLs
● Artifact Distribution Coordinator(ADC): responsible for distributing artifacts
to relevant cartridge instances, which are then loaded by Deployment
Synchronizer
● Management Console: allows control of all this by either Web UI or
interactive command-line tooling
● Load Monitor: takes information on load from multiple sources
Cloud Controller
● Communicate to IaaS level jclouds API.
● Enables your system to scale across multiple IaaS providers
● Is the central location where the service topology resides
● Responsible for sharing the service topology among Stratos core services
● Supports hot update and deployment of its configuration files
● Currently tested with in AWS EC2, Openstack and vCloud
● Enables cloud burst your system across multiple IaaS providers.
CC - Component Architecture
Tenant-aware ELB
● Failover, auto-scaling and multi-tenancy
● Single load balancer route incoming requests to clusters of different
services in a tenant-aware manner
● IaaS independent elasticity
● Simple textual configuration language
● Private Jet Mode for tenants
● Some tenants load to deploy in a single tenant mode
● Cloud Bursting to hybrid clouds
Tenant-aware ELB cont....
Stratos Cartridges
● A component which can be plugged into Stratos, so that it can use Stratos
core services of the Foundation Layer
● Cloud-aware platform environment extending legacy technologies into the
cloud and delivering cloud benefits
● Stratos operations teams may create custom cartridges and host any
application, container, or framework in a Stratos Cloud. (Eg: A custom
cartridge to bring cloud characteristics to IBM Websphere Application
Server, IBM WebSphere ESB, Oracle WebLogic, or JBoss SOA Platform)
● Single tenant or multi-tenanted
● Process level isolation and instance-level dedicated tenancy
Stratos 2.0 Cartridges
Stratos Cartridges
● A cartridge is a package of code/configuration that plugs into Stratos to
offer a new PaaS Service
● e.g. ESB cartridge plugs in to provide a Stratos ESB-as-a-Service
● PHP Cartridge plugs in to provide PHP-as-a-Service
● A cartridge is a VM image plus config
Cartridge Tenancy
● A cartridge can operate in two modes:
○ Single tenant
■ Stratos will run and manage a separate instance for each tenant
■ The PHP Cartridge runs this way
○ Multi-tenant
■ Stratos will run multiple instances partitioned so that sets of
tenants run on sets of instances
■ Each instance of a Cartridge may run more than one tenant
User Roles involved in Cartridge
Architecture
● Cartridge Creator
○ Understands the cartridge domain (e.g. PHP) plus Cartridge SPI
○ Creates image and configs (including for different IaaS)
● Cartridge Deployer (Stratos Admin/DevOps)
○ Registers cartridge with Stratos
● Cartridge Subscriber(Tenant Admin)
○ Subscribes to the cartridge with
○ Scaling parameters
○ Other resources such as persistent file system / DB
● Cartridge Users
○ Per-tenant users or developers
○ Access deployed applications
○ Upload applications to the cartridge (optional)
Custom Domain Mapping
● A tenant can have two types of domains for his applications
Sub Domain
Own Domain
● Suppose that a tenant is going to subscribe to an application called myapp
Then his sub domain url would be
http://myapp.php.stratos.com
If the own domain he provide is myowndomain.com
then his own domain url would be
http://myowndomain.com
Artifact Distribution Coordinator
Puppet Based Cartridges
Centralize Logging
More info join
"dev@stratos.incubator.apache.org"

Más contenido relacionado

La actualidad más candente

Building your own PaaS using Apache Stratos
Building your own PaaS using Apache Stratos Building your own PaaS using Apache Stratos
Building your own PaaS using Apache Stratos
WSO2
 
Stratoscale Latest and Greatest
Stratoscale Latest and GreatestStratoscale Latest and Greatest
Stratoscale Latest and Greatest
Zach Lanksbury
 

La actualidad más candente (20)

Building your own PaaS using Apache Stratos
Building your own PaaS using Apache Stratos Building your own PaaS using Apache Stratos
Building your own PaaS using Apache Stratos
 
Data Engineer’s Lunch #45: Apache Livy
Data Engineer’s Lunch #45: Apache LivyData Engineer’s Lunch #45: Apache Livy
Data Engineer’s Lunch #45: Apache Livy
 
Stratoscale Latest and Greatest
Stratoscale Latest and GreatestStratoscale Latest and Greatest
Stratoscale Latest and Greatest
 
AWS Study Group - Chapter 10 - Matching Supply and Demand [Solution Architect...
AWS Study Group - Chapter 10 - Matching Supply and Demand [Solution Architect...AWS Study Group - Chapter 10 - Matching Supply and Demand [Solution Architect...
AWS Study Group - Chapter 10 - Matching Supply and Demand [Solution Architect...
 
DalmatinerDB and cockroachDB monitoring plataform
DalmatinerDB and cockroachDB monitoring plataformDalmatinerDB and cockroachDB monitoring plataform
DalmatinerDB and cockroachDB monitoring plataform
 
Kafka for begginer
Kafka for begginerKafka for begginer
Kafka for begginer
 
Open stack swift architecture and monitoring
Open stack swift architecture and monitoringOpen stack swift architecture and monitoring
Open stack swift architecture and monitoring
 
Hey Relational Developer, Let's Go Crazy (Patrick McFadin, DataStax) | Cassan...
Hey Relational Developer, Let's Go Crazy (Patrick McFadin, DataStax) | Cassan...Hey Relational Developer, Let's Go Crazy (Patrick McFadin, DataStax) | Cassan...
Hey Relational Developer, Let's Go Crazy (Patrick McFadin, DataStax) | Cassan...
 
Kubernetes as Orchestrator for A10 Lightning Controller
Kubernetes as Orchestrator for A10 Lightning ControllerKubernetes as Orchestrator for A10 Lightning Controller
Kubernetes as Orchestrator for A10 Lightning Controller
 
Glance Updates - Kilo Edition
Glance Updates - Kilo EditionGlance Updates - Kilo Edition
Glance Updates - Kilo Edition
 
Developing the Stratoscale System at Scale - Muli Ben-Yehuda, Stratoscale - D...
Developing the Stratoscale System at Scale - Muli Ben-Yehuda, Stratoscale - D...Developing the Stratoscale System at Scale - Muli Ben-Yehuda, Stratoscale - D...
Developing the Stratoscale System at Scale - Muli Ben-Yehuda, Stratoscale - D...
 
Changing the world with ZeroVM and Swift
Changing the world with ZeroVM and SwiftChanging the world with ZeroVM and Swift
Changing the world with ZeroVM and Swift
 
Architecting for Microservices Part 2
Architecting for Microservices Part 2Architecting for Microservices Part 2
Architecting for Microservices Part 2
 
5 - Hands-on Kubernetes Workshop:
5 - Hands-on Kubernetes Workshop:5 - Hands-on Kubernetes Workshop:
5 - Hands-on Kubernetes Workshop:
 
Openstack heat & How Autoscaling works
Openstack heat & How Autoscaling worksOpenstack heat & How Autoscaling works
Openstack heat & How Autoscaling works
 
Spark day 2017 - Spark on Kubernetes
Spark day 2017 - Spark on KubernetesSpark day 2017 - Spark on Kubernetes
Spark day 2017 - Spark on Kubernetes
 
Running Galera Cluster on Microsoft Azure
Running Galera Cluster on Microsoft AzureRunning Galera Cluster on Microsoft Azure
Running Galera Cluster on Microsoft Azure
 
Oops! I started a broker | Yinon Kahta, Taboola
Oops! I started a broker | Yinon Kahta, TaboolaOops! I started a broker | Yinon Kahta, Taboola
Oops! I started a broker | Yinon Kahta, Taboola
 
Exploring Openstack Swift(Object Storage) and Swiftstack
Exploring Openstack Swift(Object Storage) and Swiftstack Exploring Openstack Swift(Object Storage) and Swiftstack
Exploring Openstack Swift(Object Storage) and Swiftstack
 
Introduction to apache kafka
Introduction to apache kafkaIntroduction to apache kafka
Introduction to apache kafka
 

Similar a Apache stratos (incubation) technical deep dive

Introducing apache stratos (incubating) & wso2 paa s foundation
Introducing apache stratos (incubating) & wso2 paa s foundationIntroducing apache stratos (incubating) & wso2 paa s foundation
Introducing apache stratos (incubating) & wso2 paa s foundation
Lakmal Warusawithana
 
WSO2 Stratos 2 - Your all in one Cloud Platform
WSO2 Stratos 2 - Your all in one Cloud PlatformWSO2 Stratos 2 - Your all in one Cloud Platform
WSO2 Stratos 2 - Your all in one Cloud Platform
WSO2
 
Cloud Native PaaS Advantage
Cloud Native PaaS Advantage Cloud Native PaaS Advantage
Cloud Native PaaS Advantage
WSO2
 
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
 
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
 

Similar a Apache stratos (incubation) technical deep dive (20)

Introducing apache stratos (incubating) & wso2 paa s foundation
Introducing apache stratos (incubating) & wso2 paa s foundationIntroducing apache stratos (incubating) & wso2 paa s foundation
Introducing apache stratos (incubating) & wso2 paa s foundation
 
WSO2 Stratos 2 - Your all in one Cloud Platform
WSO2 Stratos 2 - Your all in one Cloud PlatformWSO2 Stratos 2 - Your all in one Cloud Platform
WSO2 Stratos 2 - Your all in one Cloud Platform
 
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
 
Cloud Native PaaS Advantage
Cloud Native PaaS Advantage Cloud Native PaaS Advantage
Cloud Native PaaS Advantage
 
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
 
Getting Started with Apache CloudStack
Getting Started with Apache CloudStackGetting Started with Apache CloudStack
Getting Started with Apache CloudStack
 
Introduction to containers a practical session using core os and docker
Introduction to containers  a practical session using core os and dockerIntroduction to containers  a practical session using core os and docker
Introduction to containers a practical session using core os and docker
 
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
 
OpenStack Best Practices and Considerations - terasky tech day
OpenStack Best Practices and Considerations  - terasky tech dayOpenStack Best Practices and Considerations  - terasky tech day
OpenStack Best Practices and Considerations - terasky tech day
 
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
 
Google Anthos - Azure Stack - AWS Outposts :Comparison
Google Anthos - Azure Stack - AWS Outposts :ComparisonGoogle Anthos - Azure Stack - AWS Outposts :Comparison
Google Anthos - Azure Stack - AWS Outposts :Comparison
 
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
 
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
 
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
 
OpenStack on SmartOS
OpenStack on SmartOSOpenStack on SmartOS
OpenStack on SmartOS
 
Txlf2012
Txlf2012Txlf2012
Txlf2012
 
Silicon Valley CloudStack User Group - Introduction to Apache CloudStack
Silicon Valley CloudStack User Group - Introduction to Apache CloudStackSilicon Valley CloudStack User Group - Introduction to Apache CloudStack
Silicon Valley CloudStack User Group - Introduction to Apache CloudStack
 
Intro to CloudStack
Intro to CloudStackIntro to CloudStack
Intro to CloudStack
 
Deploying at scale with PaaS
Deploying at scale with PaaSDeploying at scale with PaaS
Deploying at scale with PaaS
 
Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...
Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...
Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...
 

Más de Lakmal Warusawithana

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
Lakmal Warusawithana
 
Deep dive into Apache Stratos & Private PaaS WSO2Con EU 2015
Deep dive into Apache Stratos & Private PaaS   WSO2Con EU 2015Deep dive into Apache Stratos & Private PaaS   WSO2Con EU 2015
Deep dive into Apache Stratos & Private PaaS WSO2Con EU 2015
Lakmal Warusawithana
 
Apache stratos roadmap and strategy
Apache stratos roadmap and strategyApache stratos roadmap and strategy
Apache stratos roadmap and strategy
Lakmal Warusawithana
 
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
 
An introduction to wso2 private paas wso2coneu-2014
An introduction to wso2 private paas wso2coneu-2014An introduction to wso2 private paas wso2coneu-2014
An introduction to wso2 private paas wso2coneu-2014
Lakmal Warusawithana
 

Más de Lakmal Warusawithana (20)

[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API
 
Api Management with Service Mesh
Api Management with Service MeshApi Management with Service Mesh
Api Management with Service Mesh
 
Microservices, Containers, and Beyond
Microservices, Containers, and BeyondMicroservices, Containers, and Beyond
Microservices, Containers, and Beyond
 
Container Native Architecture
Container Native ArchitectureContainer Native Architecture
Container Native Architecture
 
Future of Cloud Computing with Containers
Future of Cloud Computing with ContainersFuture of Cloud Computing with Containers
Future of Cloud Computing with Containers
 
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on ContainersWSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
WSO2ConEU 2016 Tutorial - Deploying WSO2 Middleware on Containers
 
DevOps & cloud : Lessons & Stories
DevOps & cloud : Lessons & StoriesDevOps & cloud : Lessons & Stories
DevOps & cloud : Lessons & Stories
 
Unleashing k8 s to reduce complexities of an entire middleware platform
Unleashing k8 s to reduce complexities of an entire middleware platformUnleashing k8 s to reduce complexities of an entire middleware platform
Unleashing k8 s to reduce complexities of an entire middleware platform
 
WSO2 Virtual Hackathon Big Data in the Cloud Case Study
WSO2 Virtual Hackathon Big Data in the Cloud Case StudyWSO2 Virtual Hackathon Big Data in the Cloud Case Study
WSO2 Virtual Hackathon Big Data in the Cloud Case Study
 
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
 
Deep dive into Apache Stratos & Private PaaS WSO2Con EU 2015
Deep dive into Apache Stratos & Private PaaS   WSO2Con EU 2015Deep dive into Apache Stratos & Private PaaS   WSO2Con EU 2015
Deep dive into Apache Stratos & Private PaaS WSO2Con EU 2015
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
PaaS: An Introduction
PaaS: An IntroductionPaaS: An Introduction
PaaS: An Introduction
 
How to deploy your own private cloud with openstack
How to deploy your own private cloud with openstackHow to deploy your own private cloud with openstack
How to deploy your own private cloud with openstack
 
Building a Paa s with CloudStack and Apache Stratos
Building a Paa s with CloudStack and Apache StratosBuilding a Paa s with CloudStack and Apache Stratos
Building a Paa s with CloudStack and Apache Stratos
 
Apache stratos roadmap and strategy
Apache stratos roadmap and strategyApache stratos roadmap and strategy
Apache stratos roadmap and strategy
 
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...
 
Containerizing the cloud with docker
Containerizing the cloud with dockerContainerizing the cloud with docker
Containerizing the cloud with docker
 
Apache Stratos tutorial WSO2Con Europe-2014
Apache Stratos tutorial WSO2Con Europe-2014Apache Stratos tutorial WSO2Con Europe-2014
Apache Stratos tutorial WSO2Con Europe-2014
 
An introduction to wso2 private paas wso2coneu-2014
An introduction to wso2 private paas wso2coneu-2014An introduction to wso2 private paas wso2coneu-2014
An introduction to wso2 private paas wso2coneu-2014
 

Último

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

Último (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
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
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
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
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

Apache stratos (incubation) technical deep dive

  • 1. Apache Stratos (Incubation) Technical Deep Dive by Lakmal Warusawithana 17th July 2013
  • 2. What is Apache Stratos? ● A Platform-as-a-Service (PaaS) Framework ● Initially it was WSO2 Stratos, developed and maintained by WSO2. Recently donated to Apache and now it is in the incubation. ● Deploys onto an Infrastructure-as-a-Service (IaaS) Including Amazon EC2, VMWare vCloud, OpenStack...etc ● Creates a secure, multi-tenant, elastic, metered, billed PaaS ● Supports private, public or hybrid PaaS ● Can enable multiple flavours of PaaS: ● Application PaaS (aPaaS), Integration PaaS (iPaaS), Data PaaS (dPaaS), etc
  • 3.
  • 4.
  • 5. Stratos Core Components ● Cloud Controller(CC): using jclouds creates/removes VM or LXC instances, based on input from ELB ● Elastic Load Balancer(ELB): distributes requests to the correct instances, based on tenant and load balance, including rewriting URLs ● Artifact Distribution Coordinator(ADC): responsible for distributing artifacts to relevant cartridge instances, which are then loaded by Deployment Synchronizer ● Management Console: allows control of all this by either Web UI or interactive command-line tooling ● Load Monitor: takes information on load from multiple sources
  • 6. Cloud Controller ● Communicate to IaaS level jclouds API. ● Enables your system to scale across multiple IaaS providers ● Is the central location where the service topology resides ● Responsible for sharing the service topology among Stratos core services ● Supports hot update and deployment of its configuration files ● Currently tested with in AWS EC2, Openstack and vCloud ● Enables cloud burst your system across multiple IaaS providers.
  • 7. CC - Component Architecture
  • 8. Tenant-aware ELB ● Failover, auto-scaling and multi-tenancy ● Single load balancer route incoming requests to clusters of different services in a tenant-aware manner ● IaaS independent elasticity ● Simple textual configuration language ● Private Jet Mode for tenants ● Some tenants load to deploy in a single tenant mode ● Cloud Bursting to hybrid clouds
  • 10. Stratos Cartridges ● A component which can be plugged into Stratos, so that it can use Stratos core services of the Foundation Layer ● Cloud-aware platform environment extending legacy technologies into the cloud and delivering cloud benefits ● Stratos operations teams may create custom cartridges and host any application, container, or framework in a Stratos Cloud. (Eg: A custom cartridge to bring cloud characteristics to IBM Websphere Application Server, IBM WebSphere ESB, Oracle WebLogic, or JBoss SOA Platform) ● Single tenant or multi-tenanted ● Process level isolation and instance-level dedicated tenancy
  • 12. Stratos Cartridges ● A cartridge is a package of code/configuration that plugs into Stratos to offer a new PaaS Service ● e.g. ESB cartridge plugs in to provide a Stratos ESB-as-a-Service ● PHP Cartridge plugs in to provide PHP-as-a-Service ● A cartridge is a VM image plus config
  • 13. Cartridge Tenancy ● A cartridge can operate in two modes: ○ Single tenant ■ Stratos will run and manage a separate instance for each tenant ■ The PHP Cartridge runs this way ○ Multi-tenant ■ Stratos will run multiple instances partitioned so that sets of tenants run on sets of instances ■ Each instance of a Cartridge may run more than one tenant
  • 14. User Roles involved in Cartridge Architecture ● Cartridge Creator ○ Understands the cartridge domain (e.g. PHP) plus Cartridge SPI ○ Creates image and configs (including for different IaaS) ● Cartridge Deployer (Stratos Admin/DevOps) ○ Registers cartridge with Stratos ● Cartridge Subscriber(Tenant Admin) ○ Subscribes to the cartridge with ○ Scaling parameters ○ Other resources such as persistent file system / DB ● Cartridge Users ○ Per-tenant users or developers ○ Access deployed applications ○ Upload applications to the cartridge (optional)
  • 15. Custom Domain Mapping ● A tenant can have two types of domains for his applications Sub Domain Own Domain ● Suppose that a tenant is going to subscribe to an application called myapp Then his sub domain url would be http://myapp.php.stratos.com If the own domain he provide is myowndomain.com then his own domain url would be http://myowndomain.com
  • 16.