K8s集群快速部署全过程
更新时间:2026年07月10日 17:17:49 作者:爱吃蔬菜0913
想轻松搞定K8s集群部署?本文手把手教你从零搭建生产级Kubernetes环境,涵盖关闭防火墙、配置IPVS内核模块、安装Containerd及初始化集群,无需踩坑,直接获取完整部署教程,快速掌握K8s集群搭建核心步骤
第 1 步:系统基础环境准备
1. 关闭防火墙和 SELinux
systemctl disable --now firewalld setenforce 0 sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
2. 关闭 Swap 分区(K8s 强制要求)
swapoff -a sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
3. 加载基础内核模块并配置网络参数
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf overlay br_netfilter EOF modprobe overlay modprobe br_netfilter cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.ipv4.ip_forward = 1 EOF sysctl --system
第 2 步:配置 IPVS 内核模块(生产级网络准备)
kube-proxy 使用 IPVS 模式需要内核支持。我们提前加载好相关模块,避免后续切换时找不到模块。
1. 安装 ipvsadm 管理工具
yum install -y ipvsadm # (如果是 Ubuntu 系统,请使用 apt install -y ipvsadm)
2. 临时加载 IPVS 相关的内核模块
modprobe -- ip_vs modprobe -- ip_vs_rr modprobe -- ip_vs_wrr modprobe -- ip_vs_sh modprobe -- nf_conntrack
3. 确保开机自动加载这些模块(永久生效)
cat <<EOF | sudo tee /etc/modules-load.d/ipvs.conf ip_vs ip_vs_rr ip_vs_wrr ip_vs_sh nf_conntrack EOF
第 3 步
1. 安装并配置 containerd
yum install -y containerd.io
或下载 RPM 包到服务器
请在终端执行以下命令,直接从阿里云镜像下载适合麒麟 V10(基于 CentOS 8)的 containerd 包:
wget https://mirrors.aliyun.com/docker-ce/linux/centos/8/x86_64/stable/Packages/containerd.io-1.6.32-3.1.el8.x86_64.rpm
2. 验证文件是否下载成功
ls -l containerd.io-*.rpm
3. 使用本地命令安装
文件下载好后,再执行本地安装命令:
sudo yum localinstall -y containerd.io-*.rpm
启动 Containerd
systemctl daemon-reload systemctl enable --now containerd
4. 执行命令查看我们集群需要用得镜像
kubeadm config images list
以下就是初始化需要得镜像需要提前准备:

以下是提前准备得镜像:可自行拉取

执行加载全部tar包命令
for img in *.tar; do echo "正在加载: $img"; docker load -i "$img"; done
第 4 步:初始化集群
kubeadm init \ --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers \ --kubernetes-version v1.30.14 \ --pod-network-cidr 10.244.0.0/16 \ --apiserver-advertise-address=10.0.1.107 # 实际服务器IP填写
如果执行完初始化秒出现error执行以下命令:临时开启 Linux 系统的 IPv4 数据包转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward
拉取网络插件:
docker pull flannel/flannel:v0.26.7 docker pull flannel/flannel-cni-plugin:v1.6.2-flannel1
第 5 步:配置 kubectl 并安装 Flannel 网络
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
2. 拉取kube-flannel.yml文件
curl -o kube-flannel.yml https://mirror.ghproxy.com/https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml
3. 修改yml镜像内容
sed -i 's|docker.io/flannel/flannel|docker.m.daocloud.io/flannel/flannel|g' kube-flannel.yml
4. 执行应用文件
kubectl apply -f kube-flannel.yml
5. 等待 30 秒,验证集群状态
sleep 30 kubectl get nodes kubectl get pods -n kube-system
6. 这样得结果说明k8s部署成功

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Rainbond部署组件Statefulset的使用官方文档
这篇文章主要为大家介绍了官方文档Rainbond部署组件Statefulset的使用,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-04-04
云服务器Jenkins部署Springboot项目及Vue项目的详细过程
本文详细介绍了如何在云服务器上使用Jenkins部署Springboot和Vue项目,包括创建Springboot项目并上传到Git仓库、安装Maven和配置Maven插件、安装Gitee插件、配置Jenkins任务以及创建自由风格项目等步骤,感兴趣的朋友一起看看吧2025-02-02


最新评论