我有一个kubernetes pod陷入“终止”状态,抵制pod删除
NAME READY STATUS RESTARTS AGE
...
funny-turtle-myservice-xxx-yyy 1/1 Terminating 1 11d
...
其中funny-turtle
是已删除的helm版本的名称。
输出: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
打印的错误消息推断。
我将采取任何建议或指导来解释这里发生的事情以及如何摆脱它。
试图看看“鬼”节点是否仍在那里(kubectl delete node ip-xxx.yyy.compute.internal
),但它不存在。
尝试从pod中删除终结器:
kubectl patch pod funny-turtle-myservice-xxx-yyy -p '{"metadata":{"finalizers":null}}'
在我的情况下,接受的答案提出的解决方案不起作用,它一直停留在“终止”状态。对我来说诀窍是:
kubectl delete pods <pod> --grace-period=0 --force