![](https://img.haomeiwen.com/i152054/e62b503488727115.png)
springCloud Eureka注册中心集群搭建
- 因为注册中心很重要,属于服务的入口点,所以绝对不能是单点的,需要搭建集群,本例中使用三个Eureka节点组成为集群;(使用Idea模拟启动三个节点)
- Eureka控制台参数说明
- 环境说明:java8, springboot-2.0.1;
- 首先在idea中创建一个springboot项目名称为:
springcloud-eureka-service
- pom文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>eureka</groupId>
<artifactId>springcloud-eureka-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springcloud-eureka-service</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<!-- spring-cloud-dependencies依赖管理器,对cloud的依赖管理 -->
<dependencyManagement>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.M7</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- 注册中心服务依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
</dependencies>
<!-- 必须有该配置,否则依赖会出问题 -->
<repositories>
<!-- 从指定库中获取依赖
注意:要修改maven的setttings.xml 如下:
<mirrorOf>*,!spring-milestones</mirrorOf>
表示maven除了spring-milestones以外全部从settings配置的仓库中获取依赖-->
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/libs-milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
- 项目启动文件:
SpringcloudEurekaServiceApplication
:
package eureka.springcloudeurekaservice;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
// @EnableEurekaServer 代表启动Eureka注册中心服务端
@EnableEurekaServer
public class SpringcloudEurekaServiceApplication {
public static void main(String[] args) {
SpringApplication.run(SpringcloudEurekaServiceApplication.class, args);
}
}
-
application.yml
配置
###服务别名--该服务注册到服务中心的名称
spring:
application:
name: app-eureka
profiles:
active: server1
-
application-server1.yml
配置
### Eureka注册中心1
server:
port: 7100
###服务别名--该服务注册到服务中心的名称
spring:
application:
name: eureka-server
eureka:
instance:
### 注册中心ip地址
hostname: eureka-server1
#访问路径可以显示ip地址
#prefer-ip-address: true
#自定义入驻别名
#instance-id: euserver1:7100
client:
serviceUrl:
###注册中心地址
#defaultZone: http://${eureka.instance.hostname}:8100/eureka/,http://${eureka.instance.hostname}:9100/eureka/
defaultZone: http://eureka-server2:8100/eureka/,http://eureka-server3:9100/eureka/
###要将自己注册到注册中心
register-with-eureka: true
### 要去检索服务信息
fetch-registry: true
-
application-server2.yml
配置
### Eureka注册中心2
server:
port: 8100
###服务别名--该服务注册到服务中心的名称
spring:
application:
name: eureka-server
eureka:
instance:
### 注册中心ip地址
hostname: eureka-server2
client:
serviceUrl:
###注册中心地址
defaultZone: http://eureka-server1:7100/eureka/,http://eureka-server3:9100/eureka/
###要将自己注册到注册中心
register-with-eureka: true
### 要去检索服务信息
fetch-registry: true
-
application-server3.yml
配置
-
### Eureka注册中心3
server:
port: 9100
###服务别名--该服务注册到服务中心的名称
spring:
application:
name: eureka-server
eureka:
instance:
### 注册中心ip地址
hostname: eureka-server3
client:
serviceUrl:
###注册中心地址
defaultZone: http://eureka-server1:7100/eureka/,http://eureka-server2:8100/eureka/
###要将自己注册到注册中心
register-with-eureka: true
### 要去检索服务信息
fetch-registry: true
- 配置host
127.0.0.1 eureka-server1
127.0.0.1 eureka-server2
127.0.0.1 eureka-server3
-
配置idea,创建加载三个配置文件的入口
image.png
image.png
-
以同样的方式分别创建三个服务的激动入口
server1
,server2
,server3
; -
分别启动三个服务后
-
访问集群节点一:http://eureka-server1:7100/,效果如下:
image.png
-
访问集群节点二:http://eureka-server2:8100/
image.png
-
访问集群节点三:
image.png
代码地址:https://github.com/liangxifeng833/springcloud/tree/master/eureka
网友评论