搭建高可用eureka
eureka集群:
服务名称:eureka-server
服务1:127.0.0.1:8081, 服务2:127.0.0.1:8082,服务3:127.0.0.1:8083
注:集群中的所有服务的服务名称(spring.application.name)要一致
服务1配置:
server:
port: 8081
spring:
application:
name: eureka-server
eureka:
instance:
##注册中心地址
hostname: 127.0.0.1
client:
serviceUrl:
##注册地址,除了自己之外的eurekaServer
defaultZone: http://127.0.0.1:8082/eureka/,http://127.0.0.1:8083/eureka/
##是否需要将自己注册到注册中心(集群时需要设为true)
register-with-eureka: true
##是否需要检索服务信息
fetch-registry: true
服务2配置:
server:
port: 8082
spring:
application:
name: eureka-server
eureka:
instance:
##注册中心地址
hostname: 127.0.0.1
client:
serviceUrl:
##注册地址,除了自己之外的eurekaServer
defaultZone: http://127.0.0.1:8081/eureka/,http://127.0.0.1:8083/eureka/
##是否需要将自己注册到注册中心(集群时需要设为true)
register-with-eureka: true
##是否需要检索服务信息
fetch-registry: true
服务3配置
server:
port: 8083
spring:
application:
name: eureka-server
eureka:
instance:
##注册中心地址
hostname: 127.0.0.1
client:
serviceUrl:
##注册地址,除了自己之外的eurekaServer
defaultZone: http://127.0.0.1:8081/eureka/,http://127.0.0.1:8082/eureka/
##是否需要将自己注册到注册中心(集群时需要设为true)
register-with-eureka: true
##是否需要检索服务信息
fetch-registry: true
eureka 客户端配置:
server:
port: 8089
spring:
application:
name: wms-base
eureka:
client:
service-url:
defaultZone: http://127.0.0.1:8081/eureka,http://127.0.0.1:8082/eureka,http://127.0.0.1:8083/eureka
##是否需要将自己注册注册中心
register-with-eureka: true
##是否需要检索服务信息
fetch-registry: true
healthcheck:
enabled: true
效果:
eurekaServer 之间相互注册。
eurekaClient 只注册到其中一个eureka上,当注册到的那个eurekaServer宕机后,就会主动转移数据到集群中的其中一个服务上。
8081 上有wms-base 服务列表:
8083 上没有wms-base 服务列表:
当8081 宕机后,8083上就会有wms-base服务列表了。