我们在Kubernetes中运行了Spring Boot服务。
我们有一个问题,所有对此服务的请求都被回复了400,没有任何正文。
通过使用完全限定域名(FQDN)调用服务来解决该问题。
在kubernetes中,您可以通过服务名称或 service-name.namespace-name call the service。
我们所有的服务都在同一个命名空间中。
kubernetes中我们所有的Node.js服务都可以成功处理 service-name.namespace-name 请求。但是,当我们尝试调用Spring Boot服务时,没有任何解释就得到了400。我在日志中看到已收到请求,并立即响应400。
我们发现此服务需要使用FQDN service-name.namespace-name.svc.cluster.local 。
这是Tomcat的要求(当更改为Jetty时,简称域名有效)。
它是可配置的吗?
怎样接受 service-name.namespace-name 主机的请求?
谢谢
答案 0 :(得分:0)
这是Tomcat 8.5.31中的错误
将Tomcat更新到8.5.32可以解决此问题。
参考: https://github.com/spring-projects/spring-boot/issues/13205