Organisations are building their applications around microservice architectures because of the flexibility, speed of delivery, and maintainability they deliver. This session introduces you to technologies such as Docker, Kubernetes & Kafka which are driving the microservices revolution. Learn about containers and orchestration – and most importantly how to exploit them for stateful services such as MongoDB.
13. #MDBW16
Alternate Microservices Example
• Much larger Microservices
1. User Account
2. Product Catalog
3. Inventory
4. Orders
• Best practice is each microservice
has its own database
14. “ Conway’s Law
1967
Any organization that designs a system will
inevitably produce a design whose structure is a
copy of the organization's communication
structure.”
19. #MDBW16
VMs vs. Containers
VM VMVM
Bare Metal
Host Operating System
Hypervisor
Guest OS
Libraries
Apps
Service
Guest OS
Libraries
Apps
Service
Guest OS
Libraries
Apps
Service
Container ContainerContainer
Bare Metal
Host Operating System
Docker Engine
Libraries
Libraries
Apps
Libraries
Apps
Service ServiceService
20. #MDBW16
VMs vs. Containers
VM VMVM
Bare Metal
Host Operating System
Hypervisor
Guest OS
Libraries
Apps
Service
Guest OS
Libraries
Apps
Service
Guest OS
Libraries
Apps
Service
Container ContainerContainer
Bare Metal
Host Operating System
Docker Engine
Libraries
Libraries
Apps
Libraries
Apps
Service ServiceService
21. #MDBW16
VMs vs. Containers
VM VMVM
Bare Metal
Host Operating System
Hypervisor
Guest OS
Libraries
Apps
Service
Guest OS
Libraries
Apps
Service
Guest OS
Libraries
Apps
Service
Container ContainerContainer
Bare Metal
Host Operating System
Docker Engine
Libraries
Libraries
Apps
Libraries
Apps
Service ServiceService
22. #MDBW16
Docker
• Simple to use
• 100K+ images on Docker Hub
• Build images from images
• Platforms
• Linux, OS X, Windows
• Laptop, VM, Cloud,…
• Cloud services
35. #MDBW16
Kubernetes
Created by Google, feature-rich and widely
adopted
• Deployment and ‘replication’
• On-line scale out/in
• Rolling upgrades
• High Availability
• Persistence
• Ports
• Load balancing
• Google Compute Engine
36. #MDBW16
Apache Mesos
10,000s of physical servers; used by
Twitter, Airbnb & Apple
• Code (“frameworks) vs. declarative
• Less feature rich than Kubernetes
• Kubernetes as a Mesos framework
• Foundation for distributed systems
• Apache Aurora, Chronos, Marathon
37. #MDBW16
Choosing an Orchestration Framework
• What you have:
• Skills?
• DevOps frameworks?
• Number of hosts?
• Bare metal, VMs, or cloud?
• Lifecycle
• Features
• Automated High Availability?
• Grouping and load balancing?
• As a service??