gpt4 book ai didi

java - Spring Boot 2.3 Liveness Probe 功能在正常关闭时失败

转载 作者:行者123 更新时间:2023-12-05 06:56:52 27 4
gpt4 key购买 nike

我正在使用 Kubernetes terminationGracePeriodSeconds 测试 Spring Boot 2.3(server.shutdown=graceful 和 Tomcat Web 服务器)中的新功能正常关闭> 领域。当正常关闭阶段开始时,新的 HTTP 请求将按预期被拒绝,此时当前请求应该被详细说明直到可配置的超时(spring.lifecycle.timeout-per-shutdown-phase)。奇怪的行为是 Spring 引导执行器的 active 结果,因为在这种情况下, active 端点无法访问。

因此 kubelet 无法知道微服务在关闭期间是否仍然存在或因其他原因而卡住。由于K8s liveness probe不依赖terminationGracePeriodSeconds字段,POD会根据其K8s liveness配置重启,Spring boot微服务会因为粗暴重启而无法正常关机。

我错过了什么吗?我该如何应对这种情况?

最佳答案

与此同时,我采用了另一种解决方案,我使用RMI协议(protocol)通过JMX调用spring boot的liveness probe。在这种情况下,liveness 在正常关闭期间给出“UP”响应。去做这个:启用 JMX,将属性 spring.jmx.enabled 设置为 true 并使用 JMX 客户端调用 JMX 健康指示器。

关于java - Spring Boot 2.3 Liveness Probe 功能在正常关闭时失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65023157/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com