使用kubeadm部署k8s集群
时间: 2023-09-10 19:11:11 浏览: 155
Kubernetes是一款强大的容器编排和管理工具,可以快速部署和管理容器化应用程序。在本文中,我们将演示如何使用kubeadm部署Kubernetes集群。
1. 安装Docker和kubeadm
在所有Kubernetes节点上安装Docker和kubeadm。在Ubuntu上,可以使用以下命令:
```
sudo apt-get update
sudo apt-get install docker.io
sudo systemctl enable docker
sudo systemctl start docker
sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
```
2. 初始化master节点
在其中一个节点上,使用kubeadm初始化Kubernetes master节点:
```
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
```
此命令会在当前节点上启动Kubernetes master,并输出一些配置信息。请注意,您需要将此信息保存在某个地方,因为您稍后需要在其他节点上加入集群时使用它们。
3. 安装网络插件
Kubernetes需要网络插件才能在Pod之间建立网络通信。在本教程中,我们将使用Flannel作为网络插件。在master节点上,使用以下命令安装Flannel:
```
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
```
4. 加入worker节点
在所有worker节点上,使用kubeadm命令加入Kubernetes集群:
```
sudo kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
```
其中,`<master-node-ip>`和`<master-node-port>`是您在步骤2中保存的master节点的IP地址和端口号。`<token>`和`<hash>`是在kubeadm init命令输出的`kubeadm join`命令中生成的令牌和散列值。
5. 验证集群
在master节点上,使用以下命令验证Kubernetes集群:
```
kubectl get nodes
```
此命令应显示所有加入集群的节点。
恭喜,您已成功使用kubeadm部署了Kubernetes集群!现在您可以使用Kubernetes来部署和管理容器化应用程序。
阅读全文