I have a question. Why do we run kubelet as a service and not as a pod?
Kubelet is an agent that connect a worker node to the cluster.
During setup, we need a software that joins remote machine to cluster, thats Kubelet.
Post setup, kube-apiserver still needs some program to take its instructions and handle CRI and other host related activities. A POD or a container image running inside a container will not be able to perform those tasks. So Kubelet is run as a service on host.
Well explained. Thanks!