SlideShare una empresa de Scribd logo
1 de 61
Descargar para leer sin conexión
WSO2 Stratos2:All-in-One
    Cloud Platform


   Lakmal Warusawithana(Software
             Architect)
Damitha Kumarage(Senior technical lead)
 We start the session with a use case
  scenario where benefits of moving your
  applications to Cloud with Stratos2
  highlighted

 Then we investigate how Stratos2
  architectured to provide cloud-native
  properties like auto-scaling, distributed-
  dynamically wired, multi-tenant, support
  self-service, granularly billed and metered
  and incrementally deployed
Platform-as-a-Service (PaaS)
CLOUD CONTROLLER
       SFACTIVITY MONITORING
  BUSINESS
Elastic Load Balancer
Overwhelming?
Don’t worry, Let’s learn by example
We are a large scale car manufacturing
company
               zcar.com
We have a problem !!!
Our dealers have their own websites to
promote and sell
        - cars
        - spare parts

  But these sites don’t capture all our
requirements
         - don’t contain comprehensive part
lists
         - no uptodate price lists
         - do not effectively launch our
promotions
         - often contain wrong information
related
           to zcar.com
Solution
   Host zcar.com own multi-tenanted web site
    for zcar.com dealers. Our tenants are our
    dealers

   Deploy the application in a zcar.com private
    PaaS

   Use Stratos2
What we need?
IaaS to run Stratos2

A devops team to maintain deploy and maintain
Stratos2(outsource?)

Development team to develop zcar.com
application
Steps
DevOps Tasks

   Setup IaaS(Openstack, vCloud, EC2)

   Install Puppet Master

   Customize Stratos2 puppet manifests

   Let there be Stratos2

   Let there be an WSO2 application server(AS)
    cartridge
Deployment
Deployment
Cartridge Developer Tasks

   Develop any custom cartridges required
Application Developer Tasks

   Develop zcar.com application for app server
Tenant(dealer) Tasks

   Subscribe to Stratos2 application server
    cartridge

   Deploy the application
UI for tenant
UI for tenant
CLI for tenant
Wait …
Does each dealer has separate web
application or are they sharing the same
      application(multi-tenanted)?
AS is a multi-tenant cartridge

Each tenant get a completely isolated AS
             environment

 Each user has his own zcar application
        running in a AS cluster
OK who handle security?

            Who handle load?

           Who take backups?

Who handle whole lot of other issues that a
enterprise application developer(zcar.com
    developers) need to worry about?
That’s why you choose Stratos2

       Zcar.com is car business

       They just know about cars

So let them concentrate on their car app
            Rest is Stratos2
Got the picture?

Ok let’s see what happen underneath
Stratos2 Core Components
Stratos 2.0
Understanding the Stratos2 Controller

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): takes complete
applications
   and breaks into per-instance components, which are then
   loaded into instances by Deployment Synchronizer
Understanding the Stratos2 Controller


Deployment Synchronizer: checks out the right code for
an
   Instance

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
ADC
Tenant-aware ELB

• Fail-over,   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
Tenant-aware ELB



   Private Jet Mode for tenants

 Some tenants load to deploy in a single
tenant
  mode
 Allocate entire service clusters for tenants




• Cloud Bursting to hybrid clouds
Cloud Controller

   Heart of Stratos 2.0 Foundation


 Is acting as a bridge between application level
and IaaS
  level via Jclouds API.


   Enables your system to scale across multiple IaaS
    providers


 Is the central location where the service topology
resides
Cloud Controller

 Responsible for sharing the service topology among Stratos
2.0 core
  services


  Supports hot update and deployment of its configuration
files


   Currently support AWS EC2 IaaS provider, Openstack Nova
    IaaS provider and vCloud IaaS provider


 Enables cloud burst your system across multiple IaaS
providers.
Stratos2 Core Services
• The Stratos Core Services provide essential capabilities to
  applications running in Stratos2 Cartridges

 – Logging-as-a-Service

 – Data-as-a-Service (MySQL and Cassandra)

 – Identity-as-a-Service

 – Registry/Repository (for metadata and config)

 – Billing and Metering

 – Storage as a Service(Relational, NoSQL)
Identity Server / Service
• Each tenant is identified by the @tenant-domain

• Each tenant admin can choose to manage their tenants user
  store either within the Stratos-internal LDAP store or using an
  external LDAP

• Bulk import

• Each tenant user has a OpenId/Infocard as well as SAML2
  tokens

 – Single-signon
 – Single-Signoff is also supported
Identity Server / Service


• SAML2 is used across the Stratos deployment to ensure a
  smooth transition (single sign-on) between Stratos services

 – SAML2 is also available as sign-on for webapps, gadgets
   and other user-deployed content
Stratos2 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
Stratos2 Cartridges

• A cartridge is a package of code/configuration that plugs into
  Stratos 2 to offer a new PaaS Service

 – e.g. Carbon 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

 – In Stratos 2 you need a VM Image per IaaS

 – e.g. need to create both EC2 and LXC image to use on both
   IaaS
Stratos2 Cartridges

 – A runtime that may (or may not) be optimized to use
   Stratos Core Services

 – e.g. Logging, Authn/Authz, Billing and Metering, Registry-
   based Config

 – Plus a simple script to deploy code or artifacts

• Stratos takes care of:

 – Spawning instances

 – Load-balancing and URL Mapping

 – Autoscaling
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
User Roles involved in Cartridge Architecture



• 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 xmotors

• Then his sub domain url would be

http://xmotors.as.zcar.com


• If the own domain he provide is xmotors.com
then his own domain url would be

http://xmotors.com
OK now let’s go step further with our zcar.com
example
New Problem
Some of the dealers are reluctant to go with the
new system because they need some added
functionality specific to their region, which is
already provided by their existing application

Their old system is written in PHP and use
database mysql

They want part of their old system still
accessible to their clients
Solution
Introduce tenant specific php and mysql
cartridges
PHP cartridge that ship with Stratos2 is a single-
tenanted cartridge

MySQL cartridge is also a single tenanted data
cartridge that ship with Stratos2
Customize php cartridge and mysql cartridge
puppet manifests

Let there be PHP and MySQL cartridges

Subscribe the tenant for these cartridges

Upload the dealer apps
What if dealer specific app is written in Python.
Stratos2 does not ship a Python cartridge yet !!!
Simple. Create your own python cartridge. You
just need add a new puppet manifest for
Python. Rest is for Stratos2. Your cartridge will
be dynamically added to Stratos2.
Timelines

Stratos 2.0 Beta1 Released

Stratos 2.0 Beta Soon

Stratos 2.0 available Q1 2013

 –Including PHP, MySQL, WSO2 service
  Cartridges

 –Other cartridges will follow
Questions?

Más contenido relacionado

La actualidad más candente

WSO2Con 2011: Introduction to Stratos
WSO2Con 2011: Introduction to StratosWSO2Con 2011: Introduction to Stratos
WSO2Con 2011: Introduction to StratosAfkham Azeez
 
Summer School Delivering On-Demand Shared Middleware Services
Summer School   Delivering On-Demand Shared Middleware ServicesSummer School   Delivering On-Demand Shared Middleware Services
Summer School Delivering On-Demand Shared Middleware ServicesWSO2
 
In the Spotlight WSO2 App Factory
In the Spotlight   WSO2 App FactoryIn the Spotlight   WSO2 App Factory
In the Spotlight WSO2 App FactoryWSO2
 
Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...
Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...
Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...WSO2
 
Delivering the Promise of SOA - Enterprise Integration Made Easy
Delivering the Promise of SOA - Enterprise Integration Made EasyDelivering the Promise of SOA - Enterprise Integration Made Easy
Delivering the Promise of SOA - Enterprise Integration Made EasyWSO2
 
Role of integration in Digital Transformation
Role of integration in Digital TransformationRole of integration in Digital Transformation
Role of integration in Digital TransformationWSO2
 
Leverage your application architecture with azure services
Leverage your application architecture with azure servicesLeverage your application architecture with azure services
Leverage your application architecture with azure servicesSammani Palansuriya
 
Microsoft azure platforms
Microsoft azure platformsMicrosoft azure platforms
Microsoft azure platformsMotty Ben Atia
 
Building A Cloud Platform
Building A Cloud PlatformBuilding A Cloud Platform
Building A Cloud PlatformWSO2
 
WSO2 and 2 Degrees Case Study
WSO2 and 2 Degrees Case StudyWSO2 and 2 Degrees Case Study
WSO2 and 2 Degrees Case StudyWSO2
 
Cloud application architecture with Microsoft Azure
Cloud application architecture with Microsoft AzureCloud application architecture with Microsoft Azure
Cloud application architecture with Microsoft AzureGuillermo Zepeda Selman
 
Optimize your azure architecture
Optimize your azure architectureOptimize your azure architecture
Optimize your azure architectureAsaf Nakash
 
Develop an Infrastructure Cost Optimization Strategy
Develop an Infrastructure Cost Optimization StrategyDevelop an Infrastructure Cost Optimization Strategy
Develop an Infrastructure Cost Optimization StrategyWSO2
 
Migrating Existing ASP.NET Web Applications to Microsoft Azure
Migrating Existing ASP.NET Web Applications to Microsoft AzureMigrating Existing ASP.NET Web Applications to Microsoft Azure
Migrating Existing ASP.NET Web Applications to Microsoft AzureIlyas F ☁☁☁
 
Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016WSO2
 
Cloud computing From Iaas to PaaS to SaaS
Cloud computing From Iaas to PaaS to SaaSCloud computing From Iaas to PaaS to SaaS
Cloud computing From Iaas to PaaS to SaaSChris Sparshott
 
Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value  Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value WSO2
 
Cloud computing 2
Cloud computing 2Cloud computing 2
Cloud computing 2Anh Nguyen
 
Open Service Federation Framework
Open Service Federation FrameworkOpen Service Federation Framework
Open Service Federation FrameworkWSO2
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services PlatformDavid Chou
 

La actualidad más candente (20)

WSO2Con 2011: Introduction to Stratos
WSO2Con 2011: Introduction to StratosWSO2Con 2011: Introduction to Stratos
WSO2Con 2011: Introduction to Stratos
 
Summer School Delivering On-Demand Shared Middleware Services
Summer School   Delivering On-Demand Shared Middleware ServicesSummer School   Delivering On-Demand Shared Middleware Services
Summer School Delivering On-Demand Shared Middleware Services
 
In the Spotlight WSO2 App Factory
In the Spotlight   WSO2 App FactoryIn the Spotlight   WSO2 App Factory
In the Spotlight WSO2 App Factory
 
Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...
Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...
Achieve Cloud Scale by Implementing Elastic Load Balancing, Asset Deployment,...
 
Delivering the Promise of SOA - Enterprise Integration Made Easy
Delivering the Promise of SOA - Enterprise Integration Made EasyDelivering the Promise of SOA - Enterprise Integration Made Easy
Delivering the Promise of SOA - Enterprise Integration Made Easy
 
Role of integration in Digital Transformation
Role of integration in Digital TransformationRole of integration in Digital Transformation
Role of integration in Digital Transformation
 
Leverage your application architecture with azure services
Leverage your application architecture with azure servicesLeverage your application architecture with azure services
Leverage your application architecture with azure services
 
Microsoft azure platforms
Microsoft azure platformsMicrosoft azure platforms
Microsoft azure platforms
 
Building A Cloud Platform
Building A Cloud PlatformBuilding A Cloud Platform
Building A Cloud Platform
 
WSO2 and 2 Degrees Case Study
WSO2 and 2 Degrees Case StudyWSO2 and 2 Degrees Case Study
WSO2 and 2 Degrees Case Study
 
Cloud application architecture with Microsoft Azure
Cloud application architecture with Microsoft AzureCloud application architecture with Microsoft Azure
Cloud application architecture with Microsoft Azure
 
Optimize your azure architecture
Optimize your azure architectureOptimize your azure architecture
Optimize your azure architecture
 
Develop an Infrastructure Cost Optimization Strategy
Develop an Infrastructure Cost Optimization StrategyDevelop an Infrastructure Cost Optimization Strategy
Develop an Infrastructure Cost Optimization Strategy
 
Migrating Existing ASP.NET Web Applications to Microsoft Azure
Migrating Existing ASP.NET Web Applications to Microsoft AzureMigrating Existing ASP.NET Web Applications to Microsoft Azure
Migrating Existing ASP.NET Web Applications to Microsoft Azure
 
Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016Quarterly WSO2 Platform Update Webinar - Q1 2016
Quarterly WSO2 Platform Update Webinar - Q1 2016
 
Cloud computing From Iaas to PaaS to SaaS
Cloud computing From Iaas to PaaS to SaaSCloud computing From Iaas to PaaS to SaaS
Cloud computing From Iaas to PaaS to SaaS
 
Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value  Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value
 
Cloud computing 2
Cloud computing 2Cloud computing 2
Cloud computing 2
 
Open Service Federation Framework
Open Service Federation FrameworkOpen Service Federation Framework
Open Service Federation Framework
 
Azure Services Platform
Azure Services PlatformAzure Services Platform
Azure Services Platform
 

Similar a WSO2 Stratos 2 - Your all in one Cloud Platform

Apache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep diveApache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep diveLakmal Warusawithana
 
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 foundationLakmal Warusawithana
 
Cloud Native PaaS Advantage
Cloud Native PaaS Advantage Cloud Native PaaS Advantage
Cloud Native PaaS Advantage WSO2
 
Enabling Microservices Frameworks to Solve Business Problems
Enabling Microservices Frameworks to Solve  Business ProblemsEnabling Microservices Frameworks to Solve  Business Problems
Enabling Microservices Frameworks to Solve Business ProblemsKen Owens
 
Building a SaaS using WSO2 Stratos
Building a SaaS using WSO2 StratosBuilding a SaaS using WSO2 Stratos
Building a SaaS using WSO2 StratosWSO2
 
Advanced use cases and approaches with stratos paa s
Advanced use cases and approaches with stratos paa sAdvanced use cases and approaches with stratos paa s
Advanced use cases and approaches with stratos paa sWSO2
 
Open Source Middleware for the Cloud: WSO2 Stratos
Open Source Middleware for the Cloud: WSO2 StratosOpen Source Middleware for the Cloud: WSO2 Stratos
Open Source Middleware for the Cloud: WSO2 StratosWSO2
 
Running Magnolia on Jelastic Cloud Hosting
Running Magnolia on Jelastic Cloud HostingRunning Magnolia on Jelastic Cloud Hosting
Running Magnolia on Jelastic Cloud HostingMagnolia
 
Magnolia CMS on Jelastic
Magnolia CMS on JelasticMagnolia CMS on Jelastic
Magnolia CMS on JelasticEdgar Vonk
 
Magnolia CMS - on Jelastic
Magnolia CMS - on JelasticMagnolia CMS - on Jelastic
Magnolia CMS - on JelasticInfo.nl
 
Stratos Grouping
Stratos GroupingStratos Grouping
Stratos GroupingWSO2
 
[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유
[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유
[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유Soowan Lee
 
CloudStack Overview
CloudStack OverviewCloudStack Overview
CloudStack Overviewsedukull
 
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...Amazon Web Services Korea
 
Refactoring Web Services on AWS cloud (PaaS & SaaS)
Refactoring Web Services on AWS cloud (PaaS & SaaS)Refactoring Web Services on AWS cloud (PaaS & SaaS)
Refactoring Web Services on AWS cloud (PaaS & SaaS)IRJET Journal
 
Understanding Platform as a Service
Understanding Platform as a ServiceUnderstanding Platform as a Service
Understanding Platform as a ServicePaul Fremantle
 
Easily Deploy Your Cloud Servers - LayerStack
Easily Deploy Your Cloud Servers - LayerStackEasily Deploy Your Cloud Servers - LayerStack
Easily Deploy Your Cloud Servers - LayerStackLayerStack Cloud
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Similar a WSO2 Stratos 2 - Your all in one Cloud Platform (20)

Apache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep diveApache stratos (incubation) technical deep dive
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
 
Cloud Native PaaS Advantage
Cloud Native PaaS Advantage Cloud Native PaaS Advantage
Cloud Native PaaS Advantage
 
Enabling Microservices Frameworks to Solve Business Problems
Enabling Microservices Frameworks to Solve  Business ProblemsEnabling Microservices Frameworks to Solve  Business Problems
Enabling Microservices Frameworks to Solve Business Problems
 
Building a SaaS using WSO2 Stratos
Building a SaaS using WSO2 StratosBuilding a SaaS using WSO2 Stratos
Building a SaaS using WSO2 Stratos
 
Advanced use cases and approaches with stratos paa s
Advanced use cases and approaches with stratos paa sAdvanced use cases and approaches with stratos paa s
Advanced use cases and approaches with stratos paa s
 
vRA7 What's New
vRA7 What's NewvRA7 What's New
vRA7 What's New
 
Open Source Middleware for the Cloud: WSO2 Stratos
Open Source Middleware for the Cloud: WSO2 StratosOpen Source Middleware for the Cloud: WSO2 Stratos
Open Source Middleware for the Cloud: WSO2 Stratos
 
Running Magnolia on Jelastic Cloud Hosting
Running Magnolia on Jelastic Cloud HostingRunning Magnolia on Jelastic Cloud Hosting
Running Magnolia on Jelastic Cloud Hosting
 
Magnolia CMS on Jelastic
Magnolia CMS on JelasticMagnolia CMS on Jelastic
Magnolia CMS on Jelastic
 
Magnolia CMS - on Jelastic
Magnolia CMS - on JelasticMagnolia CMS - on Jelastic
Magnolia CMS - on Jelastic
 
Stratos Grouping
Stratos GroupingStratos Grouping
Stratos Grouping
 
[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유
[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유
[AWSKRUG 아키텍처 모임] 세일즈부스트 인프라스트럭처 사례 공유
 
CloudStack Overview
CloudStack OverviewCloudStack Overview
CloudStack Overview
 
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...
[AWS Dev Day] 앱 현대화 | DevOps 개발자가 되기 위한 쿠버네티스 핵심 활용 예제 알아보기 - 정영준 AWS 솔루션즈 아키...
 
Refactoring Web Services on AWS cloud (PaaS & SaaS)
Refactoring Web Services on AWS cloud (PaaS & SaaS)Refactoring Web Services on AWS cloud (PaaS & SaaS)
Refactoring Web Services on AWS cloud (PaaS & SaaS)
 
Bigdata meetup dwarak_realtime_score_app
Bigdata meetup dwarak_realtime_score_appBigdata meetup dwarak_realtime_score_app
Bigdata meetup dwarak_realtime_score_app
 
Understanding Platform as a Service
Understanding Platform as a ServiceUnderstanding Platform as a Service
Understanding Platform as a Service
 
Easily Deploy Your Cloud Servers - LayerStack
Easily Deploy Your Cloud Servers - LayerStackEasily Deploy Your Cloud Servers - LayerStack
Easily Deploy Your Cloud Servers - LayerStack
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Más de WSO2

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in ChoreoWSO2
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023WSO2
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzureWSO2
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfWSO2
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in MinutesWSO2
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityWSO2
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...WSO2
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfWSO2
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoWSO2
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsWSO2
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital BusinessesWSO2
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)WSO2
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformationWSO2
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesWSO2
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready BankWSO2
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIsWSO2
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native DeploymentWSO2
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”WSO2
 

Más de WSO2 (20)

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in Choreo
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on Azure
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdf
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos Identity
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdf
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing Choreo
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected Products
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital Businesses
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformation
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking Experiences
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready Bank
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
 

WSO2 Stratos 2 - Your all in one Cloud Platform

  • 1. WSO2 Stratos2:All-in-One Cloud Platform Lakmal Warusawithana(Software Architect) Damitha Kumarage(Senior technical lead)
  • 2.  We start the session with a use case scenario where benefits of moving your applications to Cloud with Stratos2 highlighted  Then we investigate how Stratos2 architectured to provide cloud-native properties like auto-scaling, distributed- dynamically wired, multi-tenant, support self-service, granularly billed and metered and incrementally deployed
  • 4. CLOUD CONTROLLER SFACTIVITY MONITORING BUSINESS Elastic Load Balancer
  • 6. Don’t worry, Let’s learn by example
  • 7. We are a large scale car manufacturing company zcar.com
  • 8. We have a problem !!!
  • 9. Our dealers have their own websites to promote and sell - cars - spare parts But these sites don’t capture all our requirements - don’t contain comprehensive part lists - no uptodate price lists - do not effectively launch our promotions - often contain wrong information related to zcar.com
  • 11. Host zcar.com own multi-tenanted web site for zcar.com dealers. Our tenants are our dealers  Deploy the application in a zcar.com private PaaS  Use Stratos2
  • 13. IaaS to run Stratos2 A devops team to maintain deploy and maintain Stratos2(outsource?) Development team to develop zcar.com application
  • 14. Steps
  • 15. DevOps Tasks  Setup IaaS(Openstack, vCloud, EC2)  Install Puppet Master  Customize Stratos2 puppet manifests  Let there be Stratos2  Let there be an WSO2 application server(AS) cartridge
  • 18. Cartridge Developer Tasks  Develop any custom cartridges required
  • 19. Application Developer Tasks  Develop zcar.com application for app server
  • 20. Tenant(dealer) Tasks  Subscribe to Stratos2 application server cartridge  Deploy the application
  • 24.
  • 26. Does each dealer has separate web application or are they sharing the same application(multi-tenanted)?
  • 27. AS is a multi-tenant cartridge Each tenant get a completely isolated AS environment Each user has his own zcar application running in a AS cluster
  • 28. OK who handle security? Who handle load? Who take backups? Who handle whole lot of other issues that a enterprise application developer(zcar.com developers) need to worry about?
  • 29. That’s why you choose Stratos2 Zcar.com is car business They just know about cars So let them concentrate on their car app Rest is Stratos2
  • 30. Got the picture? Ok let’s see what happen underneath
  • 33. Understanding the Stratos2 Controller 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): takes complete applications and breaks into per-instance components, which are then loaded into instances by Deployment Synchronizer
  • 34. Understanding the Stratos2 Controller Deployment Synchronizer: checks out the right code for an Instance 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
  • 35. ADC
  • 36.
  • 37. Tenant-aware ELB • Fail-over, 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
  • 38. Tenant-aware ELB  Private Jet Mode for tenants  Some tenants load to deploy in a single tenant mode  Allocate entire service clusters for tenants • Cloud Bursting to hybrid clouds
  • 39. Cloud Controller  Heart of Stratos 2.0 Foundation  Is acting as a bridge between application level and IaaS level via Jclouds API.  Enables your system to scale across multiple IaaS providers  Is the central location where the service topology resides
  • 40. Cloud Controller  Responsible for sharing the service topology among Stratos 2.0 core services  Supports hot update and deployment of its configuration files  Currently support AWS EC2 IaaS provider, Openstack Nova IaaS provider and vCloud IaaS provider  Enables cloud burst your system across multiple IaaS providers.
  • 41. Stratos2 Core Services • The Stratos Core Services provide essential capabilities to applications running in Stratos2 Cartridges – Logging-as-a-Service – Data-as-a-Service (MySQL and Cassandra) – Identity-as-a-Service – Registry/Repository (for metadata and config) – Billing and Metering – Storage as a Service(Relational, NoSQL)
  • 42. Identity Server / Service • Each tenant is identified by the @tenant-domain • Each tenant admin can choose to manage their tenants user store either within the Stratos-internal LDAP store or using an external LDAP • Bulk import • Each tenant user has a OpenId/Infocard as well as SAML2 tokens – Single-signon – Single-Signoff is also supported
  • 43. Identity Server / Service • SAML2 is used across the Stratos deployment to ensure a smooth transition (single sign-on) between Stratos services – SAML2 is also available as sign-on for webapps, gadgets and other user-deployed content
  • 44. Stratos2 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
  • 45. Stratos2 Cartridges • A cartridge is a package of code/configuration that plugs into Stratos 2 to offer a new PaaS Service – e.g. Carbon 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 – In Stratos 2 you need a VM Image per IaaS – e.g. need to create both EC2 and LXC image to use on both IaaS
  • 46. Stratos2 Cartridges – A runtime that may (or may not) be optimized to use Stratos Core Services – e.g. Logging, Authn/Authz, Billing and Metering, Registry- based Config – Plus a simple script to deploy code or artifacts • Stratos takes care of: – Spawning instances – Load-balancing and URL Mapping – Autoscaling
  • 47. 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
  • 48. User Roles involved in Cartridge Architecture • Cartridge Users – Per-tenant users or developers – Access deployed applications – Upload applications to the cartridge (optional)
  • 49. 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 xmotors • Then his sub domain url would be http://xmotors.as.zcar.com • If the own domain he provide is xmotors.com then his own domain url would be http://xmotors.com
  • 50.
  • 51. OK now let’s go step further with our zcar.com example
  • 53. Some of the dealers are reluctant to go with the new system because they need some added functionality specific to their region, which is already provided by their existing application Their old system is written in PHP and use database mysql They want part of their old system still accessible to their clients
  • 55. Introduce tenant specific php and mysql cartridges
  • 56. PHP cartridge that ship with Stratos2 is a single- tenanted cartridge MySQL cartridge is also a single tenanted data cartridge that ship with Stratos2
  • 57. Customize php cartridge and mysql cartridge puppet manifests Let there be PHP and MySQL cartridges Subscribe the tenant for these cartridges Upload the dealer apps
  • 58. What if dealer specific app is written in Python. Stratos2 does not ship a Python cartridge yet !!!
  • 59. Simple. Create your own python cartridge. You just need add a new puppet manifest for Python. Rest is for Stratos2. Your cartridge will be dynamically added to Stratos2.
  • 60. Timelines Stratos 2.0 Beta1 Released Stratos 2.0 Beta Soon Stratos 2.0 available Q1 2013 –Including PHP, MySQL, WSO2 service Cartridges –Other cartridges will follow