最近整理配置Eureka時, 注冊服務后, Eureka服務一直報出如下錯誤:
如下是我的單台eureka的 application.yml 配置:
spring:
application:
name: eureka-server
server:
port: 2001
eureka:
server:
enable-self-preservation: false
instance:
hostname: eureka1
client:
register-with-eureka: false
fetch-registry: false
啟動完Eureka后, 啟動各項服務, 進行發現與注冊, 各項服務均能看到正常的注冊, 然而Eureka還是會一直不停的嘗試連接8761端口服務, 這是為什么呢?
查閱相關文件, 了解到 8761 是Eureka的默認路徑, 當Eureka的啟動配置里沒有對它的url地址指定時, 會默認尋找這個地址, 源碼里的默認url如下:
為: http://localhost:8761/eureka/
解決辦法: 在Eureka 配置中 添加如下配置, defaultZone !!! 來覆蓋默認的配置, 這樣就不會一直報錯了.
eureka:
client:
service-url:
defaultZone: http://eureka1:2001/eureka
這時再訪問一下Eureka地址:
registered-replicas 被重新賦值, 默認的8761被覆蓋, 一直嘗試連接的錯誤也不會再出現了!