问题描述
Eureka server互相注册失败,配置如下:直接通过localhost去配置hostname
原因及解决
原因
:不能用localhost来配置hostname,hostname不能一样
正确配置
所以要在 ·C:\Windows\System32\drivers\etc
路径下找到hosts文件并且配置:
127.0.0.1 peer1 peer2
我本地装过k8s所以有一行k8s的hostname也配置了127.0.0.1
application.yml
#然后peer2 的port hostname defaultZone和peer1反着写即可
server:
port: 8761
eureka:
instance:
hostname: peer1
client:
serviceUrl:
defaultZone: http://peer2:8762/eureka/
错误示范
这里要强调的是,网上有些帖子写的是这样的写法:
127.0.0.1 peer1
127.0.0.1 peer2
我亲测,这样写,刚开始两个server节点是会互相注册,但是不一会儿就会一长段红色的字说其中有一个节点的服务可能出现了错误;接着然后其中一个节点在另一个节点上的instances列表里会消失,只有一个server节点还有两个实例。