售前咨询400-838-0503

Linux云服务器如何搭建Kubernetes集群?

技术文档 2025-04-28 00:44

从零开始:在Linux云服务器上搭建Kubernetes集群的完整指南

在云计算时代,Kubernetes已成为容器编排的事实标准。本文将手把手教你如何在Linux云服务器上搭建一个功能完善的Kubernetes集群,涵盖从环境准备到集群部署的全过程。

一、准备工作

1.1 硬件要求

  • 至少2台云服务器(建议3台以上)
  • 每台服务器配置:2核CPU/4GB内存/20GB磁盘空间
  • 操作系统:Ubuntu 20.04 LTS或CentOS 8

1.2 网络配置

确保服务器之间:

  1. 可以互相ping通
  2. 开放以下端口:6443, 2379-2380, 10250-10252
  3. 配置好SSH免密登录

二、环境配置

2.1 安装Docker

# Ubuntu系统
sudo apt-get update
sudo apt-get install -y docker.io
sudo systemctl enable docker
sudo systemctl start docker

# CentOS系统
sudo yum install -y docker
sudo systemctl enable docker
sudo systemctl start docker

2.2 安装kubeadm/kubelet/kubectl

sudo apt-get update && 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 -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

三、初始化Master节点

sudo kubeadm init --pod-network-cidr=10.244.0.0/16

执行成功后,会输出加入集群的命令,类似:

kubeadm join 192.168.0.100:6443 --token abcdef.0123456789abcdef \
    --discovery-token-ca-cert-hash sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef

3.1 配置kubectl

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

四、安装网络插件

推荐使用Flannel网络插件:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

五、加入Worker节点

在每个Worker节点上执行Master初始化时输出的join命令:

kubeadm join 192.168.0.100:6443 --token abcdef.0123456789abcdef \
    --discovery-token-ca-cert-hash sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef

六、验证集群状态

kubectl get nodes
kubectl get pods --all-namespaces

所有节点状态应为Ready,核心组件Pod应全部运行正常。

七、常见问题解决

7.1 节点NotReady

检查网络插件是否安装成功,查看kubelet日志:

journalctl -u kubelet -f

7.2 镜像拉取失败

尝试手动拉取镜像或配置国内镜像源:

sudo kubeadm config images pull --image-repository registry.aliyuncs.com/google_containers

通过以上步骤,你已经成功在Linux云服务器上部署了一个Kubernetes集群。接下来可以部署自己的应用,或探索更高级的Kubernetes功能如HPA、Ingress等。

记得定期备份集群配置,并保持Kubernetes版本更新以获取安全补丁和新功能。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单