Fork me on GitHub

Spring cloud Eureka错误锦集(一)

初学Spring cloud的时候,启动Eureka的时候报了下面的错误:

com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect
.....
com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server

到网上一查,原来是因为在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为。
解决方法:
配置eureka server的配置文件appication.yml(我个人比较喜欢.yml的格式,注意一下,属性名称的“:”后面有一个英文格式的空格

server:
  port: 9000

eureka:
  instance:
    hostname: localhost
  client:
    registerWithEureka: false
    fetchRegistry: false
    serviceUrl:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

spring:
  application:
    name: eurka-server

或者appication.properties

server.port=9000
spring.application.name=eureka-server
eureka.instance.hostname=localhost
eureka.server.enable-self-preservation=false
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/

通过eureka.client.registerWithEureka:false和fetchRegistry:false来表明自己是一个eureka server.
配置完成后重启服务就OK了!

 

posted @ 2018-10-08 14:41  JackpotHan  阅读(647)  评论(0编辑  收藏  举报