- 准备工作
在三台服务器上分别安装Docker和Kubernetes,建议使用 kubeadm 工具进行快速部署。
- 部署Master节点
在第一台服务器上运行以下命令:
kubeadm init --apiserver-advertise-address=<master1的IP地址> --pod-network-cidr=10.244.0.0/16
此命令会初始化 Kubernetes 控制平面,并生成一个 token 和加入集群所需的命令。请记录这些信息,以便后续节点加入集群时使用。
在Master节点上安装网络插件 Calico:
kubectl apply -f https://docs.projectcalico.org/v3.20/manifests/calico.yaml
Calico 安装完成后,您可以通过运行以下命令来验证集群是否正常工作:
kubectl get nodes
您应该看到输出显示 Master 节点处于 Ready 状态。
- 将其他两个Master节点加入集群
在第二个Master节点上运行以下命令:
kubeadm join <master1的IP地址>:6443 --token <token值> \
--discovery-token-ca-cert-hash sha256:<ca-cert-hash值>
其中 <token值>
和 <ca-cert-hash值>
是在第一步中生成的信息。
在第三个Master节点上运行相同的命令。
- 将Node节点加入集群
在Node节点上运行以下命令:
kubeadm join <master1的IP地址>:6443 --token <token值> \
--discovery-token-ca-cert-hash sha256:<ca-cert-hash值>
与之前相同,<token值>
和 <ca-cert-hash值>
是在第一步中生成的信息。
- 验证集群是否正常工作
在任何一个节点上运行以下命令:
kubectl get nodes
您应该看到所有 Master 节点和 Node 节点都处于 Ready 状态。
现在您已经成功部署了一个由三个Master节点和一个Node节点组成的 Kubernetes 集群。