kubernetes:删除 namespace 显示Terminating

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/textdemo123/article/details/102506411

背景:
删除一个namespace的时候发现 这个 ns删除不了,一直处于Terminating 状态
在这里插入图片描述
问题分析:
1.查看etcd状态,正常,不是由于etcd引起
2.查看了磁盘负载,状态正常 iostat -k -x 1 1
在这里插入图片描述
3.describe 一下这个ns ,没看到有用的 event信息
在这里插入图片描述
4.尝试强制删除,没有效果
kubectl delete namespace XXX --grace-period=0 --force
5. 输出了一下 该ns的信息 ,看到有finalizer
kubectl get namespace XXX -o yaml
在这里插入图片描述
问题就找到了,是由于finalizer的存在导致 ns删除不了
为什么finalizer会影响ns的删除,可以参考官方的垃圾回收机制
https://kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/
6.edit该 ns ,删除 finalizer配置,重新删除ns就可以成功

参考官方issue:
https://github.com/kubernetes/kubernetes/issues/60807
https://github.com/rook/rook/issues/1488#issuecomment-365058080

猜你喜欢

转载自blog.csdn.net/textdemo123/article/details/102506411