注意
本文为个人早期的一个探索,存在一些漏洞,最新部署教程请查看本人的最新博客,亲测有效!!!
链接如下:
AWS EC2上部署k8s v1.33(保姆级教程,亲测可用!)-CSDN博客
前言
因公司项目需要,准备学习k8s,但是网上教程中的k8s版本均比较旧,因此个人在阅读官方文档以及借鉴多方资料后,将个人使用虚拟机部署的过程记录下来,供大家参考。
配置及版本
软件名称 | 版本 |
K8S | 1.31 |
VMware Workstation Pro | 17 |
CentOS | Stream-9-x86_64 |
虚拟机配置
VMware及CentOS的安装过程,网上教程比较多,且与本文核心内容关联不大,因此不作叙述,默认在VMware上已经安装好了两台虚拟机。
官方文档配置说明
个人设置的虚拟机配置
如图,该配置仅适用于本文教程,请根据个人实际情况进行调整
控制面节点部署过程
切到超级权限(可选,但是强烈建议,会省去不少操作)
后续一些操作,如设置防火墙端口等,需要sudo权限,因此为了方便可以一开始先切到sudo权限。
输入
sudo -s
然后输入超级管理员的密码即可,实际效果如图
设置防火墙
官方文档要求开放如下端口
输入如下命令来永久开启端口
firewall-cmd --permanent --add-port=6443/tcp
firewall-cmd --permanent --add-port=2379-2380/tcp
firewall-cmd --permanent --add-port=10250/tcp
firewall-cmd --permanent --add-port=10259/tcp
firewall-cmd --permanent --add-port=10257/tcp
实际效果
输入如下命令来重启防火墙服务
systemctl restart firewalld
输入如下命令来检查端口是否开放成功
firewall-cmd --list-all
实际效果
可见相关端口均已开放
设置网络
输入如下命令以便支持 Kubernetes 集群的一些基本网络功能
cat <<EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
EOF
# 重新加载 sysctl 配置以使更改立即生效
sysctl --system
关闭交换分区
官方文档说明
输入如下命令来查看是否有交换分区
free -m
结果如图