pod如何准备状态并终止?

问题描述 投票:1回答:2

奇怪的是,当我跑terminating时,我看到了一个我已经准备好1/1状态和状态kubectl get pods的吊舱。这些国家不相互排斥吗?为什么或者为什么不?

对于背景,在我杀死skaffold之后立即注意到这一点,因此这些豆荚正在关闭中间。

enter image description here

kubernetes
2个回答
4
投票

当pod处于终止状态时,它们仍然可以正常运行。由于许多原因(例如,可能是您连接了PVC,其他吊舱同时终止等),吊舱可能会在终止时延迟。您可以通过在连接了PVC的pod上运行以下内容或者以延迟终止的其他原因来测试此问题:

$ kubectl delete pod mypod-xxxxx-xxxxxx
pod mypod-xxxxx-xxxxxx deleted

$ kubectl delete pod mypod-xxxxx-xxxxxx
pod mypod-xxxxx-xxxxxx deleted

$ kubectl apply mypod.yaml
pod mypod-xxxxx-xxxxxx configured

有时会发生这种情况,因为pod仍处于终止期并且运行正常,因此它将被视为已配置的现有pod(忽略了您通常无法配置此类pod的事实,但您明白了这一点) 。


3
投票

就绪列说明有多少容器在运行。

状态终止意味着控制器不再向该容器发送流量。来自kubernetes' docs

当用户请求删除pod时,系统会在允许pod强制终止之前记录预期的宽限期,并将TERM信号发送到每个容器中的主进程。宽限期到期后,KILL信号将发送到这些进程,然后从API服务器中删除该pod。

这就是状态。容器已经启动,完成处理已经完成的任何工作并发送了TERM信号。

© www.soinside.com 2019 - 2024. All rights reserved.