1、新建两个子工程作为两个 EurekaServer 端,分别名为 "microservicecloud-eureka-7002"、"microservicecloud-eureka-7003",主启动类分别名为 "Application_7002"、"Application_7003",依赖同 "microservicecloud-eureka-7001"。
2、由于是单机测试,需修改本机 host 映射:
127.0.0.1 www.eurekaserver1.com
127.0.0.1 www.eurekaserver2.com
127.0.0.1 www.eurekaserver3.com
3、分别修改 7001、7002、7003 的配置文件:
# application.yml#7001
server:
port: 7001
eureka:
instance:
hostname: www.eurekaserver1.com # eureka 服务端实例名称
client:
register-with-eureka: false # 表示不向注册中心注册自己
fetch-registry: false # false 表示自己就是注册中心,不需要检索服务
service-url:
defaultZone: http://www.eurekaserver2.com:7002/eureka/,http://www.eurekaserver3.com:7003/eureka/
# application.yml#7002
server:
port: 7002
eureka:
instance:
hostname: www.eurekaserver2.com # eureka 服务端实例名称
client:
register-with-eureka: false # 表示不向注册中心注册自己
fetch-registry: false # false 表示自己就是注册中心,不需要检索服务
service-url:
defaultZone: http://www.eurekaserver1.com:7001/eureka/,http://www.eurekaserver3.com:7003/eureka/
# application.yml#7003
server:
port: 7003
eureka:
instance:
hostname: www.eurekaserver3.com # eureka 服务端实例名称
client:
register-with-eureka: false # 表示不向注册中心注册自己
fetch-registry: false # false 表示自己就是注册中心,不需要检索服务
service-url:
# 单机版
# defaultZone: http://${e ureka.instance.hostname}:${server.port}/eureka/ # 设置与 Eureka Server 交互的地址,可用来查询注册的服务
defaultZone: http://www.eurekaserver1.com:7001/eureka/,http://www.eurekaserver2.com:7002/eureka/
4、修改 8001 客户端 Eureka 配置,让客户端注册到多个 Eureka 服务端:
# application.yml
eureka:
client: # 将当前工程作为 Eureka 客户端
service-url:
# 单机版
# defaultZone: http://localhost:7001/eureka # Eureka 服务端地址
defaultZone: http://www.eurekaserver1.com:7001/eureka,http://www.eurekaserver2.com:7002/eureka,http://www.eurekaserver3.com:7003/eureka
instance:
instance-id: microservicecloud-provider-dept
prefer-ip-address: true # 访问路径显示 IP
5、测试,依次启动 7001、7002、7003 EurekaServer 服务,接着再启动 8001 客户端服务,客户端服务可以正常访问。
访问“http://www.eurekaserver1.com:7001/”:
访问“http://www.eurekaserver2.com:7002/”:
访问“http://www.eurekaserver3.com:7003/”:
由测试结果可知,客户端服务已经注册到了多个 Eureka 服务端,每个 Eureka 服务端上又挂载了其它 Eureka 服务端的副本,Eureka 集群搭建成功。
评论区