来自application.properties的Kubernetes服务解析

时间:2017-05-29 18:36:57

标签: spring-boot kubernetes

我已经配置了mysql集群服务,我在我的application.properties中使用该服务而不是jdbc url中的hostname。它没有解决。但是当我使用minikube URL时,它正确连接。对于java项目的app.properties,jdbc url不应该进行DNS解析吗?

1 个答案:

答案 0 :(得分:2)

就像@sfgroups提到的那样,服务很可能没有正确注册。也许你使用的是不同的命名空间,或者只是服务不可用。为了检查:

  • 运行kubectl get svckubectl get endpoints以检查服务是否已注册并选择了mysql pod。这可能听起来很愚蠢,但我建议你检查你使用的服务名称是否正确。
  • 如果已注册,请尝试kubectl get pods,获取您的jdbc pod的ID并启动kubectl exec -ti <ID> nslookup <servicename>。如果dns分辨率正常工作,这将给你一个提示。
  • 如果无法解析,请检查minikube addons list是否已启用dns。如果它被禁用,请启用它(您需要稍等一会儿)然后重试。