日前学习SpringCloud的Eureka集群配置时,遇到一个大坑,记录一下。

项目结构如下:

配置了3个eureka来测试集群,端口分别为7001,7002,7003,单机版eureka-server的yml配置(以7001为例,7002,7003改端口就行):

server:
  port: 7001

eureka:
  instance:
    hostname: localhost #eureka服务端的实例名称
  client:
    register-with-eureka: false   #false表示不向注册中心注册自己。
    fetch-registry: false         #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
    service-url:
    defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/        #单机版配置设置与Eureka Server交互的地址查询服务
    #和注册服务都需要依赖这个地址。

     

微服务提供者8001配置:

eureka:
  client: #客户端注册进eureka服务列表内
    service-url:
      defaultZone: http://localhost:7001/eureka   #eureka集群之前的单机版配置
  instance:
    instance-id: cloud-dept8001  #自定义服务名称信息
    prefer-ip-address: true     #访问路径可以显示IP地址

启动,没问题。

集群配置:eureka-server:

server:
  port: 7001

eureka:
  instance:
    hostname: eureka7001.com #eureka服务端的实例名称
  client:
    register-with-eureka: false   #false表示不向注册中心注册自己。
    fetch-registry: false         #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
  service-url:
    defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/                
    #集群配置,在此之前要修改C:\Windows\System32\drivers\etc路径下的hosts文件
    #127.0.0.1  eureka7001.com
    #127.0.0.1  eureka7002.com
    #127.0.0.1  eureka7003.com

微服务提供者8001配置:

eureka:
  client: #客户端注册进eureka服务列表内
    service-url:
      defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/ #eureka集群之后的配置
  instance:
    instance-id: cloud-dept8001  #自定义服务名称信息
    prefer-ip-address: true     #访问路径可以显示IP地址

然后,凉凉........报Connect to localhost:8761 time out。

各种找配置,看之前博友遇到的坑,没用,最后发现yml的缩进问题导致的,坑!

改进之后的eureka-server的yml配置:

server:
  port: 7001

eureka:
  instance:
    #hostname: localhost #eureka服务端的实例名称
    hostname: eureka7001.com #eureka服务端的实例名称
  client:
    register-with-eureka: false   #false表示不向注册中心注册自己。
    fetch-registry: false         #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
    service-url:
      defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/        #集群配置,在此之前要修改C:\Windows\System32\drivers\etc路径下的hosts文件
    #127.0.0.1  eureka7001.com
    #127.0.0.1  eureka7002.com
    #127.0.0.1  eureka7003.com

改正后的缩进

改进前的缩进:

真的坑!

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐