将node节点加入k8s集群

1、k8s master集群安装完成之后即可以开始将node节点加入到集群

2、首先要进行基础环境的配置,包括关闭防火墙、关闭selinux,关闭swap分区,这都是基础操作,不在粘贴代码。

3、进行yum源的配置,这里最简单方法是把master中的/etc/yum.repo.d目录下的文件全部复制过来,然后进行yum clean操作。

4、设置主机名node1,并修改/etc/hosts文件,添加解析

root@localhost \~# hostnamectl set-hostname node1

编辑/etc/hosts文件,添加解析

192.168.1.121 master

192.168.1.122 node1

192.168.1.123 node2

ping master可以进行测试。

5、安装docker,启动和开机启动

root@localhost yum.repos.d# yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

root@localhost yum.repos.d# systemctl start docker && systemctl enable docker

6、修改docker镜像源,这里也是从master复制过来,然后把daemon和docker都进行重启

root@localhost \~# systemctl daemon-reload

root@localhost \~# systemctl restart docker

7、修改containerd默认配置的镜像源并进行重启

root@localhost \~# containerd config default > /etc/containerd/config.toml

root@localhost \~# vim /etc/containerd/config.toml

找到:"sandbox_image = "registry.k8s.io/pause:3.6"

替换为: sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.6"

root@localhost \~# systemctl restart containerd

8、安装kubelet、kubectl和kubeadm

root@localhost \~# yum -y install kubeadm kubectl kubelet

9、启动kubelet并设置开机启动

root@localhost \~# systemctl status kubelet.service

root@localhost \~# systemctl enable kubelet.service

10.完成后把node节点重启一下

11、在master是执行命令获取加入节点的方法

root@master \~# kubeadm token create --print-join-command

12、编辑/etc/sysctl.conf文件,添加net.bridge.bridge-nf-call-iptables = 1,执行sysctl -p使之生效。

13、将输出结果拷贝到node节点,加入集群

14、从master上执行命令查看node状态

root@master \~# kubectl get nodes

会发现处于notready状态,这是因为网络插件正进行初始化,可以运行命令进行查看

等初始化完成后变为running状态再次执行命令查看

root@master \~# kubectl get nodes

发现已经变为Ready状态,至此,节点加入完成。

相关推荐
tntxia18 小时前
linux curl命令详解_curl详解
linux
扛枪的书生20 小时前
Linux 网络管理器用法速查
linux
顺风尿一寸1 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
lichenyang4531 天前
Docker 学习笔记(五):Docker Compose,用一个 YAML 启动前端、后端和 MongoDB
docker
lichenyang4531 天前
Docker 学习笔记(四):Dockerfile,把项目打成自己的镜像
docker·容器
lichenyang4531 天前
Docker 学习笔记(三):Docker 网络、bridge、子网和容器互通
docker·容器
lichenyang4531 天前
Docker 学习笔记(二):docker run 的参数到底在控制什么?
docker·容器
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫1 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao3 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80