tags: master, kube-apiserver, kube-scheduler, kube-controller-manager
kubernetes master 节点运行如下组件:
- kube-apiserver
- kube-scheduler
- kube-controller-manager
kube-scheduler 和 kube-controller-manager 可以以集群模式运行,通过 leader 选举产生一个工作进程,其它进程处于阻塞模式。
对于 kube-apiserver,可以运行多个实例(本文档是 3 实例),但对其它组件需要提供统一的访问地址,该地址需要高可用。本文档使用 keepalived 和 haproxy 实现 kube-apiserver VIP 高可用和负载均衡。
前面已经下载了 Server Binaries 文件,这里直接分发二进制文件拷贝到所有 master 节点:
[admin@k8s-admin ~]$ ansible k8s-masters -m copy -a "src=kubernetes/server/bin/kube-apiserver dest=/usr/local/bin mode=a+x"
[admin@k8s-admin ~]$ ansible k8s-masters -m copy -a "src=kubernetes/server/bin/kube-controller-manager dest=/usr/local/bin mode=a+x"
[admin@k8s-admin ~]$ ansible k8s-masters -m copy -a "src=kubernetes/server/bin/kube-scheduler dest=/usr/local/bin mode=a+x"