一:集群环境搭建

第一步:我们新建两个注册中心工程一个叫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配置如下

  1.     server.port=7999
  2.     eureka.client.register-with-eureka=false
  3.     eureka.client.fetch-registry=false
  4.     spring.application.name=eureka-server
  5.     eureka.instance.hostname=backup
  6.     #这里配置的是master的地址
  7.     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

里面代码内容是一样的

  1.        
  2.         @EnableEurekaServer
  3. @SpringBootApplication
  4. public class ApplicationMaster {
  5. public static void main(String[] args) {
  6.     SpringApplication.run(ApplicationMaster.class, args); 
  7. }
  8.  
  9. }
  10.  
  11. @EnableEurekaServer
  12. @SpringBootApplication
  13. public class ApplicationBackUp {
  14. public static void main(String[] args) {
  15.     SpringApplication.run(ApplicationBackUp.class, args);
  16. }
  17.  
  18. }

二:服务端注册

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

  1.  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

总结:

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

eureka集群环境搭建的更多相关文章

  1. Hadoop+Spark:集群环境搭建

    环境准备: 在虚拟机下,大家三台Linux ubuntu 14.04 server x64 系统(下载地址:http://releases.ubuntu.com/14.04.2/ubuntu-14.0 ...

  2. 项目进阶 之 集群环境搭建(三)多管理节点MySQL集群

    上次的博文项目进阶 之 集群环境搭建(二)MySQL集群中,我们搭建了一个基础的MySQL集群,这篇博客咱们继续讲解MySQL集群的相关内容,同时针对上一篇遗留的问题提出一个解决方案. 1.单管理节点 ...

  3. Spark 1.6.1分布式集群环境搭建

    一.软件准备 scala-2.11.8.tgz spark-1.6.1-bin-hadoop2.6.tgz 二.Scala 安装 1.master 机器 (1)下载 scala-2.11.8.tgz, ...

  4. hadoop集群环境搭建之zookeeper集群的安装部署

    关于hadoop集群搭建有一些准备工作要做,具体请参照hadoop集群环境搭建准备工作 (我成功的按照这个步骤部署成功了,经实际验证,该方法可行) 一.安装zookeeper 1 将zookeeper ...

  5. hadoop集群环境搭建之安装配置hadoop集群

    在安装hadoop集群之前,需要先进行zookeeper的安装,请参照hadoop集群环境搭建之zookeeper集群的安装部署 1 将hadoop安装包解压到 /itcast/  (如果没有这个目录 ...

  6. hadoop集群环境搭建准备工作

    一定要注意hadoop和linux系统的位数一定要相同,就是说如果hadoop是32位的,linux系统也一定要安装32位的. 准备工作: 1 首先在VMware中建立6台虚拟机(配置默认即可).这是 ...

  7. Ningx集群环境搭建

    Ningx集群环境搭建 Nginx是什么? Nginx ("engine x") 是⼀个⾼性能的 HTTP 和 反向代理 服务器,也是⼀个 IMAP/ POP3/SMTP 代理服务 ...

  8. hadoop2集群环境搭建

    在查询了很多资料以后,发现国内外没有一篇关于hadoop2集群环境搭建的详细步骤的文章. 所以,我想把我知道的分享给大家,方便大家交流. 以下是本文的大纲: 1. 在windows7 下面安装虚拟机2 ...

  9. [转]ZooKeeper 集群环境搭建 (本机3个节点)

    ZooKeeper 集群环境搭建 (本机3个节点) 是一个简单的分布式同步数据库(或者是小文件系统) ------------------------------------------------- ...

随机推荐

  1. 关于内存DC

    使用CreateCompatibleDC 创建了内存DC之后,要再调用SelectObject选择一张位图放入此DC,然后才可以使用此DC进行绘制,之后绘制的数据会保存在内存中, 详细说明看后文. 在 ...

  2. python 基础之第八天--字典相关

    zx #####################创建字典###################################### In [11]: dict([('name','bob'),('a ...

  3. Swift类型转换

    关于「类型转换」(Type Casting),<The Swift Programming Language>描述如下: Type casting is a way to check th ...

  4. [TJOI 2018] XOR

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=5338 [算法] 首先对这棵树进行树链剖分 那么我们就将一个树上的问题转化为一个序列上 ...

  5. Spring 注释标签@Resource @Autowired 和@Inject的区别

    一些spring的开发人员在使用这三个标签进行注入的时候感到困惑.我来尝试解释一下这三个注解的主要区别.事实上,这三者非常相似,只存在一些微小的差别.在稍后的文章中会进行解释. @Resource-在 ...

  6. Android开发--Intent

    一:Intent基础知识 Intent:信使,实现四大组件间的通信. 1:实现页面间的跳转,有两种方式: (1):startActivity()方式: (2) 2:使用Intent传递数据的四种方式: ...

  7. TimeUtils(没试过)

    package util; import java.text.DateFormat; import java.text.DecimalFormat; import java.text.ParseExc ...

  8. Appium测试环境搭建实践

    一.环境准备 1. JDK环境配置   a)下载并安装JDK http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138 ...

  9. 数据可视化-svg入门基础(二)

    接上一篇:数据可视化-svg入门基础(一),基础一主要是介绍了svg概念,元素样式设置等. svg是(scalable vector graphic)伸缩矢量图像. 一.目录 (1)图形元素 (2)文 ...

  10. 洛谷 - UVA11346 - 概率 Probability - 积分

    要是没学过高等数学的积分怎么办呢?可以求助于自适应辛普森法. 容易发现其实这个图形是对称的,我们只要求第一象限就可以了,第一象限如上图. 由于取点是在面积内等概率的,由高中的几何概型可知,所求概率为: ...