Overview
The kubelet is the primary 'node agent' that runs on each node. It works based on a set of PodSpecs (YAML or JSON objects that describe a pod) and ensures that the containers described in those PodSpecs are running and healthy.
Key Responsibilities
- Pod Management: Registers the node with the API server and manages the lifecycle of Pods on that node.
- Container Health: Monitors the health of containers and restarts them if they fail.
- Resource Reporting: Reports the node's resource usage and status back to the control plane.
Interaction
The kubelet communicates with the container runtime via the Container Runtime Interface (CRI) to perform actions like pulling images and starting containers.