前言
Eureka注册中心相当于Zookeeper注册中心,思想是类似的,只不过Zookeeper需要在本机上下载一个服务客户端,直接启动客户端即可,而Eureka注册中心需要我们自己动手搭建,不过也不难。
搭建步骤
1、新建一个Maven项目
此处用的IDE是IDEA.
2、导入依赖
在Maven厂库里Eureka的主要依赖有三个,我们选择服务端那个,版本自己选择一个就好,建议用最新的,能和SpringCloud相匹配的版本。
<!--eureka注册中心用这个包-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
3、编写配置文件
在 resources
资源目录下新建一个 application.yml
文件,文件内容如下:
server:
port: 7001 # 端口号
# Eureka注册中心的配置
eureka:
server:
enable-self-preservation: true # 开启自我保护模式
instance:
hostname: localhost # Eureka服务端的实例名称,即注册中心的名称
client:
register-with-eureka: false # 表示是否将自己往Eureka注册中心注册,因为自己就是注册中心,所以false
fetch-registry: false # 如果fetch-registry为false,则表示自己是注册中心,否则为客户端
service-url: # 监控页面,可以在这个url中监控注册中心的服务
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
重点强调一下 defaultZone
属性,该属性是设置一个url,开启服务之后可以在这个url的界面中监控注册中心的服务的信息。
4、编写主启动类
在Java目录下建立自己的包,在包中新建一个主启动类,名字任意,我这里用 EurekaServer_7001
。
@SpringBootApplication
@EnableEurekaServer //开启Eureka注册中心
public class EurekaServer_7001 {
public static void main(String[] args) {
SpringApplication.run(EurekaServer_7001.class,args);
}
}
5、开启Eureka注册中心
在主启动类上加一个 @EnableEurekaServer
注解即可。
6、访问Eureka注册中心
启动服务,在浏览器访问刚刚在 defaultZone
中设置的url,正常页面如下:
到这里,Eureka注册中心就搭建成功了!
补充
将服务提供者的服务注册到注册中心
1、导入依赖
<!--eureka服务提供者或者客户端用这个包-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
2、编写配置文件,加入下面一段即可:
# Eureka服务提供者的配置,服务注册到哪里,即注册中心的地址(单机情况下,即只有一个注册中心,只需注册到一个注册中心)
eureka:
client:
service-url:
defaultZone: http://localhost:7001/eureka/ # 注册中心的地址
3、在主启动类上开启这个功能,添加注解 @EnableEurekaClient
即可。
4、在服务启动后,会自动将客户端(服务提供者)的服务注册到eureka服务注册中心。