我正在尝试使用zuul服务器(api网关)将node.js微服务与spring boot应用程序连接。
zuul application.properties:
spring.application.name=api-gateway
hystrix.shareSecurityContext=true
eureka.client.service-url.default-zone=http://localhost:8761/eureka
zuul.routes.node-simple.serviceId=node-simple
zuul.routes.node-simple.path=/node-simple/**
zuul.routes.home.path=/home
zuul.routes.home.url=http://localhost:8080
zuul.sensitive-headers=Cookie,Set-Cookie
server.port=8080
Node js eureka配置
const client = new Eureka({
instance: {
id: appName,
instanceId: 'node',
app: appName,
hostName: 'localhost',
ipAddr: '127.0.0.1',
statusPageUrl: 'http://localhost:8200',
port: {
'$': PORT,
'@enabled': 'true',
},
vipAddress: appName,
dataCenterInfo: {
'@class': 'com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo',
name: 'MyOwn',
}
},
eureka: {
host: 'localhost',
port: 8761,
servicePath: '/eureka/apps/'
}
});
当我尝试转到eureka上的zuul(api-gateway)的URL时,出现此错误:
负载均衡器没有可用于客户端的服务器:节点简单
答案 0 :(得分:0)
这是我在zuul设置中拥有的配置。 zuul设置从Eureka服务器获取路由信息
zuul.sensitive-headers= Cookie,Set-Cookie
zuul.strip-prefix=false
zuul.debug.request=true
spring.application.name= zuul-server
eureka.instance.preferIpAddress=true
eureka.client.registerWithEureka=true
eureka.client.fetchRegistry=true
eureka.client.serviceUrl.defaultZone=${EUREKA_URI:http://localhost:8761/eureka}
以下是我的Eureka配置
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.server.enable-self-preservation=false
为了能够注册nodejs应用程序并在路由请求时跟随tutorial here找到它。实现与Eureka服务器的连接并维持通信
答案 1 :(得分:-1)
Netflix 的 Zuul 正在进行维护,请选择其他方法