我有一个处于“终止”状态的kubernetes容器,可以阻止容器删除
NAME READY STATUS RESTARTS AGE
...
funny-turtle-myservice-xxx-yyy 1/1 Terminating 1 11d
...
funny-turtle
是此后已删除的头盔版本的名称。
输出:pod "funny-turtle-myservice-xxx-yyy" deleted
结果:它仍然以相同的状态显示。
-还尝试了--force --grace-period=0
,结果相同,但有警告提示
警告:立即删除不会等待确认正在运行的资源已终止。该资源可能会无限期地继续在群集上运行。
结果:Error from server (NotFound): nodes "ip-xxx.yyy.compute.internal" not found
但它不存在。
因此,我假设此Pod以某种方式与aws API“断开了连接”,这是根据kubectl logs
打印的错误消息得出的。
我将采取任何建议或指导来解释这里发生的事情以及如何消除它。
试图查看“ ghost”节点是否仍然存在(kubectl delete node ip-xxx.yyy.compute.internal
),但是它不存在。
答案 0 :(得分:8)
尝试从吊舱中移除终结器:
kubectl patch pod funny-turtle-myservice-xxx-yyy -p '{"metadata":{"finalizers":null}}'
答案 1 :(得分:2)
对于我来说,被接受的答案提出的解决方案不起作用,它一直处于“终止”状态。对我来说,诀窍是:
kubectl delete pods <pod> --grace-period=0 --force
答案 2 :(得分:0)
就我而言,没有任何效果,没有日志,没有删除,绝对没有任何效果。我必须重新启动所有节点,然后情况才得以清除,不再需要终止Pod。