I'm still a newbie learning the kubernetes and trying to clarify the details.

I've read this document about the components and would like to know the structure of kubernetes master node:

  1. is it allowed to deploy the kubernetes control plane components on different master nodes in same cluster? (e.g. deploy "kube-schedulter" on master node A and "kube-controller-manager daemon" on master node B)
  2. Is there options to make HA/FT for the master node?
  3. is it suggested to deploy all the kubernetes control plane components together on a master node no matter what kind of use cases?
  4. does the deployment of master node(s) support both static IP address and DHCP IP address assignment?

1 Answer 1

  1. I do not see any obstacles. All communication is done through the apiserver over https.
  2. Multiple replicas of the controller and scheduler are allowed, leader election is built in. All you need is load balancing in front of the apiservers.
  3. I find this to work best, since usually the failure domain is a node, rather than a component.
  4. Yes.
  • excellent answer!!! this is helpful!! please allow me to raise another question: 5. is it doable to run control plane components and containers on a node together?
    – user53815
    Commented Jul 1, 2020 at 3:46
  • @user53815 absolutely, and kubeadm, for instance, does just that. It taints the nodes with controlplane components to prevent pods from scheduling there, but nothing is to stop you from running a pod that tolerates these taints. This is something I wouldn't recommend though. In our clusters we run controlplane components as systemd units, rather than static pods, so in our case scheduling there is impossible.
    – LLlAMnYP
    Commented Jul 2, 2020 at 8:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.