当k8s活性探针失败时,发送到在容器中运行的进程的信号是什么? KILL或TERM
我有一个用例来优雅地终止容器,在那里我有一个脚本,通过使用命令“kill PID”从容器内优雅地终止进程(它将发送TERM信号) 但我有活性探测器也配置好。 当前生命力探测器配置为以60秒间隔进行探测。因此,如果在发送正常终止信号后不久发生活性探测,则当终止仍在进行时,容器的整体健康状况可能变得非常关键。 在这种情况下,活性探测将失败,容器将立即终止。当k8s活性探针失败时,发送到在容器中运行的进程的信号是什么? KILL或TERM
所以我想知道kubelet是否用TERM或KILL杀死容器。
感谢您的支持 预先感谢
回答:
在Kubernetes,活性探针检查一个集装箱的健康状态。
若要回答您的问题是否使用SIGKILL或SIGTERM,答案都是使用,但按顺序。所以这里是发生了什么。
- 活跃度探针检查失败
- Kubernetes站流量路由到容器
- Kubernetes重新启动容器
- Kubernetes再次开始
路由流量到容器容器重启,SIGTERM首先发送,等待参数化宽限期,然后Kubernetes发送SIGKILL。
围绕您的问题一个黑客是使用属性:
timeoutSeconds
这指定它被认为失败之前的请求还能走多久回应。如果应用程序联机所用的时间可预测,则可以添加和调整此参数。
此外,您可以在livenessProbe
之前使用readinessProbe
进行游戏,并在重新启动过程后使容器投入使用。请参阅https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/以获取有关使用哪些参数的更多详细信息。
以上是 当k8s活性探针失败时,发送到在容器中运行的进程的信号是什么? KILL或TERM 的全部内容, 来源链接: utcz.com/qa/260903.html