openshift/origin工作记录(14)——解决Namespace Terminating无法删除的问题

时间:2019-02-21
本文章向大家介绍openshift/origin工作记录(14)——解决Namespace Terminating无法删除的问题,主要包括openshift/origin工作记录(14)——解决Namespace Terminating无法删除的问题使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在卸载重装istio的时候,发现namespace标记为删除后,长期处于Terminating状态,且namespace下的资源并没有被删除。

问题复现

新建一个空的namespace,执行删除:

oc指令执行删除,执行过程卡死,ctrl+c退出后查看namespace,新建的空namespace处于Terminating状态,并无法删除。排除因namespace下资源过多导致卡死这一猜测

单独删除namespace下的pod等资源对象,均能正确删除。猜测namespace controller出现了问题

问题解决

查看namespace controller的日志:

# oc logs master-controllers-master.example.com -n kube-system | grep namespace_controller.go > 1.out

发现报错信息如下:

E0220 08:45:01.306979       1 namespace_controller.go:148] unable to retrieve the complete list of server APIs: metrics.k8s.io/v1beta1: the server is currently unable to handle the request

根据报错信息排查,问题出在metrics-server上,之前安装测试完metrics-server之后,我把pod数置为了0,将pod数重置为1。
pod正确启动之后,namespace controller恢复正常,namespace正确删除。