06-1.部署 master 节点

kubernetes master 节点运行如下组件:

  • kube-apiserver
  • kube-scheduler
  • kube-controller-manager
  • kube-nginx

kube-scheduler 和 kube-controller-manager 可以以集群模式运行,通过 leader 选举产生一个工作进程,其它进程处于阻塞模式。

这两个组件需要高可用模式访问 kube-apiserver,所以也需要部署 kube-nginx 组件。

注意:如果没有特殊指明,本文档的所有操作均在 m7-autocv-gpu01 节点上执行,然后远程分发文件和执行命令。

安装和配置 kube-nginx

参考 06-0.apiserver高可用之nginx代理.md

下载最新版本二进制文件

CHANGELOG 页面 下载 server tarball 文件。

  1. cd /opt/k8s/work
  2. wget https://dl.k8s.io/v1.12.3/kubernetes-server-linux-amd64.tar.gz
  3. tar -xzvf kubernetes-server-linux-amd64.tar.gz
  4. cd kubernetes
  5. tar -xzvf kubernetes-src.tar.gz

将二进制文件拷贝到所有 master 节点:

  1. cd /opt/k8s/work/kubernetes
  2. source /opt/k8s/bin/environment.sh
  3. for node_ip in ${NODE_IPS[@]}
  4. do
  5. echo ">>> ${node_ip}"
  6. scp server/bin/* root@${node_ip}:/opt/k8s/bin/
  7. ssh root@${node_ip} "chmod +x /opt/k8s/bin/*"
  8. done