Presented at DockerCon 2018 EU, I go through using Docker and the Swarm Orchestrator (a simpler Kuberentes) to stack different tools up from the base OS to a full-featured production server cluster. Also, Sci-Fi. The Video to this deck will be at https://www.bretfisher.com/docker once they are posted.
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Building Your Docker Swarm Tech Stack
1. BRET FISHER
Docker Captain, DevOps Dude,
Author of Docker Mastery
Building Your Swarm Tech Stack
bretfisher.com/dockercon18
@bretfisher
2. People ask "Where's my LAMP for container clusters?"
Your solutions will be a "stack" of infrastructure tools
Cloud-native container tools are new
We need patterns and examples of full cluster stacks
Problem: No Server Tool Lives In Isolation
3. Build examples of full-ish stacks on different tools
Options for solo to medium-sized DevOps/Ops teams
Use Docker Swarm latest stable as orchestrator
Limit cloud vendor lock-in*
4 Goals for Today
* Lock-in: A service I can't swap out in my server stack
4. The Duality of Container Infrastructure
“It was the best of times,
it was the worst of times,
it was the age of wisdom,
it was the age of foolishness,
it was the epoch of belief,
it was the epoch of incredulity...”
Charles Dickens
A Tale of Two Cities, 1859
17. Cloud agnostic, minimal infra
Apps auto-recover on node fail
Incoming TLS
Centralized logging
Centralized monitoring
Healthcheck all containers
Infra Requirements of dogvs.cat
Performance auto-scaling
Self-healing nodes
Support serverless functions
Services highly available
Han Solo Requirements Optional Requirements for Later
18. 3+ Droplets (Ubuntu 18.04)
Block Storage (Volumes)
Load Balancer (incoming HTTP)
Digital Ocean dogvs.cat
Services Needed for High Availability
39. Our Apps using Docker App
docker-app deploy dogvscat/ghost:0.1.0
docker-app deploy dogvscat/voting:0.1.0
docker-app deploy dogvscat/menu:0.1.0
* Go check it out at github.com/docker/app
40. Security?
host setup scanning: Docker Bench
image scanning: Aqua Microscanner
behavior monitoring: Sysdig Falco
user namespaces
42. Complex Infrastructure, Harder Deployment
"How can I deploy many multi-tier
app on a many servers, with all the
b e l l s a n d w h i s t l e s o f H A
orchestration, have load balancing
at all levels, with failover and
auto recovery?"
Amazonian
Team
49. Docker EE on AWS Stack
HW / OS Terraform + Ansible + AWS
Runtime Docker EE
Orchestration Docker Swarm
Networking Docker Swarm Overlay
Storage Docker Cloudstor EBS/EFS
Layer 7 Proxy HTTP Routing Mesh (Interlock+Nginx)
Registry Docker EE DTR
Central Logging AWS Cloudwatch Logs
Central Monitoring AWS Cloudwatch + Telegraph
Swarm GUI Docker EE UCP
50. Summary
Infrastructure as code, make everything repeatable
No "special" nodes, use remote management
Grow as you go, assume you'll resize
Look for compose files of popular tools to make stacks
Don't throw out the good in search of the perfect
51. Where to Go From Here
Automating Docker Enterprise 5:25 this room
Mission-Critical Migration to Multi-Cluster Kubernetes
Wed 2pm room 113
Swarm Intro Workshop
Today 4pm room 133
Wed 1:30pm room 133
Swarm Hallway Track Wed 4pm