网站建设施工图片,银川市住房城乡建设局网站,75欧rf射频线,宣传片报价单明细删除命名空间一直处于Terminating
通常删除命名空间或者其他资源一直处于Terminating状态#xff0c;是由于资源调度到的节点处于NotReady状态#xff0c;需要将节点重新加入到集群使其状态变为Ready状态才能解决问题#xff0c;当node重新加入处于Ready状态后#xff0c;…删除命名空间一直处于Terminating
通常删除命名空间或者其他资源一直处于Terminating状态是由于资源调度到的节点处于NotReady状态需要将节点重新加入到集群使其状态变为Ready状态才能解决问题当node重新加入处于Ready状态后资源会自动顺利删除
查看节点状态是否是NotReady状态
运行如下命令查看node信息
kubectl get nodes查看STATUS列是否有节点是NotReady状态并看一直处于Terminating状态的命名空间下是否有资源调度到NotReady状态节点上如果是多半是这个原因导致的
查看节点详细信息
运行如下命令查看节点详情
kubectl get node 节点名称 -o yaml检查是否被打上污点,当节点出现异常或者资源不足时K8s系统会为节点打上相对应的污点如下污点 node.kubernetes.io/disk-pressure磁盘压力污点当可使用磁盘空间低于15%时将打上此污点这个百分比是可以在部署K8s集群时设置的 node.kubernetes.io/unreachable节点失联当节点网络出现问题时会导致节点失联 除上面说的两个污点外还有很多K8s系统使用的污点可以翻阅官方文档了解
从上面可以看到节点被打上了node.kubernetes.io/unreachable污点表明节点网络原因导致的NotReady因此需要排查集群网络是否有问题
查看集群组件是否正常运行
运行如下命令检查kube-system命名空间下pod是否正常运行
kubectl get pods -n kube-system如果有运行不正常的pod需要查看日志了解异常原因并解决
集群通过https://gitee.com/open-hand/kubeadm-ha.git工具拉起。如果上述没有发现问题还可以查看K8s集群的组件是否正常运行
docker ps -a查看所有docker容器检查K8s集群组件是否正常可以发现k8s_lb-nginx_lb-nginx容器异常退出
查看k8s_lb-nginx_lb-nginx容器日志
docker logs -f -n 500 9c9c8ad02ae2查看容器日志发现8081端口被占用导致k8s_lb-nginx_lb-nginx无法启动 此K8s集群使用nginx作为负载均衡因此k8s_lb-nginx_lb-nginx无法启动会导致负载均衡无法进行也无法完成节点正常启动运行因此需要释放8081端口占用
检查端口占用情况
找到占用8081端口的进程
netstat -anp | grep 8081根据进程号查看进程详细信息
ps -ef | grep 2682通过进程详细信息可以知道进程是如何产生妥善处理此进程与K8s系统占用端口的冲突
总结
当处理好端口占用问题后k8s_lb-nginx_lb-nginx容器正常运行节点重新加入集群处于Terminating状态资源正常删除。导致资源删除一直Terminating的原因多种多样需要结合显现大胆猜想小心求证。如果节点组件问题导致可以查看https://gitee.com/open-hand/kubeadm-ha/blob/release-1.21/docs/00-%E5%AE%89%E8%A3%85%E9%A1%BB%E7%9F%A5.md给出的组件是否正常运行是否有端口占用。如果是资源问题导致则需要清理没用的资源或者扩容节点