版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lnazj/article/details/83717813
1.为什么需要Eureka集群?
Eureka作为服务注册中心,让服务作为客户端注册进来,但是假如Eureka坏了的话,所有的服务都将不能进行互相调用,为了高可用,所以需要搭建Eureka集群来解决该问题。
2.搭建集群我们需要做的几步工作:
2.1.添加工程,配置pom ,yml
添加跟7001一样的springboot 项目7002,7003,为7002,7003配置pom文件:
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<!--修正后立即生效-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>
修改7001的yml文件,7002,7003原理一样,注意与上一篇单机版进行对比.
#集群
server:
port: 7001
eureka:
instance:
hostname: eureka7001.com #eureka服务端的实例名称
client:
register-with-eureka: false #不向注册中心注册自己
fetch-registry: false #false 表示自己就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
service-url:
defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
2.2修改本地的C:\Windows\System32\drivers\etc\host文件进行域名映射
127.0.0.1 eureka7001.com
127.0.0.1 eureka7002.com
127.0.0.1 eureka7003.com
2.3修该微服务yml文件为集群式将该服务注册进入Eureka 集群
eureka:
client:
service-url:
#客户端注册进eureka服务的地址,同eureka暴露给外部的地址
# 单机版 defaultZone: http://localhost:7001/eureka
#集群
defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
instance:
#注册到eureka后,status的名字(服务在eureka的唯一标志)
instance-id: ${spring.application.name}
#访问路径可以显示IP地址
prefer-ip-address: true
info:
app.name: dmsdbj_microservicecloud
company_name: www.dmsdbj.com
build.artifactId: $project.artifactId$
build.version: $project.version$
然后启动Eureka 和微服务,会发现7003中多了eureka7001.com和eureka7002.com,同样7001中会有eureka7002.com和eureka7003.com.并且在每一个Eureka中都有微服务MICROSERVICECLOUD-DEPT8001.
学习参考:
https://blog.csdn.net/yjclsx/article/details/81484522
https://blog.csdn.net/j080624/article/details/81112809