新建项目:spring-cloud-consul-client
添加依赖
在项目 spring-cloud-consul-client pom.xml中引入需要的依赖内容:
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-consul-discovery</artifactId> </dependency>
开启服务注册
客户端注册Consul时,它提供有关自身的元数据,如主机和端口,ID,名称和标签。默认情况下,将创建一个HTTP 检查,每隔10秒Consul命中/health端点。如果健康检查失败,则服务实例被标记为关键。
@SpringBootApplication @EnableDiscoveryClient @RestController public class ConsulApplication { @RequestMapping("/") public String home() { return "Hello world"; } public static void main(String[] args) { SpringApplication.run(ConsulApplication.class, args); } }
配置文件
在application.yml配置文件中增加如下信息:如果Consul客户端位于localhost:8500以外,则需要配置来定位客户端
spring: application: name: consul-client cloud: consul: host: 192.168.252.121 port: 8500 discovery: healthCheckPath: / healthCheckInterval: 5s
如果Consul客户端位于localhost:8500以外的位置,则需要配置来定位客户端。例:
host: 192.168.252.121 port: 8500
HTTP健康检查路径 INSTALL
“10s”和“1m”分别表示10秒和1分
discovery: healthCheckPath: ${management.context-path}/health healthCheckInterval: 15s
启动服务
到spring-cloud-consul-client 项目根目录下,执行mvn clean package,把target 目录下 生成的 jarspring-cloud-consul-client-0.0.1-SNAPSHOT.jar 上传服务器,发布项目
打包命令
mvn clean package
发布命令
nohup java -jar spring-cloud-consul-client-0.0.1-SNAPSHOT.jar > /dev/null 2>&1 &
访问服务
通过上图HTTP健康检查,可以看到服务检测正常。