Spring Cloud的Eureka注册中心集群搭建

以你之姓@ 2022-01-16 01:51 379阅读 0赞

Spring Cloud也包含了许多的子项目 , 下面等下要使用的Eureka只是其中的一个子项目

Eureka的功能有点类似于dubbo和zookeeper,它是一个服务治理组件,包含了服务注册中心、服务注册与发现机制。

Eureka的使用非常简单

我们首先在idea里创建一个maven项目 , 等下方便我们进行操作

服务治理组件 我们需要弄服务注册中心、服务注册(提供者)与发现机制(消费者)三个Spring Boot项目,我把他们都放在maven里进行管理 ,具体步骤如下:

先在maven项目上在去新建一个module ,作为我们的服务注册中心(eureka)
在这里插入图片描述

新建的module我们选择Spring Boot项目 , 勾选如下依赖

在这里插入图片描述

具体依赖如下

  1. <parent>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-parent</artifactId>
  4. <version>2.1.5.RELEASE</version>
  5. <relativePath/> <!-- lookup parent from repository -->
  6. </parent>
  7. <groupId>com.liy</groupId>
  8. <artifactId>eureka</artifactId>
  9. <version>0.0.1-SNAPSHOT</version>
  10. <name>eureka</name>
  11. <description>Demo project for Spring Boot</description>
  12. <properties>
  13. <java.version>1.8</java.version>
  14. <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
  15. </properties>
  16. <dependencies>
  17. <dependency>
  18. <groupId>org.springframework.boot</groupId>
  19. <artifactId>spring-boot-starter-web</artifactId>
  20. </dependency>
  21. <dependency>
  22. <groupId>org.springframework.cloud</groupId>
  23. <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
  24. </dependency>
  25. <dependency>
  26. <groupId>org.springframework.boot</groupId>
  27. <artifactId>spring-boot-starter-test</artifactId>
  28. <scope>test</scope>
  29. </dependency>
  30. </dependencies>
  31. <dependencyManagement>
  32. <dependencies>
  33. <dependency>
  34. <groupId>org.springframework.cloud</groupId>
  35. <artifactId>spring-cloud-dependencies</artifactId>
  36. <version>${spring-cloud.version}</version>
  37. <type>pom</type>
  38. <scope>import</scope>
  39. </dependency>
  40. </dependencies>
  41. </dependencyManagement>
  42. <build>
  43. <plugins>
  44. <plugin>
  45. <groupId>org.springframework.boot</groupId>
  46. <artifactId>spring-boot-maven-plugin</artifactId>
  47. </plugin>
  48. </plugins>
  49. </build>

这个服务中心 ,我们只需要在配置文件中配置一下 , 然后在启动类里使用一个注解 ,然后启动项目即可

application.properties

  1. #端口号
  2. server.port=1111
  3. spring.application.name=eureka
  4. #是否向注册中心(eureka)注册 ,不必向自己注册 ,除非是搭建一个注册中心的集群,那么这里就要为true了
  5. eureka.client.register-with-eureka=false
  6. #是否允许它去获取其他的注册的服务,因为他是注册中心,所以不需要去获取的
  7. eureka.client.fetch-registry=false

启动类里添加个@EnableEurekaServer

  1. @SpringBootApplication
  2. @EnableEurekaServer
  3. public class EurekaApplication {
  4. public static void main(String[] args) {
  5. SpringApplication.run(EurekaApplication.class, args);
  6. }
  7. }

启动项目看到如下页面 , 即注册中心ok了(下面截图只截取了头部)

在这里插入图片描述

如果是要搭建这个注册中心的集群的话 ,也是相当简单的 ,

复制这个application.properties配置文件的两份

在这里插入图片描述

application-peer1.properties

  1. server.port=1111
  2. spring.application.name=eureka
  3. eureka.instance.hostname=peer1
  4. #搭建eureka集群 ,开启向eureka注册
  5. eureka.client.register-with-eureka=true
  6. eureka.client.fetch-registry=false
  7. #搭建eureka集群,那么需要注册到eureka去,这是注册的eureka的路径
  8. eureka.client.service-url.defaultZone=http://peer2:1112/eureka

application-peer2.properties

  1. server.port=1112
  2. spring.application.name=eureka
  3. eureka.instance.hostname=peer2
  4. eureka.client.register-with-eureka=true
  5. eureka.client.fetch-registry=false
  6. #互相注册,保持消息服务同步
  7. eureka.client.service-url.defaultZone=http://peer1:1111/eureka

还需要在 本机的C:\Windows\System32\drivers\etc 路径下去到 hosts 文件里去加上下面图片上的两行

在这里插入图片描述

这是在一个Spring Boot项目里 ,怎么运行不同的配置文件呢 , 我们把项目进行打包

在这里插入图片描述

选择左边的maven ,然后选择要打包的Spring Boot项目 ,双击如图的package ,就开始打包了 ,如下打包成功

在这里插入图片描述

然后我们点击Terminal
在这里插入图片描述

进入打包的目录里去
在这里插入图片描述

分别启动两个
在这里插入图片描述

在这里插入图片描述

如果你只启动了一个 ,或者另一个还没有启动起来 , 那么那个已经启动了的会一直报错

在这里插入图片描述

你只需把另一个启动即可 ,两个启动成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这样我的注册中心eureka集群就就搭建好了 , 下一篇我们讲提供者(provider)以及提供者集群和消费者(consumer)怎么搭建

发表评论

表情:
评论列表 (有 0 条评论,379人围观)

还没有评论,来说两句吧...

相关阅读