Eureka Server的高可用

Eureka Server进行互相注册的方式来实现高可用的部署,所以我们只需要将Eureke Server配置其他可用的serviceUrl就能实现高可用部署

  • 创建application-peer1.properties,作为peer1服务中心的配置,并将serviceUrl指向peer2
  • spring.application.name=eureka-server
    server.port=1111
    eureka.instance.hostname=peer1
    
    #指向另一个注册中心
    eureka.client.serviceUrl.defaultZone=http://peer2:1112/eureka/
  • 创建application-peer2.properties,作为peer2服务中心的配置,并将serviceUrl指向peer1
  • spring.application.name=eureka-server
    server.port=1112
    eureka.instance.hostname=peer2
    
    #指向另一个注册中心
    eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/

    hosts文件中添加对peer1和peer2的转换

  • 127.0.0.1 peer1
    127.0.0.1 peer2
  • 通过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

此时访问peer1的注册中心:http://localhost:1111/。registered-replicas中已经有peer2节点的eureka-server了。

同样地,访问peer2的注册中心:http://localhost:1112/registered-replicas中已经有peer1节点,并且这些节点在可用分片(available-replicase)之中。

我们也可以尝试关闭peer1,刷新http://localhost:1112/,peer1的节点变为了不可用分片(unavailable-replicas)。

服务注册与发现

pring.application.name=compute-service
server.port=2222
eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/,http://peer2:1112/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

总结:

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

Eureka Server的高可用的相关文章

实现Eureka Server的高可用并将应用注册到Eureka Sever集群上

1. 回顾 Eureka Client会定时连接Eureka Server,获取注册表中的信息并缓存到本地.微服务在消费远程API时总是使用本地缓存中的数据.因此一般来说,即使Eureka Server发生宕机,也不会影响到服务之间的调用.但如果Eureka Server宕机时,某些微服务也出现了不可用的情况,Eureka Server中的缓存若不被刷新,就可能会影响到微服务的调用,甚至影响到整个应用系统的高可用.因此,在生成环境中,通常会部署一个高可用的Eureka Server集群. Eur

Spring cloud Eureka 服务治理(高可用服务中心)

在微服务的架构中,我们考虑发生故障的情况,所以在生产环境中我们需要对服务中各个组件进行高可用部署. Eureka Server 的高可用实际上就是将自己作为服务想其它服务注册中心注册自己,这样就形成了一组互相注册的服务中心, 以实现服务清单 的互相同步,达到高可用的效果. 1. 创建 application-peer1.properties ,作为peer1服务中心的配置,并将serviceUrl 指向 peer2 spring.application.name=eureka-server se

Spring Cloud Eureka 注册中心高可用机制

一.Eureka 正常工作流程 Service 服务作为 Eureka Client 客户端需要在启动的时候就要向 Eureka Server 注册中心进行注册,并获取最新的服务列表数据. Eureka Server 之间通过 Peer To Peer 模式复制最新数据. Eureka Client 通过心跳机制定时向 Eureka Server 续约,上报自己的状态,并获取最新的服务列表数据. Eureka Client 在本地有一个localRegionApps变量,用来保存从 Eureka

Windows server 2003高可用NLB和服务器群集配置

Windows server 2003高可用NLB和服务器群集配置 拓朴简介: 1. VS1:用来连接内网和外网的路由器(Internet). 2. VS2 / VS3:NLB群集,上面搭建WEB SERVER. 3. VS4 / VS5:服务器群集.上面搭建文件共享服务器.DHCP服务器.WEB服务器的数据库. 4. 真机:外部客户,用来访问内部的服务器. 5. VS3:做域控制器.内部所有计算机做DC 成员机. 6. 磁盘阵列:由于设备原因,在服务器群集VS5和VS4各添两块磁盘.做阵列.

BizTalk Server 2010高可用方案

BizTalk Server 2010高可用方案 本文介绍了 Microsoft BizTalk Server 中通过对主机的各层进行扩展提供高可用性的方案. 分隔各个区域的功能分为不同的主机和中的层 BizTalk Server, ,管理员可以为每个主机提供冗余和缩放它们独立于其他主机. 若要为每个功能区域提供高可用性,应创建单独的主机,为每个主函数-接收. 处理. 发送和跟踪-和群集 BizTalk Server 数据库和企业单一登录的主密钥服务器. 小型 BizTalk Server 部署

Lync server 2013高可用环境快速查看客户端的版本信息及连接状态

我们在进行Lync server 2013高可用部署的项目中,有一些用户会提出一些要求,比如:我是否能查看哪些客户端连接在哪台Lync Server 2013前端.前端是否达到了高可用的效果.客户端连接的版本信息等- - 针对以上客户提出的要求我们可以通过以下方法来实现: 准备工作: 1. 下载脚本文件:get-csconnections.ps1 2. 打开Lync server 2013前端到SQL之间的端口:1434 操作过程: 1. 将脚本文件拷贝到Lync server 2013 前端服

Zabbix实战-简易教程(6)--Server端高可用

3.4 server前端高可用 至此,单台Zabbix server环境已经搭建完成,为了达到高可用效果,我们需要通过2台服务器之间通过HA软件进行探测,一旦检测到主的server挂掉后,从的server会立即顶替.我们这里采用keepalived软件来实现. 3.4.1 Keepalived安装 直接yum安装即可 Yum install keepalived 3.4.2 keepalived配置 Master上的keepalived配置如下: [Master] cat /etc/keepal

eureka集群高可用配置

譬如eureka.client.register-with-eureka和fetch-registry是否要配置,配不配区别在哪里:eureka的客户端添加service-url时,是不是需要把所有的eureka的server地址都写上,还是只需要写一个server就可以了(因为server之间已经相互注册了)?如果写上了所有的server地址,那相当于将每个client服务都往所有的server都添加了一遍,那还配置server间的相互注册有什么意义? 上面的这些问题在多数讲eureka集群教

SQL Server 2014 高可用之前言:这里就随便说说

几个月前把自己的Demo环境拿来全部推翻了(现在也忘了为嘛推翻了,重新做好蛋疼),准备再重新做一个高可用环境,准备把自己能做的高可用都挨着做一遍. SQL Server作为微软大多数多系统的后端数据库,所以,还是先把后端的数据库做成高可用了,再挨着做前端的应用.本系列里面有数据库的高可用以及以前做的备份恢复的东西. 由于对于数据库的了解还是在皮毛上,所以后面的文章有什么问题的地方,还是请各位大牛能指正的指正下吧,在此先谢谢了!