Multitenancy in WSO2 Carbon 5 (C5)

11
Multitenancy in C5 Container based tenant isolation Imesh Gunaratne Senior Technical Lead, WSO2

Transcript of Multitenancy in WSO2 Carbon 5 (C5)

Page 1: Multitenancy in WSO2 Carbon 5 (C5)

Multitenancy in C5Container based tenant isolation

Imesh GunaratneSenior Technical Lead, WSO2

Page 2: Multitenancy in WSO2 Carbon 5 (C5)

Agenda● An Introduction to Multitenancy● Multitenancy Architecture in C4● A Multitenant Carbon Server Cluster in C4● Multitenancy Architecture in C5● Carbon Server Clusters in C5● Kubernetes Namespaces● Multitenancy in C5 with Kubernetes● Accessing Carbon Clusters in Kubernetes

Page 3: Multitenancy in WSO2 Carbon 5 (C5)

Multitenancy

Multitenancy is a reference to the mode of operation of software where multiple independent instances of one or multiple applications operate in a shared environment - Gartner

http://www.gartner.com/it-glossary/multitenancy

Page 4: Multitenancy in WSO2 Carbon 5 (C5)

Multitenancy Architecture in C4https://hostname:port/t/foo.com/services/baz

https://hostname:port/t/bar.com/services/baz

Tenant 1

Users

Execution

Data

Users

Execution

Data

Tenant 2

Carbon Server JVM

https://docs.wso2.com/display/Carbon420/Multitenancy

Page 5: Multitenancy in WSO2 Carbon 5 (C5)

A Multitenant Carbon Server Cluster in C4

Load Balancer

Carbon Server JVM 1 Carbon Server JVM 2 Carbon Server JVM n

Page 6: Multitenancy in WSO2 Carbon 5 (C5)

Multitenancy Architecture in C5https://hostname:port/services/baz https://hostname:port/services/baz

Tenant 1

Users

Execution

Data

Carbon Server JVM 1

Tenant 2

Users

Execution

Data

Carbon Server JVM 2

Page 7: Multitenancy in WSO2 Carbon 5 (C5)

Carbon Server Clusters in C5

Load Balancer 1 Load Balancer 2

Tenant 1 Carbon Cluster Tenant 2 Carbon Cluster

Page 8: Multitenancy in WSO2 Carbon 5 (C5)

Kubernetes Namespaces

Namespace A Namespace B Namespace X

Kubernetes Cluster

P1RC P2 Pb

S1 SaHPA

RC

HPA

SLB

P1RC P2 Pd

S1 ScHPA

RC

HPA

SLB

P1RC P2 Pf

S1 SeHPA

RC

HPA

SLB

Page 9: Multitenancy in WSO2 Carbon 5 (C5)

Multitenancy in C5 with Kubernetes

Tenant 1 Namespace Tenant 2 Namespace

Service - BarService - Foo

RC

HPA

SLB SLB

RC

HPA

Kubernetes Cluster

Page 10: Multitenancy in WSO2 Carbon 5 (C5)

Accessing Carbon Clusters in Kubernetes

● Using services via nodes○ https://<node-ip>:<service-node-port>/

● Using ingress/service load balancers (slb)○ Access via nodes

■ https://<node-ip>:<slb-port>/○ K8S SDN connected to LAN/WAN

■ https://<slb-ip>:<slb-port>/ ● Using kube-api server

○ https://<kubernetes-master>:<api-server-port>/api/v1/proxy/namespaces/<namespace>/services/<service-name>/http://kubernetes.io/docs/user-guide/services/

Page 11: Multitenancy in WSO2 Carbon 5 (C5)

Thank you!