4. Linux Container Brief for IEEE WG P2302, Boden Russell
Hardware
Hypervisor
Virtual Machine
Operating
System
Bin/Lib
App App
Virtual Machine
Operating
System
Bin/Lib
App App
Hardware
Operating System
Hypervisor
Virtual Machine
Operating
System
Bin/Lib
App App
Virtual Machine
Operating
System
Bin/Lib
App App
Type 1 Hypervisor
(Bare Metal)
Type 2 Hypervisor
Hardware
Operating System
Linux Containers
Container
Bin/Lib
App
Container
Bin/Lib
App
Container Runtime
Virtual Machines Vs Containers
9. WSO2 Reference Architecture for Docker
C 1 C 2 C 3 C 4 C m
DB 1 DB 2 DB X
Persistent Volume
Container Registry
Container Host 1 Container Host 2 Container Host n
Load Balancer
10. 10
● Use a container registry
● Use host port mappings for exposing container ports
● Use a load balancer with health checks
● Configurations are packaged into the container images
● Use persistent volumes for sharing runtime artifacts
● No, cluster discovery
● No, container auto-healing
● No, container auto scaling
Docker based WSO2 Deployments
13. An Introduction to Kubernetes
Borg
Google’s first container
cluster manager
Omega
Google’s second container
cluster manager
Kubernetes
Google’s initiative to build
a general purpose
container cluster manager
15. Overlay Network
WSO2 Reference Architecture for Kubernetes
Pod 1 Pod 2
Service 1
Pod 3 Pod 4 Pod m
Service n
Deployments
Load Balancer
DB 1 DB 2 DB X
Persistent Volume
HPAs
Pod Security Policies
Ingresses
Container Registry
Node1
Node2
Noden
16. 16
● Use a container registry
● Use deployments for pod orchestration
● Use pod security policies for enforcing container security
● Use services for internal routing
● Use ingresses for load balancer configuration
● Use load balancer for external routing
● Use configmaps for configuration management
● Use persistent volumes for sharing runtime artifacts
● Use horizontal pod autoscalers for autoscaling
Kubernetes based WSO2 Deployments
20. OpenShift V3 = Kubernetes + Following;
source code management, builds, deployments, managing container images, team and user tracking
https://docs.openshift.org/latest/architecture/index.html
An Introduction to OpenShift
22. Overlay Network
WSO2 Reference Architecture for OpenShift
Pod 1 Pod 2
Service 1
Pod 3 Pod 4 Pod m
Service n
Deployments
Router
DB 1 DB 2 DB X
Persistent Volume
HPAs
Security Context
Constraints
Routes
Container Registry
Node1
Node2
Noden
23. 23
● Use a container registry
● Use deployments for pod orchestration
● Use security context constraints for enforcing container security
● Use services for internal routing
● Use routes for the router configuration
● Use the router for external routing
● Use configmaps for configuration management
● Use persistent volumes for sharing runtime artifacts
● Use horizontal pod autoscalers for autoscaling
OpenShift based WSO2 Deployments
30. WSO2 Reference Architecture for DC/OS
Overlay Network
Pod 1 Pod 2
Mesos DNS
Pod 3 Pod 4 Pod m
Mesos DNS
Marathon
Applications
Load Balancer
DB 1 DB 2 DB X
Persistent Volume
Container Registry
Node1
Node2
Noden
31. 31
● Use a container registry
● Use Marathon applications for pod orchestration
● Use Mesos DNS for service discovery and internal routing
● Use Marathon application labels for load balancer configuration
● Use the load balancer for external routing
● Use persistent volumes for sharing runtime artifacts
DC/OS based WSO2 Deployments
https://docs.mesosphere.com/1.10/overview/concepts
36. WSO2 Reference Architecture for PCF
C 1 C 2 C 3 C 4 C m
BOSH Releases
PCF Router
DB 1 DB 2 DB X
Persistent Volume
Container Registry
Node1
Node2
Noden
CF Tiles
39. 39
● Use WUM for downloading latest WSO2 product distributions
Use WSO2 Update Manager (WUM)
http://wso2.com/wum
40. Version Control System
Deployment
Load Balancer(s)
Profiles
ProfilesWSO2 Server
Instances
WSO2 Product
Distributions
Deployable WSO2
Product Distributions
Infrastructure
Version Control System
Configuaration Files
Deployable
Artifacts
WSO2 Update
Manager (WUM)
Extensions
Updates
Updated WSO2
Product Distributions
Customizations
Deployment Process - Approach 1
41. Deployment Process - Approach 2
Version Control System
Deployment
Load Balancer(s)
Profiles
ProfilesWSO2 Server
Instances
WSO2 Product
Distributions
Configuration
Management System
Infrastructure
Version Control System
Configuration
Management System
Files
Deployable
Artifacts
WSO2 Update
Manager (WUM)
Extensions
Updates
Updated WSO2
Product Distributions
Customizations