SlideShare une entreprise Scribd logo
1  sur  30
Télécharger pour lire hors ligne
Multi-Tenant SOA Middleware for
        Cloud Computing


                    July 2010
                    Srinath Perera, Ph.D.,
                    Architect, WSO2 Inc.
Outline
●   What does a Cloud Native Platform needs?
●   Multi-tenancy
●   Challenges of Multi-tenancy
●   Carbon Platform
●   Multi-tenancy Architecture
●   Stratos
●   Conclusion
Outsourcing IT through Cloud




●   Ideally users want to just outsources their non-
    competitive IT parts.
●   They want to buy IT aspects as a Utility (like
    water or electricity), making Niclous Carr's “IT
    does not matter” prediction a reality
Cloud Computing
For end-users




For developers, integrators, architects




For infrastructure specialists
What does Cloud a Native Platform
                  Needs(1/2)?
●   Distributed/Dynamically Wired (works properly in
    the cloud)
    –   Supports deploying in a dynamically sized cluster
    –   Finds services across applications even when they
        move
●   Elastic (Uses the cloud efficiently)
    –   Scales up and down as needed
    –   Works with the underlying IaaS
●   Multi-tenant (Only costs when you use it)
    –   Virtual isolated instances with near zero incremental
        cost
    –   Implies you have a proper identity model
What does Cloud a Native Platform
                  Needs(1/2)?
●   Self-service (in the hands of users)
    –   De-centralized creaton and management of tenants
    – Automated Governance across tenants
●   Granularly Billed and Metered (pay for just what
    you use)
    –  Allocate costs to exactly who uses them
●   Incrementally Deployed and Tested (seamless live
    upgrades)
    –   Supports contnuous update, side-by-side operaton, in-
        place testng and incremental producton
What Multi-tenancy ?




●   Many Parties shared same set of resources,
    while giving each an his own space
Multi-tenancy is for Maximizing
            Resource Sharing
●   Possible SaaS Implementations
       –   First generation: Machine for User
       –   Second Generation: VM per User
       –   Third Generation: Using multi-tenancy to share
            same server/machine/VM across users.
                                                    rd
●
    Efficient implementations of SaaS needs 3
    generation multi-tenancy
Multi-tenant SOA Platform
●   Data multi-tenancy is great – most of the focus
    has been there
●   But we need multi-tenancy in other layers as
    well.
        –   E.g. Google apps provides a Servelt as a
              Service.
●   Mosts apps, SOA handles most
    logic/executions. A Multi-tenant SOA platform
    will ease the development of Apps as a Service
    to a greater extent.
To Understand Multi-tenant SOA
   platform, you have to first
 understand Our SOA Platform
WSO2 Carbon Platform
WSO2 Carbon Platform
Our Goal
●   Developing an architecture to provide SOA
    Container (s)/ Platform as a Service.
●   Let users run their single tenet apps (Services,
    Business processes, Web applications,
    Mediation logic, Rules etc. ) in this multi-tenant
    environment without any change.
Understanding Multi-tenancy
●   Goal of multi-tenancy is to provide different users
    of the system (which we shall call tenants)
    isolation in each of these spaces while
    maximizing resource sharing.
●   Resource sharing and isolation are a tradeoff.
●   Furthermore, Chang et al. [4] has proposed three
    properties for multi-tenancy in addition to
    isolation:
        –   Scalable,
        –   Multi-tenant-efficient: same instance hosts
             multiple tenants
        –   configurable.
Challenges of Multi-tenancy
●   Isolation between tenants
●   Admin view vs tenants views and programming
    model, maximum configuration without
    compromising isolation.
●   Scalability: multi-tenancy tend to accumulate
    load so it has to be scalable.
SOA Multi-tenancy




●   We break multi-tenancy at SOA in to three parts (Based on
    Chang et al.).
         –   Execution: Business Processes, Workflows and Mashups
         –   Security: ownership and authorization of both data, as well as
               executions in the framework
         –   Data
Multi-tenancy Architecture
Achieving Tenant Isolation




●   Each Tenant is given a Security Domain
●   Each domain may have its own User Store and Permissions,
    thus have a set of users and permissions enabling users to access
    resources
●   Each domain is isolated and do not have access to other
    domains
Achieving Data Isolation
●   All data access to the Carbon platform is done
    through Registry interface.
●   At Multi-tenant environments, system loads with
    multi-tenant implementation of the registry,
    which enforces isolation
●   Multi-tenancy options at Database level
    ●   Separate database
    ●   Separate tables
    ●   Shared tables ** [We use this]
Achieving Execution Isolation




●   All executions are based on Axis2
●   Axis2 have stateless executions and keep all state in a
    Context.
●   So if we create different context for each tenant, they
    are isolated.
Achieving Execution Isolation (Contd.)
Extending this to Products
Extending this to Products
●   WSAS (Web Services Application Server) ,
    Registry, Identity Server directly get Multi-
    tenancy once security, data, and execution,
●   BPS keeps all the data either in Context or in
    registry, and each tenet see a specific view.
●   Some products need some work, but in general
    they are implemented using registry for data
    and services for executions So the
    aforementioned model covers most usecases.
Performance
WSO2 Stratos
http://cloud.wso2.com
AppServer
Open Questions/Challenges
●   Scaling Up beyond simple Clustering: Tenant partitioning
    strategy combined with tenant aware load balancing
●   Archival Formats that describe applications that uses
    different parts of the SOA (Services, BPEL, Workflows,
    Rules, CEP etc).
●   Bringing in discovery: WS-Discovery based deployment
●   Monitoring and Managing Stratos Deployment
●   Making Sessions work with Scalability Solutions
●   Tenant-aware JDBC driver
●   Supporting Hybrid Cloud Architectures, and on demand
    scaling out to Public Cloud.
●   Incremental deployment and versioning
Conclusion
●   We discussed an architecture to enable multi-
    tenancy in an SOA platform
●   We discussed how architecture handle three
    aspects, Security, data, and execution and how
    those three aspects can yield a Multi-tenet SOA
    platform
More Info
   Corporate website: http://wso2.com


   Developer portal: http://wso2.org


   Business development team: bizdev@wso2.com
   srinath@wso2.com

Contenu connexe

Tendances

Build a Cloud Day - CloudStack
Build a Cloud Day - CloudStackBuild a Cloud Day - CloudStack
Build a Cloud Day - CloudStackke4qqq
 
Virtualization&cloud computing
Virtualization&cloud computingVirtualization&cloud computing
Virtualization&cloud computingssuser7b6236
 
Introducing the WSO2 Elastic Load Balancer
Introducing the WSO2 Elastic Load BalancerIntroducing the WSO2 Elastic Load Balancer
Introducing the WSO2 Elastic Load BalancerWSO2
 
Study and implementation a cloud solution based on
Study and implementation a cloud solution based onStudy and implementation a cloud solution based on
Study and implementation a cloud solution based onDendani Bilal
 
WSO2Con ASIA 2016: Deployment Patterns and Capacity Planning
WSO2Con ASIA 2016: Deployment Patterns and Capacity PlanningWSO2Con ASIA 2016: Deployment Patterns and Capacity Planning
WSO2Con ASIA 2016: Deployment Patterns and Capacity PlanningWSO2
 
SECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTING
SECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTINGSECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTING
SECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTINGTannishtha Sengupta
 
Hadoop on Dockers
Hadoop on DockersHadoop on Dockers
Hadoop on DockersRajiv Kumar
 
OpenStack as an Infrastructure
OpenStack as an InfrastructureOpenStack as an Infrastructure
OpenStack as an InfrastructureRoozbeh Shafiee
 
Cloud Computing Platform-CloudStack
Cloud Computing Platform-CloudStackCloud Computing Platform-CloudStack
Cloud Computing Platform-CloudStackArcadian Learning
 
Cloud And Virtualization To Support Grid Infrastructures
Cloud And Virtualization To Support Grid InfrastructuresCloud And Virtualization To Support Grid Infrastructures
Cloud And Virtualization To Support Grid InfrastructuresIgnacio M. Llorente
 
Mastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesMastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesRoozbeh Shafiee
 
Taking the open cloud to 11
Taking the open cloud to 11Taking the open cloud to 11
Taking the open cloud to 11Joe Brockmeier
 
OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...
OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...
OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...NETWAYS
 
tcp cloud - Advanced Cloud Computing
tcp cloud - Advanced Cloud Computingtcp cloud - Advanced Cloud Computing
tcp cloud - Advanced Cloud ComputingMarketingArrowECS_CZ
 

Tendances (20)

Build a Cloud Day - CloudStack
Build a Cloud Day - CloudStackBuild a Cloud Day - CloudStack
Build a Cloud Day - CloudStack
 
Virtualization&cloud computing
Virtualization&cloud computingVirtualization&cloud computing
Virtualization&cloud computing
 
Introducing the WSO2 Elastic Load Balancer
Introducing the WSO2 Elastic Load BalancerIntroducing the WSO2 Elastic Load Balancer
Introducing the WSO2 Elastic Load Balancer
 
Study and implementation a cloud solution based on
Study and implementation a cloud solution based onStudy and implementation a cloud solution based on
Study and implementation a cloud solution based on
 
WSO2Con ASIA 2016: Deployment Patterns and Capacity Planning
WSO2Con ASIA 2016: Deployment Patterns and Capacity PlanningWSO2Con ASIA 2016: Deployment Patterns and Capacity Planning
WSO2Con ASIA 2016: Deployment Patterns and Capacity Planning
 
Cloud computing-m3-private-slides
Cloud computing-m3-private-slidesCloud computing-m3-private-slides
Cloud computing-m3-private-slides
 
cloud computing ppt
cloud computing pptcloud computing ppt
cloud computing ppt
 
SECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTING
SECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTINGSECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTING
SECURITY, VIRTUALISATION AND INTEGRITY IN CLOUD COMPUTING
 
Hadoop on Dockers
Hadoop on DockersHadoop on Dockers
Hadoop on Dockers
 
OpenStack as an Infrastructure
OpenStack as an InfrastructureOpenStack as an Infrastructure
OpenStack as an Infrastructure
 
Cloud Computing Platform-CloudStack
Cloud Computing Platform-CloudStackCloud Computing Platform-CloudStack
Cloud Computing Platform-CloudStack
 
Cloud And Virtualization To Support Grid Infrastructures
Cloud And Virtualization To Support Grid InfrastructuresCloud And Virtualization To Support Grid Infrastructures
Cloud And Virtualization To Support Grid Infrastructures
 
vm provisioning
vm provisioningvm provisioning
vm provisioning
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Mastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesMastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple Architectures
 
Taking the open cloud to 11
Taking the open cloud to 11Taking the open cloud to 11
Taking the open cloud to 11
 
OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...
OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...
OSDC 2012 | OpenNebula Open Source Toolkit for DataCenter Virtualization by C...
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Dbms
DbmsDbms
Dbms
 
tcp cloud - Advanced Cloud Computing
tcp cloud - Advanced Cloud Computingtcp cloud - Advanced Cloud Computing
tcp cloud - Advanced Cloud Computing
 

Similaire à Multi-Tenant SOA Middleware for Cloud Computing

Multi-Tenant SOA Middleware for Cloud Computing
Multi-Tenant SOA Middleware for Cloud ComputingMulti-Tenant SOA Middleware for Cloud Computing
Multi-Tenant SOA Middleware for Cloud ComputingSrinath Perera
 
[WSO2Con Asia 2018] Architecting for Container-native Environments
[WSO2Con Asia 2018] Architecting for Container-native Environments[WSO2Con Asia 2018] Architecting for Container-native Environments
[WSO2Con Asia 2018] Architecting for Container-native EnvironmentsWSO2
 
Multi tenancy - Wining formula for a PaaS
Multi tenancy - Wining formula for a PaaSMulti tenancy - Wining formula for a PaaS
Multi tenancy - Wining formula for a PaaSWSO2
 
Understanding Platform as a Service
Understanding Platform as a ServiceUnderstanding Platform as a Service
Understanding Platform as a ServicePaul Fremantle
 
A Multi-tenant Architecture for Business Process Executions
A Multi-tenant Architecture for Business Process ExecutionsA Multi-tenant Architecture for Business Process Executions
A Multi-tenant Architecture for Business Process ExecutionsSrinath Perera
 
A Multi-tenant Architecture for Business Process Execution
A Multi-tenant Architecture for Business Process ExecutionA Multi-tenant Architecture for Business Process Execution
A Multi-tenant Architecture for Business Process ExecutionSrinath Perera
 
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...Lightbend
 
Introduction to Google Cloud & GCCP Campaign
Introduction to Google Cloud & GCCP CampaignIntroduction to Google Cloud & GCCP Campaign
Introduction to Google Cloud & GCCP CampaignGDSCVJTI
 
Multi-tenancy: Winning formula for a PaaS
Multi-tenancy: Winning formula for a PaaSMulti-tenancy: Winning formula for a PaaS
Multi-tenancy: Winning formula for a PaaSSrinath Perera
 
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
 
Multi Tenancy In The Cloud
Multi Tenancy In The CloudMulti Tenancy In The Cloud
Multi Tenancy In The Cloudrohit_ainapure
 
Cloud computing
Cloud computingCloud computing
Cloud computingRam Sharma
 
Openstack - Enterprise cloud management platform
Openstack - Enterprise cloud management platformOpenstack - Enterprise cloud management platform
Openstack - Enterprise cloud management platformNagaraj Shenoy
 
Comparisons of the most famous container Orchestrators
Comparisons of the most famous container OrchestratorsComparisons of the most famous container Orchestrators
Comparisons of the most famous container OrchestratorsThierry Gayet
 
Cloud architecture
Cloud architectureCloud architecture
Cloud architectureAdeel Javaid
 
Cpp In Soa
Cpp In SoaCpp In Soa
Cpp In SoaWSO2
 
Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-CloudInterop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-CloudSusan Wu
 

Similaire à Multi-Tenant SOA Middleware for Cloud Computing (20)

Multi-Tenant SOA Middleware for Cloud Computing
Multi-Tenant SOA Middleware for Cloud ComputingMulti-Tenant SOA Middleware for Cloud Computing
Multi-Tenant SOA Middleware for Cloud Computing
 
[WSO2Con Asia 2018] Architecting for Container-native Environments
[WSO2Con Asia 2018] Architecting for Container-native Environments[WSO2Con Asia 2018] Architecting for Container-native Environments
[WSO2Con Asia 2018] Architecting for Container-native Environments
 
Multi tenancy - Wining formula for a PaaS
Multi tenancy - Wining formula for a PaaSMulti tenancy - Wining formula for a PaaS
Multi tenancy - Wining formula for a PaaS
 
IoT Cloud Overview
IoT Cloud OverviewIoT Cloud Overview
IoT Cloud Overview
 
Understanding Platform as a Service
Understanding Platform as a ServiceUnderstanding Platform as a Service
Understanding Platform as a Service
 
A Multi-tenant Architecture for Business Process Executions
A Multi-tenant Architecture for Business Process ExecutionsA Multi-tenant Architecture for Business Process Executions
A Multi-tenant Architecture for Business Process Executions
 
A Multi-tenant Architecture for Business Process Execution
A Multi-tenant Architecture for Business Process ExecutionA Multi-tenant Architecture for Business Process Execution
A Multi-tenant Architecture for Business Process Execution
 
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
Modernizing Applications with Microservices and DC/OS (Lightbend/Mesosphere c...
 
Introduction to Google Cloud & GCCP Campaign
Introduction to Google Cloud & GCCP CampaignIntroduction to Google Cloud & GCCP Campaign
Introduction to Google Cloud & GCCP Campaign
 
Multi-tenancy: Winning formula for a PaaS
Multi-tenancy: Winning formula for a PaaSMulti-tenancy: Winning formula for a PaaS
Multi-tenancy: Winning formula for a PaaS
 
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
 
Multi Tenancy In The Cloud
Multi Tenancy In The CloudMulti Tenancy In The Cloud
Multi Tenancy In The Cloud
 
Adopting the Cloud
Adopting the CloudAdopting the Cloud
Adopting the Cloud
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Openstack - Enterprise cloud management platform
Openstack - Enterprise cloud management platformOpenstack - Enterprise cloud management platform
Openstack - Enterprise cloud management platform
 
Comparisons of the most famous container Orchestrators
Comparisons of the most famous container OrchestratorsComparisons of the most famous container Orchestrators
Comparisons of the most famous container Orchestrators
 
Cloud architecture
Cloud architectureCloud architecture
Cloud architecture
 
Cloud-Computing
Cloud-ComputingCloud-Computing
Cloud-Computing
 
Cpp In Soa
Cpp In SoaCpp In Soa
Cpp In Soa
 
Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-CloudInterop ITX: Moving applications: From Legacy to Cloud-to-Cloud
Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
 

Plus 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
 

Plus 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”
 

Multi-Tenant SOA Middleware for Cloud Computing

  • 1. Multi-Tenant SOA Middleware for Cloud Computing July 2010 Srinath Perera, Ph.D., Architect, WSO2 Inc.
  • 2. Outline ● What does a Cloud Native Platform needs? ● Multi-tenancy ● Challenges of Multi-tenancy ● Carbon Platform ● Multi-tenancy Architecture ● Stratos ● Conclusion
  • 3. Outsourcing IT through Cloud ● Ideally users want to just outsources their non- competitive IT parts. ● They want to buy IT aspects as a Utility (like water or electricity), making Niclous Carr's “IT does not matter” prediction a reality
  • 4. Cloud Computing For end-users For developers, integrators, architects For infrastructure specialists
  • 5. What does Cloud a Native Platform Needs(1/2)? ● Distributed/Dynamically Wired (works properly in the cloud) – Supports deploying in a dynamically sized cluster – Finds services across applications even when they move ● Elastic (Uses the cloud efficiently) – Scales up and down as needed – Works with the underlying IaaS ● Multi-tenant (Only costs when you use it) – Virtual isolated instances with near zero incremental cost – Implies you have a proper identity model
  • 6. What does Cloud a Native Platform Needs(1/2)? ● Self-service (in the hands of users) – De-centralized creaton and management of tenants – Automated Governance across tenants ● Granularly Billed and Metered (pay for just what you use) – Allocate costs to exactly who uses them ● Incrementally Deployed and Tested (seamless live upgrades) – Supports contnuous update, side-by-side operaton, in- place testng and incremental producton
  • 7. What Multi-tenancy ? ● Many Parties shared same set of resources, while giving each an his own space
  • 8. Multi-tenancy is for Maximizing Resource Sharing ● Possible SaaS Implementations – First generation: Machine for User – Second Generation: VM per User – Third Generation: Using multi-tenancy to share same server/machine/VM across users. rd ● Efficient implementations of SaaS needs 3 generation multi-tenancy
  • 9. Multi-tenant SOA Platform ● Data multi-tenancy is great – most of the focus has been there ● But we need multi-tenancy in other layers as well. – E.g. Google apps provides a Servelt as a Service. ● Mosts apps, SOA handles most logic/executions. A Multi-tenant SOA platform will ease the development of Apps as a Service to a greater extent.
  • 10. To Understand Multi-tenant SOA platform, you have to first understand Our SOA Platform
  • 13. Our Goal ● Developing an architecture to provide SOA Container (s)/ Platform as a Service. ● Let users run their single tenet apps (Services, Business processes, Web applications, Mediation logic, Rules etc. ) in this multi-tenant environment without any change.
  • 14. Understanding Multi-tenancy ● Goal of multi-tenancy is to provide different users of the system (which we shall call tenants) isolation in each of these spaces while maximizing resource sharing. ● Resource sharing and isolation are a tradeoff. ● Furthermore, Chang et al. [4] has proposed three properties for multi-tenancy in addition to isolation: – Scalable, – Multi-tenant-efficient: same instance hosts multiple tenants – configurable.
  • 15. Challenges of Multi-tenancy ● Isolation between tenants ● Admin view vs tenants views and programming model, maximum configuration without compromising isolation. ● Scalability: multi-tenancy tend to accumulate load so it has to be scalable.
  • 16. SOA Multi-tenancy ● We break multi-tenancy at SOA in to three parts (Based on Chang et al.). – Execution: Business Processes, Workflows and Mashups – Security: ownership and authorization of both data, as well as executions in the framework – Data
  • 18. Achieving Tenant Isolation ● Each Tenant is given a Security Domain ● Each domain may have its own User Store and Permissions, thus have a set of users and permissions enabling users to access resources ● Each domain is isolated and do not have access to other domains
  • 19. Achieving Data Isolation ● All data access to the Carbon platform is done through Registry interface. ● At Multi-tenant environments, system loads with multi-tenant implementation of the registry, which enforces isolation ● Multi-tenancy options at Database level ● Separate database ● Separate tables ● Shared tables ** [We use this]
  • 20. Achieving Execution Isolation ● All executions are based on Axis2 ● Axis2 have stateless executions and keep all state in a Context. ● So if we create different context for each tenant, they are isolated.
  • 22. Extending this to Products
  • 23. Extending this to Products ● WSAS (Web Services Application Server) , Registry, Identity Server directly get Multi- tenancy once security, data, and execution, ● BPS keeps all the data either in Context or in registry, and each tenet see a specific view. ● Some products need some work, but in general they are implemented using registry for data and services for executions So the aforementioned model covers most usecases.
  • 28. Open Questions/Challenges ● Scaling Up beyond simple Clustering: Tenant partitioning strategy combined with tenant aware load balancing ● Archival Formats that describe applications that uses different parts of the SOA (Services, BPEL, Workflows, Rules, CEP etc). ● Bringing in discovery: WS-Discovery based deployment ● Monitoring and Managing Stratos Deployment ● Making Sessions work with Scalability Solutions ● Tenant-aware JDBC driver ● Supporting Hybrid Cloud Architectures, and on demand scaling out to Public Cloud. ● Incremental deployment and versioning
  • 29. Conclusion ● We discussed an architecture to enable multi- tenancy in an SOA platform ● We discussed how architecture handle three aspects, Security, data, and execution and how those three aspects can yield a Multi-tenet SOA platform
  • 30. More Info  Corporate website: http://wso2.com  Developer portal: http://wso2.org  Business development team: bizdev@wso2.com  srinath@wso2.com