引言:
前面文章中介绍的都是Eureka的单机用法,要想在生产环境中使用的话,必须要求高可用,下面我们来看一下Eureka的高可用使用。
1. 项目配置
先看一下之前Eureka单机版配置:
spring:
security:
basic:
enabled: true
user:
name: zhang
password: 123
server:
port: 8761
eureka:
client:
register-with-eureka: false #eureka 单机模式
fetch-registry: false #eureka 单机模式
service-url:
defaultZone: http://zhang:123@localhost:8761/eureka
由于eureka server本身也是一个client,也可以向server注册自己,之前将eureka.client.registerWithEureka配置为false,是为了防止eureka server把自己当作一个client注册到server上(自己将自己实例注册到自己的registry中),eureka.client.fetchRegistry设置为false,是为了防止eureka server把自己当作一个client去server上拉取服务列表(自己从自己registry中拉取到自己的localRegionApps中),现在这两个配置都使用默认配置true,具体配置如下:
服务端:
注意要hosts中添加 127.0.0.1 peer1 peer2 peer3
application.yml
spring:
application:
name: EUREKA-HA
profiles:
active: peer1
application-peer1.yml
server:
port: 8761
spring:
profiles: peer1
security:
basic:
enabled: true
user:
name: zhang
password: 123
eureka:
instance:
hostname: peer1
client:
serviceUrl:
defaultZone: http