报错信息
c.n.discovery.InstanceInfoReplicator : There was a problem with the instance info replicator
com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server
通过打断点发现eureka地址不是我配置的,使用的是默认地址
错误配置
eureka:
instance:
hostname: 192.168.43.143
client:
register-with-eureka: true
fetch-registry: true
service-url:
default-zone: http://192.168.43.143:8761/eureka/
正确配置
eureka:
instance:
hostname: 192.168.43.143
client:
register-with-eureka: true
fetch-registry: true
service-url:
defaultZone: http://192.168.43.143:8761/eureka/
总结原因
- service-url是一个Map,Map的key配置为default-zone不能自动转化为defaultZone形式,所以使用默认配置,所以找不到配置
- 本地测试时不会报错,因为本地地址和默认地址一样,所以可以注册服务,线上环境,则报错未知的服务