删除与Pod相关的部署(和服务)后,Kubernetes Pod的状态为Terminating
。目前他们已经处于这种状态约3个小时。
Deployment and Service是从文件创建的,然后有时通过引用相同的文件将其删除。在这段时间内文件没有任何更改。
kubectl apply -f mydeployment.yaml -f myservice.yaml
...
kubectl delete -f mydeployment.yaml -f myservice.yaml
尝试手动删除任何Pod都会导致终端挂起,直到按 Ctrl + c 为止。
kubectl kdelete pod mypod-ba97bc8ef-8rgaa --now
有一个GitHub issue建议输出日志以查看错误,但是没有可用的日志(请注意,“ mycontainer”是“ mypod”中唯一的容器-
kubectl logs mypod-ba97bc8ef-8rgaa
来自服务器的错误(BadRequest):容器“ mypod-ba97bc8ef-8rgaa”中的容器“ mycontainer”已终止
前面提到的GitHub issue建议进行卷清理。 “ mycontainer”具有两个卷,但是在创建和删除部署之间无论如何都没有更改(用于存储Azure存储帐户名称和访问密钥的Secret [generic]也没有更改)。
尽管没有可用于Pod的日志,但是可以描述它们。但是,那里似乎没有太多有用的信息。请注意,下面的Started
和Finished
时间与describe命令的输出中的时间完全相同。
kubectl describe pod mypod-ba97bc8ef-8rgaa
>
Containers:
mycontainer:
...
State: Terminated
Exit Code: 0
Started: Mon, 01 Jan 0001 00:00:00 +0000
Finished: Mon, 01 Jan 0001 00:00:00 +0000
我如何发现导致Pod卡住的原因,以便最终摆脱它们?
答案 0 :(得分:0)
在搜索Google一段时间后,我空白了,但是在添加标题时出现的建议Stack Overflow question保存了这一天。
kubectl delete pods mypod-ba97bc8ef-8rgaa --grace-period=0 --force