目录
1 注册中心集群原理
2 注册中心集群配置
2.1 修改host文件
2.2 pom.xml、application.yml、application-7002.yml
3 分别启动注册中心
1 注册中心集群原理
Eureka Server集群原理:互相注册,相互守望。如果一个微服务项目中只有一个注册中心,当注册中心出故障,那么对于系统来说就是灾难性的。注册中心一定要保证高可用,集群就是保障的手段。通过Eureka Server集群,实现负载均衡、故障容错。
2 注册中心集群配置
2.1 修改host文件
找到C:\Windows\System32\drivers\etc下的hosts文件,添加如下配置:
127.0.0.1
127.0.0.1
2.2 pom.xml、application.yml、application-7002.yml
pom.yml
<dependencies><!-- Eureka Server --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></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><!-- 引入自定义的api通用包 --><dependency><groupId>com.bighuan.springcloud</groupId><artifactId>cloud-api-commons</artifactId><version>${project.version}</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></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><dependency><groupId>junit</groupId><artifactId>junit</artifactId></dependency><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><mainClass>com.bighuan.springcloud.EurekaMain7001</mainClass></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build></dependencies>
application.yml
eureka-server7001的yml文件:
server:port: 7001eureka:instance:hostname: #eureka服务端的实例名称client:# false表示不向注册中心注册自己register-with-eureka: false# false表示自己就是注册中心,职责就是维护服务实例,并不需要去检索服务fetch-registry: falseservice-url:# 设置与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址defaultZone: :7002/eureka
application-7002.yml
eureka-server7002的yml文件:
server:port: 7002eureka:instance:hostname: #eureka服务端的实例名称client:# false表示不向注册中心注册自己register-with-eureka: false# false表示自己就是注册中心,职责就是维护服务实例,并不需要去检索服务fetch-registry: falseservice-url:# 设置与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址defaultZone: :7001/eureka
两个Eureka Server互相注册,作为彼此的注册中心。如果有三个注册中心,那么就是一个Eureka Server向另外两个Eureka Server注册,以此类推。
3 分别启动注册中心
打包:
mvn clean package -Dmaven.test.skip=true
分别以、配置信息启动Eureka
java -jarcloud-eureka-server7001-1.0-SNAPSHOT.jar --spring.profiles.active=7001
java -jarcloud-eureka-server7001-1.0-SNAPSHOT.jar --spring.profiles.active=7002
分别访问:7001/、:7002/,从下图可以看到,可以看到Eureka Server7001的相邻节点为Eureka Server7002,而后者的相邻节点为前者。
如果觉得《微服务学习之Eureka注册中心集群环境构建【Hoxton.SR1版】》对你有帮助,请点赞、收藏,并留下你的观点哦!