欢迎光临
我们一直在努力

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

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

随着云原生技术的普及,Kubernetes已成为容器编排领域的事实标准。本文将手把手教您如何在主流云服务器上搭建一个生产可用的Kubernetes集群,涵盖从环境准备到集群部署的全过程。

一、准备工作

1.1 云服务器选择

建议选择至少3台云服务器(1个Master节点,2个Worker节点),配置要求:

  • CPU:2核以上
  • 内存:4GB以上
  • 操作系统:Ubuntu 20.04 LTS或CentOS 7/8

1.2 环境配置

# 所有节点执行
sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab
sudo modprobe br_netfilter
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

二、安装Docker容器运行时

Kubernetes 1.24+版本推荐使用containerd,但Docker仍是常见选择:

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

三、安装kubeadm、kubelet和kubectl

# 添加Kubernetes源
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

# 初始化成功后,按提示执行以下命令
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

记录输出的join命令,用于Worker节点加入集群

五、安装网络插件

以Flannel为例:

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

六、Worker节点加入集群

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

sudo kubeadm join <master-ip>:<port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>

七、验证集群状态

kubectl get nodes
kubectl get pods --all-namespaces

所有节点状态应为Ready,核心组件Pod应全部Running

八、常见问题解决

8.1 节点NotReady

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

journalctl -u kubelet -f

8.2 Pod处于Pending状态

检查资源配额和调度策略:

kubectl describe pod <pod-name>

通过以上步骤,您已成功在云服务器上搭建了Kubernetes集群。后续可考虑:

  • 配置持久化存储(如NFS或云存储)
  • 安装Ingress Controller实现外部访问
  • 配置监控系统(Prometheus+Grafana)

Kubernetes的学习曲线较陡,建议从简单应用开始逐步深入。

赞(0)
未经允许不得转载:莱卡云 » 如何在云服务器上搭建Kubernetes集群?