Kubernetes PreStop钩子是否阻止Pod内所有容器停止?还是仅作用于自身容器?
PreStop钩子在多容器Pod中的行为说明
- 每个容器的
PreStop钩子仅作用于自身所在容器,不会绑定或影响Pod内其他容器的终止流程。 - 当Pod触发终止流程时,Kubernetes会同时启动Pod内所有容器的
PreStop钩子执行,各容器的钩子运行是并行的,不需要等待其他容器的钩子完成。 - 对单个容器而言,必须等自身的
PreStop钩子执行完毕,才会收到TERM终止信号;但其他容器不会因为某个容器的钩子还在运行就暂停自己的终止步骤,只要自身钩子执行完成,就会进入后续的终止环节。 - 整个Pod的终止会在所有容器都完成终止流程,或者
terminationGracePeriodSeconds到期时结束。
官方文档明确说明:PreStop钩子不会与容器停止信号异步执行;钩子必须完成执行后才能发送TERM信号。
内容的提问来源于stack exchange,提问作者merlin2011
相关产品推荐
相关产品推荐

