Добавление node к существующему кластеру в Кубернете
У меня есть кубернетический кластер, работающий на двух машинах (мастер-миньон node и миньон node). Я хочу добавить новый миньон node, не нарушая текущую настройку, есть ли способ сделать это?
Я видел, что когда я пытаюсь добавить новый node, службы на других узлах останавливают его, из-за чего мне приходится останавливать службы перед развертыванием нового node в существующий кластер.
Ответы
Ответ 1
Чтобы сделать это в последней версии (проверено на 1.10.0), вы можете выполнить следующую команду на мастер-узле:
kubeadm token create --print-join-command
Затем он напечатает новую команду соединения (например, ту, которую вы получили после kubeadmn init
):
kubeadm join 192.168.1.101:6443 --token tokentoken.lalalalaqyd3kavez --discovery-token-ca-cert-hash sha256:complexshaoverhere
Ответ 2
Вам нужно запустить kubelet и kube-proxy на новом minion, указывающем api-адрес в параметрах.
Пример:
kubelet --api_servers=http://<API_SERVER_IP>:8080 --v=2 --enable_server --allow-privileged
kube-proxy --master=http://<API_SERVER_IP>:8080 --v=2
После этого вы увидите новый node в
kubectl get no
Ответ 3
Я использую среду OpenStack, в которой кластер kubernetes взят. Один из способов добавления узлов, которые я нашел, - остановить службы kube и etcd на главном и миньоне, а затем добавить новый node.
Но в производственной среде, когда есть 1000 машин, сбрасывающих службы на каждой машине, утомительно, где, как и в сценарии, где у меня есть приложения, запущенные на узлах, приведение кластера вниз эквивалентно удалению приложений, t хотите.