【发布时间】:2018-07-03 15:09:32
【问题描述】:
我有两个简单的 Springboot 微服务,它们使用 Spring Eureka 相互连接。
步骤-
- 首先我运行 Eureka 服务器。
- 然后我运行这两个微服务。
- 因此,两个微服务都从 Eureka 服务器注册和发现。
我想在 Openshift v3 中实现同样的效果。我知道 Openshift 使用 Kubernates 服务来实现负载平衡和 pod-discovery。但是我可以在 Openshift 中使用 Eureka 服务器吗?
在 Openshift 中,我有 3 个 pod..
- 1 个用于 eureka 的 pod 和 2 个用于微服务的 pod。
- 两个微服务都向 eureka 注册。
但是在Eureka中,是注册为微服务的pod IP:PORT。
所以当发现微服务尝试调用 POD IP & 失败。
通常,要访问 POD IP,我们需要调用 Openshift 中的服务层。 那么如何让eureka server注册服务器层IP:PORT而不是POD的IP:PORT
【问题讨论】:
-
问:这两个微服务都部署在 openshift 之外吗?
-
微服务部署在 Openshift 内部。 1)我有 3 个 pod,1 个用于 eureka,2 个用于微服务。 2) 两个微服务都向 eureka 注册。 3)但是在Eureka中,是注册为微服务的pod IP:PORT。
-
eureka.instance.hostname = 应该使用服务名称。它应该在您的 openshift 控制台中找到。
标签: kubernetes openshift netflix-eureka openshift-origin