eureka server启动后,端口号默认变为8080,没有读取yml文件

(1)启动服务后端口号默认为8080,没有读取yml文件配置的端口号?

   验证是否yml文件是否有问题

        把下面配置放在yml文件最前面,启动服务看是否服务还是默认的端口号,如果不是,说明yml文件可以读取到,是其他地方的问题。否则,可能写的yml文件有问题,需要检查yml文件的格式是否正确

      server:
        port: 7901

   

(2)Eureka集群高可用,报错如下

 com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server

原因:

因为本地设置了多个server端(如peer1,peer2),而instance.hostname是唯一标识 ,此时需要配一下本地的host文件

cmd里敲notepad "%systemroot%/system32/drivers/etc/hosts" 回车

在idea中多次启动同一个项目,启动设置修改,每个高可用的端口都要配置一个启动项,-Dserver.port=7901,--spring.profiles.active=peer2

 

在启动过程中会报错,可以不用管。(注意如果运行非最后一个server端时,服务会启动成功但是还是报错,是因为他注册的某个服务还未启动导致,可以不用管,等所有服务都注册成功后,服务会自动注册成功的)

endpoint=DefaultEndpoint{ serviceUrl='http://peer2:7901/eureka/}

 

附Eureka高可用yml:

spring:
  application:
    name: eureka

  security:
    user:
      name: root
      password: root

logging:
  level:
    root: info

---
spring:
  profiles: peer1
server:
  port: 7901
eureka:
  instance:
    hostname: peer1
  client:
    #设置服务注册中心的URL
    service-url:                      
      defaultZone: http://root:root@peer2:7902/eureka/,http://root:root@peer3:7903/eureka/
---
spring:
  profiles: peer2
server:
  port: 7902
eureka:
  instance:
    hostname: peer2
  client:
       #设置服务注册中心的URL
    service-url:                      
      defaultZone: http://root:root@peer3:7903/eureka/,http://root:root@peer1:7901/eureka/
---
spring:
  profiles: peer3
server:
  port: 7903
eureka:
  instance:
    hostname: peer3
  client:
       #设置服务注册中心的URL
    service-url:                      
      defaultZone: http://root:root@peer1:7901/eureka/,http://root:root@peer2:7902/eureka/
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值