1、k8s集群部署
更改所有主机名称和解析

开启四台实验主机,k8s1 仓库;k8s2 集群控制节点; k8s3 和k8s4集群工作节点;
集群环境初始化
使用k8s1作为仓库,将所有的镜像都保存在本地,不要将集群从外部走

仓库搭建完成
做免密,以方便后面的实验
在k8s2上

在k8s3和4上
基础环境的配置完成;
k8s2,3,4三个节点都禁用swap分区并将其注释,防止开机自启
kubelet 1.24+ ->cri-dockerd -> docker -> containerd -> runc -> container
从生产环境上来讲:kubelet -> containerd -> runc
不用装docker,在结合k8s的时候docker需要做修改
其他节点以此类推,确定修改为systemd

所有节点安装kubeadm
其他节点以此类推
拉取集群所需的镜像

新建一个名为k8s的开放仓库,用来专门存放k8s镜像

将镜像上传到创建的开放仓库:
集群初始化
写入环境变量,确保在重启后依然生效

普通用户操作该命令的方法
安装flannel网络插件

镜像位置地址
在k8s1上拉取镜像

创建一个公开的flannel项目

上传镜像到flannel
在k8s2上修改镜像位置,避免从外网去下载损失流量
flannel网络插件至此已部署完毕
扩容节点,在k8s3和k8s4上分别执行: