6.Eureka高可用搭建

6.1 高可用原理

前面我们搭建的注册中心只适合本地开发使用,在生产环境中必须搭建一个集群来保证高可用。Eureka的集群搭建方法很简单:每一台Eureka只需要在配置中指定另外多个Eureka的地址就可以实现一个集群的搭建了。

以2个节点为例来说明搭建方式,假设我们有master和slaveone两台机器,需要做的就是:

·将master注册到slaveone上

·将slaveone注册到master上

6.2 搭建步骤

首先我们需要增加2个属性文件,通过不同的环境来启动不同的实例。

增加application-master.properties:

server.port=8761
#指向你的从节点的Eureka
eureka.client.service-url.default-zone=http://用户名:密码@slaveone:8762/eureka

增加application-slaveone.properties:

server.port=8762
#指向你的主节点的Eureka
eureka.client.service-url.default-zone=http://用户名:密码@master:8761/eureka

master和slaveone是hostname,可以在hosts文件中添加,直接写IP也行。

在application.properties中添加下面的内容:

spring.application.name=fangjia-euraka

eureka.instance.hostname=localhost
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
#是否开启基本的鉴权,默认为true,不想要密码就设置为false
security.basic.enabled=true
security.user.name=riven
security.user.password=123abc

#指定不同的环境
spring.profiles.active=master

在A机器上默认用master启动即可,然后在B机器上加上—spring.profiles.active=slaveone启动即可。

这样master和slaveone就互相注册,无论谁挂掉了,应用都能继续使用存活的这个注册中心。

之前在客户端中我们通过配置eureka.client.service-url.default-zone来指定对应的注册中心,当注册中心有多个节点后。那就需要修改配置为多个节点的地址,多个地址用英文逗号隔开就好了。


7.常用配置详解

7.1 关闭自我保护

保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景时。

可以在注册中心配置文件中配置:eureka.server.enable-self-preservation=false

7.2 自定义Eureka的Instance ID

7.3 自定义实例跳转链接

7.4 快速移除已经失效的服务信息


8. 扩展使用

8.1 Eureka REST API

8.2 元数据使用

8.3 EurekaClient使用

8,4 健康检查

8.5 服务上下线监控


1111

02-13 19:17