准备工作 因为我们用一台电脑模拟,所有我们修改电脑的etc文件夹下的host文件 加入:
代码语言:javascript复制127.0.0.1 eureka8001.cn
127.0.0.1 eureka8002.cn
我们访问这两个地址相当于访问本地的127.0.0.1路径
正式开始 配置集群就是要把多个注册中心互相注册 如: 在8001中注册8002 在8002中注册8001 创建两个eureka注册中心服务一个端口8001 一个端口为8002
8001pom依赖
代码语言:javascript复制<dependencies>
<!--新版本eureka-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<artifactId>cloud-api-commons</artifactId>
<groupId>com.rpf.springcloud</groupId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
8001 yml配置文件内容
代码语言:javascript复制server:
port: 8001
eureka:
instance:
hostname: eureka8001.cn
client:
register-with-eureka: false #false表示不向注册中心注册自己。
fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
service-url:
defaultZone: http:/eureka8002.cn:8002/eureka
8001启动类
代码语言:javascript复制@SpringBootApplication
@EnableEurekaServer
public class EurekaMain8001 {
public static void main(String[] args) {
SpringApplication.run(EurekaMain8001.class,args);
}
}
8002pom依赖
代码语言:javascript复制<dependencies>
<!--新版本eureka-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<artifactId>cloud-api-commons</artifactId>
<groupId>com.rpf.springcloud</groupId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
8002yml配置文件
代码语言:javascript复制server:
port: 8002
eureka:
instance:
hostname: eureka8002.cn
client:
register-with-eureka: false #false表示不向注册中心注册自己。
fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
service-url:
defaultZone: http:/eureka8001.cn:8001/eureka
8002启动类
代码语言:javascript复制@SpringBootApplication
@EnableEurekaServer
public class EurekaMain8002 {
public static void main(String[] args) {
SpringApplication.run(EurekaMain8002.class,args);
}
}
这时我们启动两个项目即可 访问eureka8001.cn:8001 或 eureka8002.cn:8002
可以看到互相注册了对方的服务