资讯专栏INFORMATION COLUMN

2、eureka注册中心集群

only_do / 2752人阅读

摘要:作为的服务发现与注册中心,在整个的微服务体系中,处于核心位置。通过伙伴机制实现高可用。每一台都需要在配置中指定另外两个的地址伙伴,启动时会向自己的伙伴节点获取当前已经存在的注册表,这样在向集群中新加机器时就不需要担心注册表的不完整。

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:WindowsSystem32driversetchosts

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-serv...:5001/

http://sc-eureka-cluster-serv...:5002/

http://sc-eureka-cluster-serv...: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

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74889.html

相关文章

  • Spring Cloud Eureka 集群高可用

    在微服务架构中,注册中心是一个必不可少的组件 前面我们搭建的注册中心只适合本地开发使用,在生产环境必须搭建一个集群来保证高可用 Eureka的集群搭建很简单,每一台Eureka都需要在配置中指定另外N个Eureka的地址就可以 下面我们以2个节点来说明 我们有master和slaveone 2台机器,需要做的就是: master注册到slaveone上面 slaveone注册到master上面即...

    Elle 评论0 收藏0
  • SpringCloud(第 051 篇)EurekaServer集群高可用注册中心以及简单的安全认证

    SpringCloud(第 051 篇)EurekaServer集群高可用注册中心以及简单的安全认证 - 一、大致介绍 1、前面章节分析了一下 Eureka 的源码,我们是不是在里面注意到了 Peer 节点的复制,为什么要复制节点同步信息呢,其实就是为了同一个集群之间的EurekaServer一致性方案的一个实现; 2、于是我们在本章节就真正的来通过代码来实现一下EurekaServer之间的高...

    coordinate35 评论0 收藏0
  • 2021 年最新基于 Spring Cloud 的微服务架构分析

    摘要:是一个相对比较新的微服务框架,年才推出的版本虽然时间最短但是相比等框架提供的全套的分布式系统解决方案。提供线程池不同的服务走不同的线程池,实现了不同服务调用的隔离,避免了服务器雪崩的问题。通过互相注册的方式来进行消息同步和保证高可用。 Spring Cloud 是一个相对比较新的微服务框架,...

    cikenerd 评论0 收藏0
  • 线上SpringCloud网关调用微服务跨机房了,咋整?

    摘要:微服务也同样在这两个机房之间都有部署。但是,大家看粉红色粗体的线条,仍然存在跨机房调用,天津网关调用到北京微服务。相当于网关以及微服务两侧都是通过基于权重的负载均衡算法来尽量减少跨机房调用的,但是无法避免跨机房调用。 ...

    yankeys 评论0 收藏0
  • spring-cloud-eureka服务治理

    摘要:服务续约在服务注册完成之后,服务提供者需要维护一个心跳来告知注册中心服务实例处于正常运行状态中,防止注册中心将正常的服务实例剔除出注册中心。 Spring Cloud Eureka 目录 前言 构建服务注册中心 服务注册与发现 Eureka的基础架构 Eureka的服务治理机制 Eureka的配置 代码地址 前言 服务治理  随着微服务应用的不断增加,静态配置会越来越难以维护,并且...

    Clect 评论0 收藏0

发表评论

0条评论

only_do

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<