在删除与Pod相关的部署(和服务)后,Kubernetes Pods卡住了Terminating
的状态。目前他们已经在这个州约3个小时。
部署和服务是从文件创建的,然后通过引用相同的文件稍后删除。在此期间,文件没有以任何方式更改。
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):pod“mypod-ba97bc8ef-8rgaa”中的容器“mycontainer”终止
前面提到的GitHub issue表明,卷清理是我的问题。 “mycontainer”附加了两个卷,但在部署的创建和删除之间无论如何都没有改变(Secret [generic]也不用于存储Azure存储帐户名称和访问密钥)。
虽然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陷入困境的原因,以便我最终可以摆脱它们?
在谷歌搜索了一段时间后,我发现空白,但是当我添加我的标题时出现的建议Stack Overflow question保存了这一天。
kubectl delete pods mypod-ba97bc8ef-8rgaa --grace-period=0 --force