第二章:搭建集群版Eureka Server
注册中心作为微服务架构中的核心功能,其重要性不言而喻。所以单机版的Eureka Server在可靠性上并不符合现在的互联网开发环境。集群版的Eureka Server才是商业开发中的选择。
简介:Eureka Server注册中心集群中每个节点都是平等的,集群中的所有节点同时对外提供服务的发现和注册等功能。同时集群中每个Eureka Server节点又是一个微服务,也就是说,每个节点都可以在集群中的其他节点上注册当前服务。又因为每个节点都是注册中心,所以节点之间又可以相互注册当前节点中已注册的服务,并发现其他节点中已注册的服务。
本例:两个linux系统中,为这两个Linux系统分别定义域名为node01和node02
在集群搭建过程中,全局配置文件的定义非常重要。其中euraka.client.serviceUrl.defaultZone属性是用于配置集群中其他节点的。如果有多个节点,使用逗号','分隔。
application-node01.properties内容如下:
#设置spring应用命名,可以自定义,非必要 spring.application.name=eureka-server-cluster #设置Eureka Server WEB控制台端口,自定义 server.port=8761 # 设置eureka实例名称,建议与配置文件的变量相同,必须和Linux系统域名相同 eureka.instance.hostname=node01 # 设置服务注册中心地址,指向另一个注册中心,使用域名作为访问路径 eureka.client.serviceUrl.defaultZone=http://node02:8761/eureka/
application-node02.properties内容如下:
#设置spring应用命名,可以自定义,非必要 spring.application.name=eureka-server-cluster #设置Eureka Server WEB控制台端口,自定义 server.port=8761 # 设置eureka实例名称,建议与配置文件的变量相同,必须和Linux系统域名相同 eureka.instance.hostname=node02 # 设置服务注册中心地址,指向另一个注册中心,使用域名作为访问路径 eureka.client.serviceUrl.defaultZone=http://node01:8761/eureka/
pom.xml配置文件如下:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka-server</artifactId> </dependency>
打包上传到二台linux系统中,使用 java -jar -Dspring.profiles.active=node02 eureka-server-cluster-1.0.jar 命令启动
浏览器输入:http://node01:8761/ 查看eureka注册中心