Kubernetes Kubelet Node Agent
kubelet.exe is the Windows binary that runs the Kubernetes node agent on a Windows worker. It registers the node with the API server, watches pod specifications, starts and stops containers via the configured runtime, enforces resource limits, and reports health and metrics back to the control plane. Understanding its role helps diagnose node-level issues.
Kubelet.exe coordinates with the container runtime (containerd or dockerd) to ensure pods run as defined, handles readiness and liveness checks, mounts volumes, and reconciles desired vs. actual state. It runs as a Windows service and continuously reports status to the Kubernetes API server.
Reasons it's running:
Yes, when obtained from official Kubernetes releases and verified with signatures. Always validate the install path and digital signature.
Potential workload spikes, image pulls, or frequent pod restarts can drive CPU usage; check pod metrics, logs, and container runtimes for root causes.
Disabling kubelet stops pod management on that node. Only do during maintenance after cordon/drain and ensure workloads are redistributed.
Update via your Kubernetes release channel; replace the kubelet.exe binary, update config if needed, and restart the kubelet service.
Kubelet logs typically appear in the Kubernetes log directory (for example: C:\ProgramData\Kubernetes\logs\kubelet.log) or via Windows Event Viewer depending on setup.
Kubelet behavior is controlled by kubelet-config.yaml and startup flags passed by the cluster, including resource limits, runtime settings, and node labels.