18
Overview of Apache Stratos (Incubation) 4.0 Architecture by Lakmal Warusawithana Committer, PPMC Member Apache Stratos (Incubating) Software Architect , WSO2 Inc 14th November 2013

Overview of apache stratos (incubation) 4.0 architecture

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Overview of apache stratos (incubation) 4.0 architecture

Overview of Apache Stratos (Incubation) 4.0 Architecture

by Lakmal WarusawithanaCommitter, PPMC Member Apache Stratos (Incubating)

Software Architect , WSO2 Inc14th November 2013

Page 2: Overview of apache stratos (incubation) 4.0 architecture

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

Page 3: Overview of apache stratos (incubation) 4.0 architecture

Architecture of Apache Stratos (Incubating) 4.0

Page 4: Overview of apache stratos (incubation) 4.0 architecture

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

Page 5: Overview of apache stratos (incubation) 4.0 architecture

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

Page 6: Overview of apache stratos (incubation) 4.0 architecture

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”

Page 7: Overview of apache stratos (incubation) 4.0 architecture

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”

Page 8: Overview of apache stratos (incubation) 4.0 architecture

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

Page 9: Overview of apache stratos (incubation) 4.0 architecture

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

Page 10: Overview of apache stratos (incubation) 4.0 architecture

Multifactor Auto Scaling

Page 11: Overview of apache stratos (incubation) 4.0 architecture

Support for External Load Balancers

Page 12: Overview of apache stratos (incubation) 4.0 architecture

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

Page 13: Overview of apache stratos (incubation) 4.0 architecture

Scalable Dynamic Load Balancing

Page 14: Overview of apache stratos (incubation) 4.0 architecture

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

Page 15: Overview of apache stratos (incubation) 4.0 architecture

Cloud Bursting and Multi-cloud PaaS

Page 16: Overview of apache stratos (incubation) 4.0 architecture

Build in LXC Support

Page 17: Overview of apache stratos (incubation) 4.0 architecture

Composite Application Deployment

Page 18: Overview of apache stratos (incubation) 4.0 architecture

Thank you