1、场景
NFS持久化从一个节点(例如:node1)迁移到另一个节点(例如:node2),早先做了持久化存的的服务依然会和node1进行绑定;当node1上的nfs服务stop之后,挂载的服务依然保持着细微的联系(命悬一线);当重启该服务(这些Pod)时,会出现一下报错:
cannot stop container:tried to kill container, but did not receive an exit event
- 不能够杀掉这些容器,因为不能返回相关事件
- Pod状态一直处于Terminating
2、解决办法
- 删除重启Pod(删除)---- 无效
因为关键的原因是持久化存储无法连接(断掉配置文件挂载的联系好像也会出现上面的报错)
kubectl delete pod yyjczcpt-redis-0 -nyyjczcpt --force --grace-period=0
- 删除PVC和PV
kubectl patch pv redis-pv -p '{"metadata":{"finalizers":null}}'
kubectl patch pvc yyjczcpt-redis-pvc -p '{"metadata":{"finalizers":null}}'
# 删除
kubectl delete pv redis-pv -nyyjczcpt
kubectl delete pvc yyjczcpt-redis-pvc -nyyjczcpt
- 删除的时候可能还是无法删除,可以尝试启动NFS后删除(一下子就删除了)
- 然后删除Pod

博客介绍了NFS持久化从一个节点迁移到另一个节点时出现的问题,即早先做了持久化存储的服务仍与原节点绑定,原节点NFS服务停止后,重启相关Pod会报错,Pod状态处于Terminating。解决办法是先尝试删除重启Pod,若无效则删除PVC和PV,删除时若有问题可启动NFS后再删,最后删除Pod。
2万+

被折叠的 条评论
为什么被折叠?



