kubeadm 添加master节点
时间: 2023-06-14 17:06:40 浏览: 180
在 Kubernetes 中,要添加新的 Master 节点,需要遵循以下步骤:
1. 在新 Master 节点上安装 Kubernetes 组件,包括 kube-apiserver、kube-controller-manager 和 kube-scheduler。你可以使用 kubeadm 工具来安装这些组件。
2. 通过 kubeadm 工具初始化 Master 节点,并加入到集群中。在这个过程中,kubeadm 会在新 Master 节点上生成一个 token,你需要把这个 token 复制到其他节点上。
3. 通过 kubeadm 工具将其他节点加入到集群中。在这个过程中,你需要使用之前生成的 token 来授权其他节点加入到集群中。
下面是添加新的 Master 节点的具体步骤:
1. 在新的 Master 节点上安装 Kubernetes 组件:
```shell
# 添加 Kubernetes apt 仓库
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
# 安装 Kubernetes 组件
apt-get update
apt-get install -y kubelet kubeadm kubectl
```
2. 在新的 Master 节点上使用 kubeadm 工具初始化节点:
```shell
kubeadm init --control-plane-endpoint <load-balancer-ip>:<port> --upload-certs
```
其中,`<load-balancer-ip>` 是你用来负载均衡 API Server 的负载均衡器的 IP 地址,`<port>` 是 API Server 的端口号,一般为 6443。
3. 在新的 Master 节点上将 kubeconfig 文件复制到 `$HOME/.kube/config`:
```shell
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```
4. 将 token 复制到其他节点上:
```shell
kubeadm token create --print-join-command
```
5. 在其他节点上使用 kubeadm 工具将节点加入到集群中:
```shell
kubeadm join <load-balancer-ip>:<port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
```
其中,`<load-balancer-ip>` 和 `<port>` 分别是你用来负载均衡 API Server 的负载均衡器的 IP 地址和端口号,`<token>` 是之前生成的 token,`<hash>` 是证书的哈希值,可以在 Master 节点上使用以下命令获取:
```shell
kubeadm token create --print-certificate-hash
```