欢迎访问优讯网!
您当前的位置:首页 > 爱编程

Springcloud eureka搭建高可用集群过程图解

时间:2020-04-21 08:54:11  来源:优讯网  作者:小卡司  浏览次数:
这篇文章主要介绍了Springcloud eureka搭建高可用集群过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一 前言

eureka作为注册中心,其充当着服务注册与发现功能,加载负载均衡;若在项目运行中eureka挂了,那么整个服务整体都会暂停,所以为服务运行的安全性,有必要搭建eureka集群;当其中一个eureka节点挂了,我们还有另外的节点可用;本篇文章的核心是如何在idea上运行eureka集群,和项目部署;需注意的jdk版本是1.8,高于jdk1.8打包部署会出问题,需要引入其他依赖;

二 eureka-server配置文件改造

之前的配置文件如下,这是单个eureka-server的配置,并不能满足于我们实际项目需求,我们要将其改造成高可用的集群节点模式;

1
2
3
4
5
6
7
8
9
10
11
12
server:
 port: 10086
 
eureka:
 instance:
  hostname: localhost
 client:
  # 作为server,表示禁止向自己注册
  register-with-eureka: false
  fetch-registry: false
  service-url:
   defaultZone: <a href="http://${eureka.instance.hostname}:${server.port}/eureka/"
rel="external nofollow">http://${eureka.instance.hostname}:${server.port}/eureka/</a>

改造配置文件如下,之前的文章中我们了解了eureka的peer to peer 交流机制,我们现在就根据这个原理搭建高可用的eureka集群,在配置文件中可以看见知识追寻者配置了3个peer(peer1,peer2,peer3); 它们的端口分别是10081,10082,10083; peer1,分别向 peer2,peer3注册,peer2则向 peer1,peer3注册,peer3同理;这样就构成了eureka简单的3个节点集群;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
spring:
 application:
  name: eureka-server-cluster
---
spring:
 profiles: peer1
server:
 port: 10081
eureka:
 instance:
  hostname: peer1
 client:
  service-url:
   # 向peer2 peer3节点注册自己
   defaultZone: http://peer2:10082/eureka,http://peer3:10083/eureka
 
---
spring:
 profiles: peer2
server:
 port: 10082
eureka:
 instance:
  hostname: peer2
 client:
  service-url:
   # 向peer1 pee3节点注册自己
   defaultZone: http://peer1:10081/eureka,http://peer3:10083/eureka
 
---
spring:
 profiles: peer3
server:
 port: 10083
eureka:
 instance:
  hostname: peer3
 client:
  service-url:
   # 向peer1 peer2节点注册自己
   defaultZone: <a href="http://peer1:10081/eureka,http://peer2:10082/eureka"
rel="external nofollow">http://peer1:10081/eureka,http://peer2:10082/eureka</a>

三 eureka-client配置文件改造

在之前的基础上多添加了注册server节点 peer2,peer3

1
2
3
4
5
6
7
8
9
10
11
12
server:
 port: 8090
 
spring:
 application:
  name: eureka-client # 应用名称
 
eureka:
 client:
  service-url:
   # 服务注册地址
   defaultZone: <a href="http://peer1:10081/eureka/,http://peer2:10082/eureka/,
http://peer3:10083/eureka/"
rel="external nofollow">http://peer1:10081/eureka/,
http:
//peer2:10082/eureka/,http://peer3:10083/eureka/</a>

修改host文件目的是peer对应ip地址,实际项目中 每个peer节点都是一个ip地址;

1
2
3
192.168.0.101 peer1
192.168.0.101 peer2
192.168.0.101 peer3

五 复制启动配置

复制配置如下:点击 cpoy configuration 选项;

进入编辑状态,修改 name 为 EurekaServer(1), 激活的配置文件选项 填 peer1;以此类推,我们复制三个实例; 分别是 EurekaServer(1),EurekaServer(2),EurekaServer(3);分别激活配置 peer2,peer2,peer3;

六 启动 eureka-server

分别启动三个配置实例,图如下;

浏览器输入 http://localhost:10083/ 或者 http://localhost:10082/ 或者 http://localhost:10081/;结果如下,知识追寻者在浏览器输入的 peer3地址,那么 对应的复制的Node 是 peer2,peer1;server有三个;

七 启动 eureka-client

启动eureka client 图如下

刷新浏览器界面,可以看见 client 已经注册到 server;

八 打包部署

进入 eureka-server 工程目录 执行 打包命令 mvn clean package

打开三个命令行分别执行对应的命令,一个cmd一条;

java -jar eureka-server-1.0.0-SNAPSHOT.jar --spring.profiles.active=peer1
java -jar eureka-server-1.0.0-SNAPSHOT.jar --spring.profiles.active=peer2
java -jar eureka-server-1.0.0-SNAPSHOT.jar --spring.profiles.active=peer3

pee3 如下

浏览器页面如下:

九 多 profile运行注意事项

如下 配置文件 不写在src/main/resources一个 application 中,而是分为 application-peer1.yml, application-peer2.yml, application-peer3.yml ; 在 idea 的虚拟机参数(VM Options)配置 是
-Dspring.profiles.active=peer1 , -Dspring.profiles.active=peer2 ,-Dspring.profiles.active=peer3;部署方式相同;也可以通过 mvn spring-boot:run -Dspring.profiles.active=peer1 的形式运行;

以上就是本文的全部内容

来顶一下
返回首页
返回首页

原文链接:https://www.jb51.net/article/185093.htm


推荐资讯
如何下载旧版centos iso镜像 如何下载迷你mini版的centos镜像
如何下载旧版centos i
计算机的正确使用姿势 电脑痴如何正确的使用电脑
计算机的正确使用姿势
好用的后台管理的前端框架模版H-ui H-ui框架模版分享
好用的后台管理的前端
微信电脑多开方法 无需辅助电脑版微信双开方法分享
微信电脑多开方法 无
相关文章
栏目更新
栏目热门