K8s node节点替换

K8s node节点替换


一、node节点下线

1.将节点设置为不可调度,防止Pod调度在此节点

Bash 复制代码
# kubectl cordon <node-name>

# 执行后kubectl get nodes 可以查看到该节点有SchedulingDisable字段

2.驱逐该节点所有Pod

bash 复制代码
# kubectl drain <node-name> --ignore-daemonsets --force
  • --ignore-daemonsets ds也驱逐
  • --force 删除所有Pod

3.查看是否该节点是否还有Pod

bash 复制代码
# kubectl get pods -A -o wide |grep <node-name>

4.确认无Pod后,删除节点

bash 复制代码
# kubectl delete node <node-name>

5.删除秘钥、配置文件等

bash 复制代码
# systemctl stop kubelet 

# rm -f /etc/kubernetes/kubelet.conf


# kubeadmin安装直接停止docker即可

# systemctl stop docker.socket

# systemctl stop docker.service

二、node节点上线

1.节点主机初始化【结合具体环境】,如关闭防火墙,关闭swap,开启iptables转发等

bash 复制代码
1、关闭防火墙及selinux
# systemctl stop firewalld
# systemctl disable firewalld
# sed -i 's/enforcing/disabled/' /etc/selinux/config  # 永久
# setenforce 0  # 临时

2、关闭swap
# swapoff -a  # 临时
# vim /etc/fstab  # 永久 (注释掉swap分区挂载)

3、设置主机名并写入hosts
# hostnamectl set-hostname <hostname>

4、将桥接的IPv4流量传递到iptables的链
# cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
# sysctl --system  # 生效

5、时间同步
# yum install ntpdate -y
# ntpdate time.windows.com

6、安装docker

2.安装kubeadm,kubelet和kubectl【确认版本】

bash 复制代码
yum install -y kubelet-1.22.2 kubeadm-1.22.2 kubectl-1.22.2

3.启动kubelet并加入集群

bash 复制代码
# systemctl start kubelet

# 在master节点创建token,执行完命令后会出现node节点join的命令,在node节点执行即可
# kubeadm token create --print-join-command

# node节点加入集群
# kubeadm join ...
相关推荐
java_logo18 分钟前
OpenCode 企业级 Docker 部署完整指南
运维·docker·容器·opencode·opencode本地化部署·opencode部署手册·opencode部署方案
再战300年24 分钟前
docker下创建redis集群方案
redis·docker·容器
qq_229058012 小时前
docker中检测进程的内存使用量
java·docker·容器
java_logo2 小时前
使用 Docker 部署 Clawdbot(官方推荐方式)
docker·容器·clawdbot·clawdbot部署·clawdbot部署手册·clawdbot部署文档·docker clawdbot
玉树临风江流儿3 小时前
docker镜像加速器配置步骤
运维·docker·容器
短剑重铸之日4 小时前
《SpringCloud实用版》生产部署:Docker + Kubernetes + GraalVM 原生镜像 完整方案
后端·spring cloud·docker·kubernetes·graalvm
Hernon5 小时前
微服务架构设计 - 架构取舍决策CAP
微服务·云原生·架构
你才是臭弟弟5 小时前
Amazon S3 和 MinIO (数据湖的选型)
大数据·云原生
Gold Steps.5 小时前
MySQL Operator for Kubernetes自动实现整个生命周期
mysql·云原生·kubernetes
GHL2842710906 小时前
Docker Desktop 启动报错“Virtualization support not detected“
c++·docker·容器