Kubernetes集群节点移除完全指南:工作节点与控制平面节点的删除步骤
创作时间:
作者:
@小白创作中心
Kubernetes集群节点移除完全指南:工作节点与控制平面节点的删除步骤
引用
CSDN
1.
https://blog.csdn.net/peng2hui1314/article/details/140822667
Kubernetes集群管理中一个重要的操作是从集群中删除节点。无论是需要替换旧节点,还是节点出现故障,都必须遵循正确的流程以避免数据丢失或应用程序中断。本文将详细介绍如何安全地从Kubernetes集群中移除工作节点和控制平面节点。
移除工作节点(Worker Node)
移除工作节点相对简单。工作节点又称为子节点或从节点。
确定工作节点名称
首先获取所有节点的名称,并确认要移除的节点:
kubectl get nodes
驱逐工作节点上的Pod
使用kubectl drain
命令驱逐节点上的Pod:
kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data
参数说明:
--ignore-daemonsets
:忽略DaemonSet管理的Pod。--delete-emptydir-data
:删除emptyDir卷中的数据。--force
:强制删除(可能导致数据丢失,请谨慎使用)。
排空过程:
- 将节点标记为不可调度(
Ready
,SchedulingDisabled
)。 - 逐个终止节点上的Pod(除了DaemonSet的Pod)。
- Kubernetes调度器会在集群的其他节点上重新创建这些Pod。
恢复节点调度能力的命令:
kubectl uncordon <node-name>
重置该工作节点
在被移除的控制平面节点中操作:
kubeadm reset
kubeadm reset
命令会:
- 停止并移除所有Kubernetes相关的容器。
- 移除
/etc/kubernetes/
目录中的所有配置文件。 - 移除
/var/lib/kubelet/
目录中的内容。 - 移除
/var/lib/etcd
目录(如果存在)。 - 删除Kubernetes相关的系统服务配置。
常用参数:
--force
:即使出现错误也继续执行重置操作。
删除工作节点
从集群中删除节点:
kubectl delete node <node-name>
移除控制平面节点(Control Plane Node)
移除控制平面节点较为复杂,因为控制平面节点相当于集群的大脑。控制平面节点又称为主节点。
确定控制平面节点名称
获取所有节点的名称,并确定要删除的控制平面节点名称:
kubectl get nodes
驱逐控制平面节点上的Pod
与工作节点类似,驱逐主节点上的Pod:
kubectl drain <master-node-name> --ignore-daemonsets --delete-emptydir-data
重置移除的控制平面节点
在被移除的控制平面节点中操作:
kubeadm reset
执行过程与移除工作节点相同。
从集群中删除控制平面节点
在其他控制平面节点中操作:
kubectl delete node master3
更新 etcd 集群(可选)
从Kubernetes v1.24版本开始,kubeadm reset
会自动清理控制平面节点上的etcd Stacked部署的成员。对于之前的版本,需要手动处理:
# 查看 etcd
kubectl get pods -n kube-system | grep etcd
# 登录集群的任意一个 ETCD Pod
kubectl exec -it etcd-master001 sh -n kube-system
# 设置登录 ETCD 的命令
export ETCDCTL_API=3
alias etcdctl='etcdctl --endpoints=https://127.0.0.1:2379 --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key'
# 查看集群节点列表
etcdctl member list
# 删除master3节点
etcdctl member remove ca5f1f6f780545ba
如果不从etcd中移除删除节点,可能会导致以下问题:
- 集群不一致
- 性能下降
- 稳定性问题
- 扩展性受限
- 错误日志和告警
注意事项
- 确保高可用性:移除主节点前,确保集群有足够的备用主节点;移除工作节点时,确保应用支持高可用。
- 检查配置文件:根据安装方式(kubeadm、kops、kubespray等),可能需要额外检查和更新配置文件。
- 清理节点:在物理或虚拟机中移除节点前,清理Kubernetes配置和数据。
- 线上环境要谨慎:保持敬畏之心,保障业务系统的可用性。
热门推荐
带金字旁有财气的男孩名字 金字旁字取名男孩名字
合同条款的重要性及法律领域中的应用
肺癌术后用不用放化疗?依据是什么?
老茶界的茶王之王:乾利贞宋聘号丨号级茶往事
地铁9号线,上海的“打工人专列”
宝宝发烧竟会引发牙龈肿痛?一文详解原因与应对方法
如何与HR沟通离职需求
国家标准化管理委员会官网的标准查询系统使用指南
护照和签证是一样的吗?有什么区别和联系呢?
脊椎外伤怎么检查
全国爱肝日:从认知到行动 共筑健康防线
股权转让个人所得税缴纳指南:计算方法与节税策略
发热:探究身体应激反应、成因与应对策略的全方位解读
创新稠油冷采科技 践行“双碳”战略
司法考试报名未考会影响职业规划与发展
生菜如何挑选
如何分析股票的放量和缩量?这些分析方法对投资决策有何帮助?
宗族文化的真谛——祠堂
1440p分辨率详解:与1080p、4K的对比及应用场景
核电站安全生产培训指南
深入浅出 Vue.js 组件通信
8万元全包装修经验分享:如何避免装修陷阱并实现理想效果
LDL 胆固醇:理想水平和健康风险
惊人新发现:爱发表情包的人,往往情商更高
从睡姿看猫咪的健康
15 种悠闲的猫品种,适合喜欢放松的人
银行的ATM机能否进行外币取款?
耳鸣的发病机制,及治疗耳鸣的中药方剂
无训练基础健身初学者减脂全攻略:饮食、运动与恢复详解
军事法是什么?从概念到实际应用的全面解析