wso2 cloud and platform as a service strategy
TRANSCRIPT
WSO2 Cloud & Platform as a Service Strategy
Imesh GunaratneSoftware Architect, WSO2
Agenda
• WSO2 Cloud• WSO2 Managed Cloud• WSO2 Platform as a Service Solutions
– Kubernetes– OpenShift– Mesos DC/OS– Cloud Foundry
WSO2 Cloud
WSO2 Cloud
API Cloud
Device Cloud
App Cloud
Identity CloudAnalytics Cloud
Integration Cloud
Cloud image source: Freepik
The WSO2 public cloud offering for hosting applications, managing APIs, integrations, analytics, identity and devices.
Application Hosting - App Cloud (Beta)
Application Hosting - App Cloud (Beta)
Application Hosting - App Cloud (Beta)
Application Hosting - App Cloud (Beta)
API Hosting - API Cloud
API Hosting - API Cloud
API Hosting - API Cloud
API Hosting - API Cloud
API Hosting - API Cloud
Integration Cloud - Coming Up
Integration Cloud - Coming Up
Integration Cloud - Coming Up
Integration Cloud - Coming Up
WSO2 Managed Cloud
WSO2 Managed Cloud
On Premise Data Center
US East | US West | EU | Asia Pacific | South America
Hosted and managed by WSO2
Datacenter icon source: Martial Red
WSO2 Platform as a Service Solutions
WSO2 PaaS Solutions
PaaS solutions certified by WSO2 for deploying WSO2 middleware
Problems Solved • Configuration management• Virtual machine/container image creation• Deployment automation• Carbon cluster discovery• Internal/external load balancing• Rolling out updates
Deploying WSO2 Middleware on Kubernetes
An Introduction to Kubernetes
BorgGoogle’s first container
cluster manager
OmegaGoogle’s second container
cluster manager
KubernetesGoogle’s initiative to build
a general purpose container cluster manager
An Introduction to Kubernetes
Reference Architecture 1 for Kubernetes
Pod 1 Pod 2
Manager Cluster Services
Pod 3 Pod 4 Pod n
Worker Cluster Services
Manager Replication Controller
Worker Replication Controller
Client
Gov Reg
Conf Reg
User Store
Reference Architecture 2 for Kubernetes
Pod 1
Gateway Mgr Services
Pod 2 Pod 3
Gateway Worker Services
Client
Pod 4 Pod 5
Key Manager Services
Pod 6 Pod 7
Store Services
Gateway Mgr RC
Gateway Worker RC
Key Manager RC
Store RCGov Reg
Conf Reg
User Store
API-M DB
A volume mount for synchronizing API artifacts
Pod 8 Pod 9
Publisher Services
Publisher RC
Monitoring Kubernetes Cluster Health
The Solution Stack for Kubernetes
Configuration Management WSO2 Puppet modules:https://github.com/wso2/puppet-modules
Virtual Machine/Container images
WSO2 Dockerfiles:https://github.com/wso2/dockerfiles
Deployment Automation Replication controllers, services, bash scripts: https://github.com/wso2/kubernetes-artifacts
Cluster Discovery WSO2 Kubernetes membership scheme:https://github.com/wso2/kubernetes-artifacts
Internal/External Load Balancing
Services, service load balancers:https://github.com/wso2/kubernetes-artifacts
Deploying WSO2 Middleware on OpenShift
An Introduction to OpenShift
OpenShift V3 = Kubernetes + Following; source code management, builds, deployments, managing container images, team and user tracking
https://docs.openshift.org/latest/architecture/index.html
OpenShift Dashboard
The Solution Stack for OpenShift
Configuration Management WSO2 Puppet modules:https://github.com/wso2/puppet-modules
Virtual Machine/Container images
WSO2 Dockerfiles:https://github.com/wso2/dockerfiles
Deployment Automation Replication controllers, services, bash scripts: https://github.com/wso2/kubernetes-artifacts
Cluster Discovery WSO2 Kubernetes membership scheme:https://github.com/wso2/kubernetes-artifacts
Internal/External Load Balancing
Services, service load balancers:https://github.com/wso2/kubernetes-artifacts
Deploying WSO2 Middleware on Mesos DC/OS
An Introduction to Apache Mesos
Image source: Anton Kirillov, Data processing platforms architectures [1]
An Introduction to Mesos DC/OS
Cluster Manager
PaaS UI | CLI | Package RepositoryBatch Job Scheduler
Mesos DC/OS Dashboard
Reference Architecture for Mesos DC/OS
C 1 C 2
Manager Marathon Applicatio
C 3 C 4 C n
Worker Marathon Application
Marathon Load Balancer
Gov Reg
Conf Reg
User Store
Client
Manager Marathon Application
Worker Marathon Application
The Solution Stack for Mesos DC/OS
Configuration Management WSO2 Puppet modules:https://github.com/wso2/puppet-modules/tree/mesos-platform-dev
Virtual Machine/Container images
WSO2 Dockerfiles:https://github.com/wso2/dockerfiles
Deployment Automation Marathon applications, bash scripts:https://github.com/wso2-incubator/mesos-artifacts
Cluster Discovery WSO2 Mesos membership scheme:https://github.com/wso2-incubator/mesos-artifacts
Internal/External Load Balancing
Marathon load balancer:https://github.com/wso2-incubator/mesos-artifacts
Deploying WSO2 Middleware on Cloud Foundry
An Introduction to Cloud Foundry
An Introduction to Cloud Foundry
Limitations in the Current Architecture
• A container can only expose one transport/port. • Only HTTP traffic can be routed via the router.• SSL get terminated at the router.• Internal routing rules cannot be defined.• Autoscaling can only be done based on CPU usage.
Warning icon source: http://www.flaticon.com/free-icon/warning-triangle_10190
Reference Architecture for Cloud Foundry
C 1 C 2
Manager Marathon Applicatio
C 3 C 4 C n
Worker Marathon Application
CF Router
Gov Reg
Conf Reg
User Store
Client
Manager CF Application
Worker CF Application
Deployment Architecture
Cloud Foundry Dashboard
Cloud Foundry Analytics
The Solution Stack for Cloud Foundry
Configuration Management WSO2 Puppet modules:https://github.com/wso2/puppet-modules
Virtual Machine/Container images
Not required (managed by CF)
Deployment Automation CF applications + binary buildpack:cf push wso2esb -c "/bin/bash bin/wso2server.sh" -b https://github.com/cloudfoundry/binary-buildpack.git
Cluster Discovery WSO2 Cloud Foundry membership scheme:https://github.com/isurulucky/cloudfoundry-membership-scheme-for-carbon
Internal/External Load Balancing
CF router, Nginx
References
[1] Anton Kirillov, Data Processing Platforms Architectures: http://www.slideshare.net/akirillov/data-processing-platforms-architectures-with-spark-mesos-akka-cassandra-and-kafka
Thank You!
#WSO2ConEU
Share your feedback for this session
wso2con.com/app