【发布时间】:2021-08-02 03:14:45
【问题描述】:
我的 Spring Boot 应用程序使用执行器进行健康检查。我使用这个配置:
management.server.port = 9093
management.endpoints.web.exposure.include = health
k8s 集群尝试 http get to host:9093/acutator/health 进行健康检查。在本地机器上运行时效果很好,我尝试使用相同的 Dockerfile 为我自己的本地机器构建一个 docker 容器也可以。但是当我将它推送到 prod env 中的 k8s 集群时,健康检查保持失败,因为连接到 9093/actuator/health 失败。
我观察了 prod env 的日志,发现 Netty 服务器不监听 9093 端口。我只能看到
o.s.b.web.embedded.netty.NettyWebServer : Netty started on port 8080
但是在我的本地机器上,我可以看到 Netty 在 9093 端口启动的日志。
o.s.b.web.embedded.netty.NettyWebServer : Netty started on port 9093
问题是,在什么情况下,Spring Boot 不会启动执行器?好像和k8s env有关。
【问题讨论】:
标签: spring spring-boot docker spring-boot-actuator