在本地使用两个节点,通过端口号区分,模拟eureka集群高可用,node1:9001、node2:9002
eureka集群配置
- node1
server:
port: 9001
eureka:
instance:
hostname: localhost
prefer-ip-address: true
client:
service-url:
defaultZone: http://${eureka.instance.hostname}:9002/eureka/
- node2
server:
port: 9002
eureka:
instance:
hostname: localhost
prefer-ip-address: true
client:
service-url:
defaultZone: http://${eureka.instance.hostname}:9001/eureka/
在同一个项目中配置node1、node2,通过profile区分配置信息,分别启动
没有配置prefer-ip-address
时发现node1、node2可以相互注册,但它们之间无法共享信息
-
defaultZone
使用主机名暴露注册中心地址时,一定要有域名接解析 - localhost暴露注册中心地址无法共享信息,配置
prefer-ip-address
使用ip地址暴露注册中心地址就没有问题 - 127.0.0.1 应该也可以
客户端配置
eureka:
client:
service-url:
defaultZone: http://localhost:9001/eureka/,http://localhost:9002/eureka/
service-url
中配置node1、node2,由于在同一个机器上,所以通过端口号区分两台eureka,只注册到一个节点也可以,eureka会自动共享信息,但是为了高可用建议还是配置多个注册中心节点
网友评论