1

According to kubernetes documentation here,

https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl

Setting up a Kubernetes cluster using kubeadm requires to install kubectl on all nodes. However, kubeserver-api is only installed on the master node or control plane with the command,

kubeadm init

My question is why do we need kubectl on the worker nodes?

1
  • That sounds like a "documentation bug," as searching the kubeadm source code did not reveal any usages that look like they're shelling out to kubectl -- have you tried just not installing kubectl on the workers? Commented Aug 29, 2020 at 18:01

1 Answer 1

2

kubectl is a CLI for controling your cluster so you do not need to install it on the worker nodes. You have to install it in a place where you are going to manage your cluster from.

As stated in the comments by the community this indeed looks like a documentation error as there is no relation between kubeadm and kubectl when joining the nodes. For worker nodes you just need to install both kubelet and kubeadm.

2
  • What is required to be installed on each node? i've read that kubelet at a minimum? is that a standable or part of a bigger installation required for each node? Commented Jul 18, 2023 at 20:41
  • @mike01010 kubeadm and kubelet. kuebeadm is for bootstrapping cluster and joining the workers to the master. kubelet is agent that runs on every node and handles comm with master etc. Commented Aug 10, 2023 at 12:02

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.