This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
๏ What is Stratos๏ What is a Composite Application Model๏ Sample composite applications๏ Metadata API ๏ Demo with tomcat - WSO2 Identity Server SAML SSO
Roadmap
*
oApache Stratos is a highly-extensible Platform-as-a-Service (PaaS) framework
oMultifactored AutoscalingoLoad Balancer as a cartridgeoHigh availabilityoCloud burstingoMultitenancy
Stratos
Stratos Manager
AutoScaler
Cloud Controller
MySQL PHP WSO2 ISWSO2 ESB
Str a
tos
Iaa S
Admin / Service Creator
Service User
Architecture
ESB
Tomcat
PHP
MySQL
PostGreSQL
Mediation Application Database
ESB TomcatPHP
MySQLPostGreSQL
STRATOS 4.0.0
Problems?
o Managing multiple services that are grouped together in the real worldo Startup dependencies among services o Termination behavior among dependent serviceso Scaling rules among services and service groupso Sharing data among services and service groups
o Allows to deploy an application that required to have different service runtimes (cartridge) with their relationship, dependencies and deployment pattern.
o Defines a service group by aggregating different service runtimes with their unique behaviours such as startup order, termination behaviour and scaling behaviour.
o Eg: DataBase group consists of mysql and postgres
o Group supports nested group and their behaviour as well
Composite Application Model
Instance Life cycle
mysql-php-group
mysql php
LAMP
startup order
Application
Group
Cartridges
mysql-php-group
mysql php
LAMP
startup order
Application
Group
Demo
Group
Tomcat WSO2 Identity Server
TOMCAT SAML SSO
Application
Cartridges
Cartridge Agent
Service - Tomcat
MB Event
CA PluginOn MB Event
Start/ Restart Service
Cartridge Instance
*
Dependent Scaling๏ When one cluster scales up, scale up the dependent
group/cluster as well
Predicted No of instances for c3 is 4
o PaaS manages heterogeneous service runtimes(cartridges)
o Cartridges have dependencies to other cartridgeso Subset of cartridges can be grouped together by defining
the group behaviourso Easy to maintain application and their dependencies by
providing monitoring, handling app behaviours and elastic scaling.