如何在云服务器上搭建Kubernetes?
常见问题
如何在云服务器上搭建Kubernetes?
2025-04-15 16:01
从零开始:手把手教
从零开始:手把手教你搭建Kubernetes云服务器集群
本文将通过7个详细步骤,带您完成从云服务器选购到Kubernetes集群部署的全过程,包含常见问题解决方案和性能优化建议。
一、准备工作
搭建Kubernetes集群前需要做好以下准备:
- 云服务器选择:建议至少3台2核4G配置的云服务器(1台Master+2台Node)
- 操作系统:推荐Ubuntu 20.04 LTS或CentOS 7+
- 网络环境:确保服务器间内网互通,开放6443、2379-2380等必要端口
二、基础环境配置
1. 禁用Swap分区
sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab
2. 设置主机名解析
编辑每台服务器的/etc/hosts文件,添加集群所有节点IP和主机名的映射关系
3. 加载内核模块
cat <
三、安装容器运行时
Kubernetes支持多种容器运行时,我们以Docker为例:
# Ubuntu系统安装命令
sudo apt-get update
sudo apt-get install -y docker.io
sudo systemctl enable docker
sudo systemctl start docker
💡 提示:生产环境建议使用containerd作为运行时,性能更优且资源占用更少
四、安装Kubernetes组件
1. 添加APT/YUM源
# Ubuntu系统
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 -
cat <
2. 安装kubeadm/kubelet/kubectl
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 \
--apiserver-advertise-address= \
--image-repository registry.aliyuncs.com/google_containers
初始化成功后,按照提示执行以下命令:
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
验证安装:
kubectl get pods -n kube-system
七、加入Worker节点
在Master节点上获取加入命令:
kubeadm token create --print-join-command
在Worker节点上执行输出的join命令即可加入集群。
常见问题解决
问题现象
解决方法
kubelet无法启动
检查cgroup驱动是否匹配:docker info | grep Cgroup
Pod处于Pending状态
检查网络插件是否正常安装
节点NotReady
检查kubelet日志:journalctl -u kubelet
性能优化建议
- 为kubelet设置--max-pods参数限制单节点Pod数量
- 配置合理的资源请求和限制(requests/limits)
- 定期清理未使用的镜像和停止的容器
- 考虑使用本地SSD提升etcd性能
通过以上步骤,您已成功在云服务器上搭建了Kubernetes集群。建议下一步:
- 部署监控系统(Prometheus+Grafana)
- 配置日志收集(EFK方案)
- 设置RBAC权限控制
从零开始:手把手教你搭建Kubernetes云服务器集群
本文将通过7个详细步骤,带您完成从云服务器选购到Kubernetes集群部署的全过程,包含常见问题解决方案和性能优化建议。
一、准备工作
搭建Kubernetes集群前需要做好以下准备:
- 云服务器选择:建议至少3台2核4G配置的云服务器(1台Master+2台Node)
- 操作系统:推荐Ubuntu 20.04 LTS或CentOS 7+
- 网络环境:确保服务器间内网互通,开放6443、2379-2380等必要端口
二、基础环境配置
1. 禁用Swap分区
sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab
2. 设置主机名解析
编辑每台服务器的/etc/hosts文件,添加集群所有节点IP和主机名的映射关系
3. 加载内核模块
cat <
三、安装容器运行时
Kubernetes支持多种容器运行时,我们以Docker为例:
# Ubuntu系统安装命令
sudo apt-get update
sudo apt-get install -y docker.io
sudo systemctl enable docker
sudo systemctl start docker
💡 提示:生产环境建议使用containerd作为运行时,性能更优且资源占用更少
四、安装Kubernetes组件
1. 添加APT/YUM源
# Ubuntu系统
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 -
cat <
2. 安装kubeadm/kubelet/kubectl
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 \
--apiserver-advertise-address= \
--image-repository registry.aliyuncs.com/google_containers
初始化成功后,按照提示执行以下命令:
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
验证安装:
kubectl get pods -n kube-system
七、加入Worker节点
在Master节点上获取加入命令:
kubeadm token create --print-join-command
在Worker节点上执行输出的join命令即可加入集群。
常见问题解决
问题现象
解决方法
kubelet无法启动
检查cgroup驱动是否匹配:docker info | grep Cgroup
Pod处于Pending状态
检查网络插件是否正常安装
节点NotReady
检查kubelet日志:journalctl -u kubelet
性能优化建议
- 为kubelet设置--max-pods参数限制单节点Pod数量
- 配置合理的资源请求和限制(requests/limits)
- 定期清理未使用的镜像和停止的容器
- 考虑使用本地SSD提升etcd性能
通过以上步骤,您已成功在云服务器上搭建了Kubernetes集群。建议下一步:
- 部署监控系统(Prometheus+Grafana)
- 配置日志收集(EFK方案)
- 设置RBAC权限控制
标签:
- Kubernetes
- 云服务器
- 集群搭建
- 莱卡云
