怎样创建高可用注册中心及集群?《Spring Cloud Eureka系列三》

          在微服务架构的分布式环境中,我们需要充分考虑要发生故障的情况,所以在生产环境中必须对各个组件进行高可用的部署,对于微服务如此,对于服务注册中心也一样。但是到现在为止我们一直用单节点的服务注册中心,这在成产环境中显然并不合适,我们需要构建高可用的服务注册中心以增强系统的高可用性;

    如下为我做的例子,提供大家参考:

高可用注册中心

 1、首先修改application.yml文件中的配置:

1)其中第一个配置文件

spring:
   application:
      name: eureka-server
---
spring:
   profiles: peer2
server:
   port: 8081

eureka:
   instance:
      hostname: peer2
   client:
      serviceUrl:
         defaultZone: http://peer1:8080/eureka/

logging:
   file: ${spring.application.name}.log

 

2)第二个配置文件:

spring:
   application:
      name: eureka-server
---
spring:
   profiles: peer1
server:
   port: 8080

eureka:
   instance:
      hostname: peer1
   client:
      serviceUrl:
         defaultZone: http://peer2:8081/eureka/

logging:
   file: ${spring.application.name}.log

2、在C:\Windows\System32\drivers\etc 中host文件对peer1和peer2进行转换,让上面配置的serviceUrl能在本地正确的访问到;如图所示:


3、通过spring\profiles.active的属性分别启动peer1和peer2;

java -jar eureka-server-1.0.0.jar --spring.profiles.active=peer1

java -jar eureka-server-1.0.0.jar --spring.profiles.active=peer2

如下图所示:


4、此时访问:http://localhost:8080/和http://localhost:8081/,这样在Instances currently registered with Eureka下 ,我们就有了两个服务,如下图所示,我们可以看到,无论访问http://localhost:8080/还是访问http://localhost:8081/,我们都能看到如下的界面;


高可用Eureka集群

同上,新建一个springboot程序,其中在application.yml配置文件中进行修改:

spring:
   application:
      name: hello-server
---
server:
   port: 8083

eureka:
   client:
      serviceUrl:
         defaultZone: http://peer2:8081/eureka/,http://peer2:8081/eureka/


 

这时启动8083服务,这时在注册中心能看见三个服务分别显示在注册中心,在每个服务启动都能看到如下图三个服务都在注册中心,如下图所示:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值