Eureka 集群配置|学习笔记

简介: 快速学习 Eureka 集群配置

开发者学堂课程【微服务框架 Spring Cloud 快速入门Eureka 集群配置】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/614/detail/9351


Eureka集群配置

 

目录

一. 前言

二.集群配置

 

一. 前言

集群:指在不同的机器或者是服务器上配置相同的服务,对外做一个超大运算的整体。

例如:现有一个淘宝网址,其后有上万台服务器给其提供,这就是一个集群环境。

同样在此期间学过相应的集群配置。

 

二. 集群配置

前导:

首先集群除了有高可用以外,更重要的是现在所有的东西都去找 eureka。问题是如果 eureka 只有7001,失效后应当如何解决?那么多配置以后是也可满足高可用。

例如一个班级至少要配两个班主任,可能正班主任家里有事不能来,那么副班主任应该可以顶替。

1. 原理说明(前者简要说明)

2. 新建

microservicecloud-eureka-7002/microservicecloud-eureka-7003

实操发现:7001的任何东西可直接使用。

继续搭建集群:完成7001.7002.7003

3. 按照7001为模板粘贴POM

依次对7001.7002.7003修正

7001

<dependencies>

<! --eureka-server服务端-->

<dependency>

groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-starter-eureka-server</ artifactId>

</dependency>

<!--修改后立即生效,热都署-->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>springloaded</ artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-dextools</artifactId>

</dependency>

</dependencies>

project>

7002

<!--修改后立即生效,热部署-->

<dependency>

<groupId>org.springframeiwork</ groupId>

<artifactId>springloaded</ artifactId>

</ dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-devtools</artifactId>

</ dependency>

</ dependencies></proiect>

7003

<! --修改后立即生效,热部署-->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>springloaded</ artifactid></dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-devtools</artifactId>

</dependency>

</ dependencies>

</project>

4. 修改7002和7003的主启动类

依次进行拷贝70027..3

5. 修改映射配置

之前仅有一个7001,eureka 的实例主机名为 localhost。现目前有3个 eureka(不好区分),先应当做一个域名的区分。

(1) 找到 C:\Windows\System32\drivers\etc路径下的hosts 文件

访问一个7001可以进行,若访问7002,又虽端口相同,但都为localhost仍存在不便。应当做出域名映射。

(2) 修改映射配置添加进 hosts 文件

127.0.0.1 (localhost)eureka7001.com+7001端口:

7001的访问地址

127.0.0.1(localhost) eureka7002.com+7002端口:

7002的访问地址

127.0.0.1(localhost) eureka7003.com+7003端口:

   7003的访问地址

6.3台 eureka 服务器的 yml 配置

现如今三台机器,则如下:

image.png

(1)7001

单机版老版本:

server:

port: 7001

eureka:

instance:

hostname: localhost #teureka服务端的实例名称

client:

register-with-eureka: false #false表示不向注册中心注册自己。

fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务

service-url:defaultZone:http://${eureka.instance.hostname}:${server.port}/eureka/

#设置与 Eureka Server 交互的地址查询服务和注册服

现今:(域名映射后)

server:

port: 7001

euneka:

instance :

hostname: eureka7001.com tteureka服务端的实例名称

client:

register-with-eureka: false#false表示不向注册中心注册自己。

fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务

service-url:

#单机defaultZone: http://${eureka.instance.hostname} :${server.port}/eureka/

#设器与Eureka Server交互的地址查询服务和注

defaultZone: http://eureka7002.com:7002/eureka/ ,http://eureka7003.com:7003/eureka/

(2)7002

如上依次进行:

server:

port: 7002

eureka :

instance:

hostname: eureka7002.com tteureka服务端的实例名称

client:

register-with-eureka: false#false表示不向注册中心注册自己。

fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务

service-url:

#defaultZone:http://${eureka.instance.hostname}:${ server.port}/eureka/

#设置与Eureka Server交互的地址查询服务和注册服

defaultZone: http: / /eureka7001.com:7001/eureka/ ,http: / /eureka7003.com:7003/eureka/

(3)7003

server:

port: 7003

eureka :

instance:

hostname: eureka7003.com tteureka服务端的实例名称

client:

register-with-eureka: false#false表示不向注册中心注册自己。

fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服

service-url:

#defaultZone: http:/ /${eureka.instance.hostname}:${server.port}/eureka/

#设

defaultZone: http: / /eureka7001.com:7001/eureka/ ,http://eureka7002.com:7002/eurek

最关键一步为8001

首先8001需要注册,单机版时仅显示一个地址,现集群版有7001.7002.7003.则8001续同时注进1.2.3.

7.microservicecloud-provider-dept-8001微服务发布到上面3台eureka集群配置中

(1) YML

service-url:

defaultZone: http://eureka7001.com:7001/eureka/ ,http://eureka7002.com:7002/eureka/ , http://eureka7003.com:703/eure

ka/

instance:

instance-id: microservicecloud-dept8001#自定义服务名称信息prefer-ip-address: true#访问路径可以显示IP地址

info:

app.name: atguigu-microservicecloud

company.name: www.atguigu.com

build.artifactId: $project.artifactId$

build.version: $project.version$

修改后注进3台机器。

单机版:8001入注7001,现今三个eureka集群,则显示如下效果:

defaultZone: http://eureka7001.com:7001/eureka/ , http://eureka7002.com:7002/eureka/ , http:/ /eureki3.

com: 7003/eurek(8001同时进入1.2.3.集群环境中)

接下来验证:

7001.7002.7003.8001.启动验证

这样很耗内存资源。

集群环境搭建成功。

点开之后得到:

{"app" : {"name" :"atguigu-microservicecloud"} , "company":{"name" :"www.atguigu.com"} ,"build" :

{"artifactId" :"microservicecloud-provider-dept-8001","version":"0.0.1-SNAPSHOT"}}

1后面所跟2和3,微服务创建成功。

同样微服务注册成功。

{app" : {"name" :"atguigu-microservicecloud"} , "company":{"name" : "www. atguigu. com"},"build":

{"artifactId" :"microservicecloud-provider-dept-8001", "version" :"0.0.1一SNAPSHOT" } }

这一系列步骤就是 eureka 相关配置。

相关文章
|
缓存 监控 负载均衡
SpringCloud极简入门-Eureka集群&Eureka调优
当微服务数量达到上百之数,一个EurekaServer所需要承担的压力会比较大,加上单节点故障问题可能会导致整个微服务不可被访问,由于EurekaServer在微服务中举足轻重,我们需要考虑对EurekaServer做高可用集群。
386 0
|
安全 关系型数据库 MySQL
Nacos持久化到本地以及Nacos的集群配置
Nacos持久化到本地以及Nacos的集群配置
457 0
Nacos持久化到本地以及Nacos的集群配置
|
7月前
|
存储 应用服务中间件 Nacos
Nacos集群搭建
官方给出的Nacos集群图: 其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。
107 3
|
7月前
|
负载均衡 Java Maven
SpringCloud - Eureka服务注册与发现实战(单节点与集群)
SpringCloud - Eureka服务注册与发现实战(单节点与集群)
105 0
|
7月前
|
存储 关系型数据库 MySQL
【深入了解Nacos集群和持久化配置】 ——每天一点小知识
【深入了解Nacos集群和持久化配置】 ——每天一点小知识
399 0
|
存储 Java 关系型数据库
四.SpringCloudAlibaba极简入门-Nacos持久化与集群
在《Spring Cloud极简入门》应用架构演变一文中我们有提到,我们可以通过集群手段来实现来提高应用的作业能力,防止单节点故障。在之前的Nacos案例中我们玩的都是单机版的, 本片文章我们来探讨一下Nacos的集群部署。 在Nacos中数据默认是基于内存存储的,当Nacos重启数据(服务列表,配置列表)将会丢失,在Nacos中支持将数据持久到数据库。那么当我们对Nacos做了集群部署之后,多个Nacos节点之间是需要数据同步(数据共享)的,而正好Nacos节点之间的数据同步也是基于数据库来实现。所以我们要多Nacos做集群操作得向对Nacos做数据持久化。 这里我演示的是在centos
|
Java Maven 微服务
Eureka集群搭建
Eureka集群搭建
87 0
|
Java API Apache
Nacos集群搭建(中)
Nacos集群搭建(中)
141 0
|
Java 应用服务中间件 Nacos
Nacos集群搭建(上)
Nacos集群搭建(上)
412 0
|
负载均衡 前端开发 Java
Nacos集群搭建(下)
Nacos集群搭建(下)
139 0