我是春天的新手。我已阅读this doc,并说客户端应用程序必须指定服务网址:
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
但如果localhost:8761
失败怎么办?
答案 0 :(得分:28)
Eureka Discovery Server应在生产设置中的Peer-Aware配置模式中使用。 校验: http://cloud.spring.io/spring-cloud-static/spring-cloud.html#_peer_awareness
例如,您的第一个eureka服务器实例将具有如下配置:
server:
port: 1111
eureka:
instance:
hostname: peer1
client:
serviceUrl:
defaultZone: http://peer2:1112/eureka/
..和第二个服务器实例如下:
server:
port: 1112
eureka:
instance:
hostname: peer2
client:
serviceUrl:
defaultZone: http://peer1:1111/eureka/
当Eureka服务器实例启动时,它们将相互寻找。所有微服务都会自动注册,所以如果一个服务器发生故障,其他服务器实例将始终存在。在两个Eureka实例上,您将能够看到所有已注册的微服务。像这样,您可以在生产环境中进行扩展并拥有多个服务器实例。
注意:如果您在单个系统上尝试此操作,请不要忘记编辑/ etc / hosts文件:
127.0.0.1 peer1
127.0.0.1 peer2
答案 1 :(得分:-5)
我遇到了和你一样的错误,这样的配置会起作用:
eureka:
instance:
hostname: localhost
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
default: http://${eureka.instance.hostname}:${server.port}/eureka/