What is Kubernetes?
- What are containers?
- What is Docker?
- Where are my apps?
- Why orchestrate?
Applications
- Hosted on a server
- Installed on the disk
- Run as processes
- Provide a service
- Quality of service
A single application running on a host
Containers
- Standardised
- Isolated
- Easily distributed
- Improved security
A single container running on a host
Docker
- Docker is a container platform
- Standard for containers
- Not a hypervisor
- Docker Hub is a library
Multiple containers
- All isolated from one another
- Managed interactions
- Workload control
- Security
A single host running multiple containers side-by-side
Things go wrong
- Hosts crash
- Goal is quality service delivery:
- Reliability
- Performance
- High-availability
- Redundant copies
Multiple Docker hosts behind a load balancer
More to manage
- Config management
- Secret distribution
- Simplicity of load balancer
- Identical nodes
- Need help orchestrating
Kubernetes
- Container orchestration
- Networking
- Services
- Load balancing
- High availability
- Ingress
- Secret management
A Kubernetes pod wrapping a single container
Kubernetes entities
- Pod
- Deployment
- Defines pod and how it's deployed to cluster
- Multiple instances of a pod
- Multiple different pods
Multiple Kubernetes pods deployed across multiple hosts
Kubernetes entities
- Services
- Routed across multiple pods
- Hide underlying implementation
Services broker requests to an orchestrated set of pods
Help
What is Kubernetes?
What are containers?
What is Docker?
Where are my apps?
Why orchestrate?