Components
Architecture Overview
An orchestration engine for mainly handling Docker Containers, allowing:
- Service Discovery & Load Balancers
- Storage Orchestration - stateful containers
- Automated Rollbacks
- Secrets & Configuration
Components
Node: Basic component (Master / Worker)
Master Node (Control Plane)
Kube API Server (via Kubectl)
- [Kubectl]: Agent to connect via admin to handle everything via its Kube API
etcd storage
- Store all info in Kubernetes Cluster i.e [state]
Scheduler
- Controls Woker Node from config, such as:
- Resource needs
- Data locality
Controller:
- Binaries for controlling components in the cluster:
- [Node]: Respond if nodes goes up / down
- [Replication]: Maintain pods number
- [Endpoint]: Joins services & pods
- [Token]: Create accs. & API access tokens
Worker Node
Kubelet
- Agent for handling containers on pods
- Master - Worker Node connection
Kube proxy
- [Configure Network] rules to control network bridges
Container runtime
- Inside pods, containers can run (usually Docker)
- Understand: Pods
How Pods / Containers interact with each other: Overlay Network