1、 Eureka作为spring cloud的服务发现与注册中心,在整个的微服务体系中,处于核心位置。单机模式下的eureka服务,显然不能满足高可用的实际生产环境,这就要求配置一个能够应对各种突发情况,具有较强容灾能力的eureka服务。Eureka通过“伙伴机制”实现高可用。每一台Eureka都需要在配置中指定另外两个Eureka的地址伙伴,Eureka启动时会向自己的伙伴节点获取当前已经存在的注册表,这样在向Eureka集群中新加机器时就不需要担心注册表的不完整。

2、 新建三个maven项目,分别为sc-eureka-cluster-server-node1,sc-eureka-cluster-server-node2,sc-eureka-cluster-server-node3。项目结构如下:

备注:pom.xml和EurekaServerApplication.java的内容给单机模式是一模一样的,请参考上篇文章。

3、         主要看下bootstap.yml或者application.yml文件的改动

sc-eureka-cluster-server-node1

spring:

application:

name: sc-eureka-cluster-server-node1

server:

port: 5001

eureka:

instance:

hostname: sc-eureka-cluster-server-node1

lease-renewal-interval-in-seconds: 30

lease-expiration-duration-in-seconds: 30

prefer-ip-address: true

client:

registerWithEureka: false

fetchRegistry: false

serviceUrl:

defaultZone: http://sc-eureka-cluster-server-node2:5002/eureka/,http://sc-eureka-cluster-server-node3:5003/eureka/

sc-eureka-cluster-server-node2

spring:

application:

name: sc-eureka-cluster-server-node2

server:

port: 5002

eureka:

instance:

hostname: sc-eureka-cluster-server-node2

lease-renewal-interval-in-seconds: 30

lease-expiration-duration-in-seconds: 30

prefer-ip-address: true

client:

registerWithEureka: false

fetchRegistry: false

serviceUrl:

defaultZone: http://sc-eureka-cluster-server-node1:5001/eureka/,http://sc-eureka-cluster-server-node3:5003/eureka/

sc-eureka-cluster-server-node3

spring:

application:

name: sc-eureka-cluster-server-node3

server:

port: 5003

eureka:

instance:

hostname: sc-eureka-cluster-server-node3

lease-renewal-interval-in-seconds: 30

lease-expiration-duration-in-seconds: 30

prefer-ip-address: true

client:

registerWithEureka: false

fetchRegistry: false

serviceUrl:

defaultZone: http://sc-eureka-cluster-server-node1:5001/eureka/,http://sc-eureka-cluster-server-node2:5001/eureka/

4、         配置host文件C:\Windows\System32\drivers\etc\hosts

127.0.0.1 sc-eureka-cluster-server-node1

127.0.0.1 sc-eureka-cluster-server-node2

127.0.0.1 sc-eureka-cluster-server-node3

5、         分别启动EurekaServerApplication.java

sc-eureka-cluster-server-node1的日志:

sc-eureka-cluster-server-node2的日志:

sc-eureka-cluster-server-node3的日志

如果出现上面圈住的日志说明启动成功

6、         在浏览器分别访问

http://sc-eureka-cluster-server-node1:5001/

http://sc-eureka-cluster-server-node2:5002/

http://sc-eureka-cluster-server-node3:5002/

下面列出几个重要的配置项类:

org.springframework.boot.autoconfigure.web.ServerProperties

org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean

com.netflix.eureka.EurekaServerConfig

com.netflix.eureka.DefaultEurekaServerConfig

org.springframework.cloud.netflix.eureka.server.EurekaServerConfigBean

com.netflix.discovery.EurekaClientConfig

com.netflix.discovery.DefaultEurekaClientConfig

org.springframework.cloud.netflix.eureka.EurekaClientConfigBean

2、eureka注册中心集群的更多相关文章

  1. springCloud系列教程01:Eureka 注册中心集群搭建

    springCloud系列教程包含如下内容: springCloud系列教程01:Eureka 注册中心集群搭建 springCloud系列教程02:ConfigServer 配置中心server搭建 ...

  2. 一个线上问题的思考:Eureka注册中心集群如何实现客户端请求负载及故障转移?

    前言 先抛一个问题给我聪明的读者,如果你们使用微服务SpringCloud-Netflix进行业务开发,那么线上注册中心肯定也是用了集群部署,问题来了: 你了解Eureka注册中心集群如何实现客户端请 ...

  3. SpringCloud Eureka(注册中心集群)

    多个注册中心,其实用不同的配置对应 不同的端口号注册就行了. 注册中心自己也是个服务,看看之前的单个注册中心是怎么样的呢? server: port: 8888 # 服务端口eureka: insta ...

  4. eureka注册中心集群

    注册中心集群: 思想:让一个eureka注册中心 注册到 另一个eureka注册中心上去即A注册到B,B注册到A 注册中心配置: 1:端口号不同2:应用名称相同3:相互注册

  5. Spring Cloud Eureka 注册中心集群搭建,Greenwich 最新版!

    Spring Cloud 的注册中心可以由 Eureka.Consul.Zookeeper.ETCD 等来实现,这里推荐使用 Spring Cloud Eureka 来实现注册中心,它基于 Netfl ...

  6. spring cloud Eureka注册中心集群搭建

    1.创建springcloud-eureka maven项目 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0&quo ...

  7. centos7环境搭建Eureka-Server注册中心集群

    目的:测试和线上使用这套独立的Eureka-Server注册中心集群,目前3台虚拟机集群,后续可直接修改配置文件进行新增或减少集群机器. 系统环境: Centos7x64 java8+(JDK1.8+ ...

  8. dubbo-admin与多注册中心(注册中心集群)

    在使用dubbo时,注册中心是一个必要的架构组成成员.当我们的注册中心没有采取集群时,如何在dubbo-admin中配置,我们可以根据dubbo官方文档,很快找到我们的答案. 但是当注册中心集群之后怎 ...

  9. SpringCloud之Eureka(注册中心集群篇)

    一:集群环境搭建 第一步:我们新建两个注册中心工程一个叫eureka_register_service_master,另一个叫eureka_register_service_backup eureka ...

随机推荐

  1. c# 自定义控件之 ComboBox

    winform 自带的 combobox 无法支持根据输入文本匹配列表中的项目,需要使用自定义控件. public class MyCombobox : ComboBox { //初始化数据项 pri ...

  2. ASP.NET Core 2.1 JWT Token 使用 (二) - 简书

    原文:ASP.NET Core 2.1 JWT Token 使用 (二) - 简书 接上文,https://www.jianshu.com/p/c5f9ea3b4b65 ASP.NET Core 2. ...

  3. LVS _keepalived 配置

    #!/bin/bash HOSTNAME=$(HOSTNAME) ETHNAME=ens34 ID=-]{,}\.[-]{,}\.[-]{,}\.[-]{,}" | awk -F . 'NR ...

  4. 在Linux上搭建私有git仓库

    最近在学Linux,顺便将自己的服务器用起来,不然又得废弃一年.这次是跟着网上的教程做一个简单的git私有仓库,复杂完整的git系统还需使用gitlib系统. 首先在linux上安装git yum i ...

  5. linux随笔-05

    shell脚本&定时任务 编写Shell脚本 可以将Shell终端解释器当作人与计算机硬件之间的“翻译官”. Shell脚本命令的工作方式有两种:交互式和批处理. 交互式(Interactiv ...

  6. 转载:java面试题(一)

    1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注 ...

  7. 力扣——Next Permutation(下一个排列) python实现

    题目描述: 中文: 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列. 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列). 必须原地修改,只允许 ...

  8. 配置node 的路由

    配置路由 引入路由中间件 const Router= require('koa-router'); 实例化 const router= new Router(); 配置路由地址 router.use( ...

  9. Qt 浅析Q_PROPERTY宏

    最近在使用QProperAnimation画类,研究这个的时候看到别人写的代码有用到 Q_PROPERTY()这个宏,然后查了下,这个宏只有Qt才有的 并且需要进行编译,继承于QOBJECT Qt 手 ...

  10. java 调用wsdl的webservice接口 两种调用方式

    关于wsdl接口对于我来说是比较头疼的 基本没搞过.一脸懵 就在网上搜 看着写的都很好到我这就不好使了,非常蓝瘦.谨以此随笔纪念我这半个月踩过的坑... 背景:短短两周除了普通开发外我就接到了两个we ...