eureka集群环境搭建

本文介绍如何搭建 Eureka 集群环境,包括创建注册中心工程、配置应用属性及启动文件等内容。同时,讲解了如何配置服务以实现与集群中的注册中心同步。

一:集群环境搭建

 

 第一步:我们新建两个注册中心工程一个叫eureka_register_service_master、另外一个叫eureka_register_service_backup

 

eureka_register_service_master的application.properties配置   

server.port=7998

eureka.client.register-with-eureka=false

eureka.client.fetch-registry=false

spring.application.name=eureka-server

eureka.instance.hostname=master

eureka.client.serviceUrl.defaultZone=http://backup:7999/eureka/

 

eureka_register_service_backup的application.properties配置如下

    server.port=7999
    eureka.client.register-with-eureka=false
    eureka.client.fetch-registry=false
    spring.application.name=eureka-server
    eureka.instance.hostname=backup
    #这里配置的是master的地址
    eureka.client.serviceUrl.defaultZone=http://master:7998/eureka/

 

上面的配置端口分别是

 

master端口是7998

backupr端口是7999

 

由于我用的是同一台机器所以需要绑定下host

127.0.0.1      master 

127.0.0.1      backup 

 

第二步:添加启动文件分别是ApplicationMaster.java,ApplicationBackUp.java

    里面代码内容是一样的

       
        @EnableEurekaServer
	@SpringBootApplication
	public class ApplicationMaster {
		public static void main(String[] args) {
		    SpringApplication.run(ApplicationMaster.class, args); 
		}

	}
	
	
	@EnableEurekaServer
	@SpringBootApplication
	public class ApplicationBackUp {
		public static void main(String[] args) {
		    SpringApplication.run(ApplicationBackUp.class, args);
		}

	}	

 二:服务端注册

 

 设置了多个注册中心后,我们的服务配置不需要太多改动只需将工程的application.properties的serviceUrl修改下

 

 eureka.client.serviceUrl.defaultZone=http://master:7998/eureka/,http://backup:7999/eureka/,

 

 当然也可以绑定一个地址,eureka.client.serviceUrl.defaultZone=http://master:7998/eureka/  这两种绑定都可以,绑定一个时,也会注册到两个eureka上。但是如果只写一个时,假如http://master:7998/eureka/这个挂掉了,另一个eureka的结点信息会消失。

 分别打开http://127.0.0.1:7998/  和 http://127.0.0.1:7999/ 如下图

 

 

 

 

 通过上图可以看

   端口7998是matser它的registered-replicas指向了http://backup:7999/eureka/

   端口7999是backup它的registered-replicas指向了http://master:7999/eureka/

 

如何配置serviceUrl来让集群中的服务进行同步

Eureka Server的同步遵循着一个非常简单的原则:只要有一条边将节点连接,就可以进行信息传播与同步

场景一

假设我们有3个注册中心,我们将peer1、peer2、peer3各自都将serviceUrl指向另外两个节点。换言之,peer1、peer2、peer3是两两互相注册的。启动三个服务注册中心,并将compute-service的serviceUrl指向peer1并启动,可以获得如下图所示的集群效果。

 

 访问http://localhost:1112/,可以看到3个注册中心组成了集群,compute-service服务通过peer1同步给了与之互相注册的peer2和peer3

 

总结:

  • 两两注册的方式可以实现集群中节点完全对等的效果,实现最高可用性集群,任何一台注册中心故障都不会影响服务的注册与发现

转载于:https://www.cnblogs.com/wangjing666/p/6972742.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值