问题描述

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节点还有两个实例。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐