如何将新的Kubernetes minion添加到当前群集

我有一个Kubernetes集群运行在3台服务器上,一台主机和两台服务器。 我想补充一个小奴才。 是否可以添加一个小兵,而不必再次进行完整的安装? 到目前为止,在search指南时,我只能find有关获取整个群集的优秀指南。

对我而言,主人和仆从之间的区别就是开始和编配的过程(主人告诉仆从已经完成了,他们现在可以出现,仆从们等待这个信号)。 在事情结束之后提出一个仆从就不会有什么不同,除了信号已经完成了,所以仆从就会出现。 这对我来说看起来是一个合理的实验,所以我想我会试试! 我运行在数字海洋vps,使用coreos(稳定)和云configuration来提出舰队+ flanneld + k8s。 关于主人我有:

  • ETCD
  • 舰队
  • flanneld
  • docker
  • KUBE-API服务器
  • KUBE-控制器经理
  • KUBE-调度
  • KUBE-寄存器

这里的重要过程是kube-register。 我看着它的输出:

journalctl -u kube-register 

看看什么时候注册。 要查看我目前拥有的所有小手

 core@pa1 ~/tmp $ kubectl get minions NAME LABELS STATUS 104.236.214.244 <none> Ready 104.236.31.77 <none> Ready 

关于stream程的仆从我有:

  • 舰队
  • flanneld
  • docker
  • KUBE-代理
  • KUBE-kubelet

我认为,库贝莱特是向主注册的东西,但我可能是错的。 我知道主人不断地向kubelet询问healthz,所以知道一个奴才是否已经准备好了。 无论如何,我有一个脚本,为主人和奴才创build我的云configuration。 我只是修改该脚本来“跳过”主云configuration,只是做小事configuration。 我运行它,现在是我的小伙子:

 core@pa1 / $ kubectl get minions NAME LABELS STATUS 104.236.214.244 <none> Ready 104.236.31.77 <none> Ready 45.55.164.39 <none> Ready 

所以,长篇大论,甚至更长,是的,可以在现有的节点集群上添加一个minion。 我不知道你是怎么做发现的,但是,无论你用什么方法把你的奴才首先介绍给大师,都是可行的。

我也被困住了一段时间。 我发现解决scheme非常简单。

如果您已经有了一个主控,请按照它们出现的顺序,在未连接的任务上启动以下过程。 (我想如果你使用不同的networking,你可以先开始一个类似的networking覆盖)。

 /opt/bin/flanneld --etcd-endpoints=http://<masterip>:4001 /opt/bin/kubelet --address=0.0.0.0 --port=10250 --hostname-override=<localhostip> --api-servers=http://<masterip>:8080 --logtostderr=true --cluster-domain=cluster.local --cluster-dns=192.168.3.10 /opt/bin/kube-proxy --master=http://<masterip> --logtostderr=true 

如果有疑问,只要看看你连接的minon的进程之一,看看每个进程正在运行的标志。