- Kubelet: Ensures pods are always running and provides information if there’s a failure.
- Kube-proxy: Handles networking, IP addresses, and load balancing.
- Container Runtime: Allows containers to run on Kubernetes (e.g., Docker, containerd, CRI-O).
- API Server: Exposes the Kubernetes API and handles external requests.
- Scheduler: Schedules pods onto nodes based on resource availability.
- etcd: Stores cluster data in a key-value format.
- Controller Manager: Manages controllers to maintain the desired cluster state.
- Cloud Controller Manager: Integrates with cloud providers and supports custom implementations.
