SpringCloud2.0 微服务介绍及Eureka服务注册_高可用集群(二)

上篇文章主要简单介绍了什么是微服务,以及eureka的使用,下面介绍下 Eureka 高可用集群相关配置

host文件修改

域名配置,修改host文件,推荐使用 SwitchHosts 工具

# eureka
127.0.0.1 eureka-peer1
192.168.3.18 eureka-peer2
192.168.3.16 eureka-peer3

2.添加集群配置文件

2.1 application-eureka-server1.yml 配置文件

spring:
  application:
    name: eureka-server
###服务端口号
server:
  port: 8100
###eureka 基本信息配置
eureka:
  instance:
    ###注册到eurekaip地址
    hostname: eureka-peer1
    prefer-ip-address: false
    # 表示eureka client间隔多久去拉取服务注册信息,默认为30秒,如果要迅速获取服务注册状态,可以缩小该值
    lease-renewal-interval-in-seconds: 20
    ##元数据
    metadata-map:
      instanceId: ${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
    appname:
  client:
    registry-fetch-interval-seconds: 5
    service-url:
      ###分别配置对方的地址作为Eureka Client进行相互注册
      defaultZone: http://eureka-peer1:8100/eureka/,http://eureka-peer2:8200/eureka/,http://eureka-peer3:8300/eureka/
    register-with-eureka: true ## 默认是true 可以删除
    fetch-registry: true ## 默认是true 可以删除

2.2 application-eureka-server2.yml 配置文件

spring:
  application:
    name: eureka-server
###服务端口号
server:
  port: 8200
###eureka 基本信息配置
eureka:
  instance:
    ###注册到eurekaip地址
    hostname: eureka-peer2
    prefer-ip-address: false
    # 表示eureka client间隔多久去拉取服务注册信息,默认为30秒,如果要迅速获取服务注册状态,可以缩小该值
    lease-renewal-interval-in-seconds: 20
    ##元数据
    metadata-map:
      instanceId: ${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
  client:
    registry-fetch-interval-seconds: 5
    service-url:
      ###分别配置对方的地址作为Eureka Client进行相互注册
      defaultZone: http://eureka-peer1:8100/eureka/,http://eureka-peer2:8200/eureka/,http://eureka-peer3:8300/eureka/
    register-with-eureka: true
    fetch-registry: true

2.3 application-eureka-server3.yml 配置文件

spring:
  application:
    name: eureka-server
###服务端口号
server:
  port: 8300
###eureka 基本信息配置
eureka:
  instance:
    ###注册到eurekaip地址
    hostname: eureka-peer3
    prefer-ip-address: false
    # 表示eureka client间隔多久去拉取服务注册信息,默认为30秒,如果要迅速获取服务注册状态,可以缩小该值
    lease-renewal-interval-in-seconds: 20
    ##元数据
    metadata-map:
      instanceId: ${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
  client:
    registry-fetch-interval-seconds: 5
    service-url:
      ###分别配置对方的地址作为Eureka Client进行相互注册
      defaultZone: http://eureka-peer1:8100/eureka/,http://eureka-peer2:8200/eureka/,http://eureka-peer3:8300/eureka/
    register-with-eureka: true
    fetch-registry: true

3.打包分别选择不同的配置文件执行

java -jar euruka-server.jar --spring.profiles.active=eureka-server1

如下执行成功:
SpringCloud2.0 微服务介绍及Eureka服务注册_高可用集群(二)_第1张图片
SpringCloud2.0 微服务介绍及Eureka服务注册_高可用集群(二)_第2张图片
此时我们关闭一个节点之后:
SpringCloud2.0 微服务介绍及Eureka服务注册_高可用集群(二)_第3张图片

4.需要注意事项

1.eureka.client.service-url.defaultZone service-url 2.0之后需要使用 -替换之前的驼峰

2.spring.application.name=eureka-server ## eureka-server 这个名称,每个集群的配置文件都必须一样,被坑了两个小时

eureka.instance.name=eureka-server ## 这个名称必须和spring.application.name一致;
3.eureka.instance.prefer-ip-address=false ## 设置成false 默认是true。这也是坑,需要注意

你可能感兴趣的:(spring,cloud,eureka)