说明
Spring Boot:2.2.2
Spring Boot Admin:2.2.0(版本很重要,1.x的版本配置项不一样)
一、Spring Boot Admin接入说明
对于Spring Boot Admin是由两部分构成的,admin-server和admin-client, admin-client就是在客户端收集数据的,admin-server就是汇总admin-client收集的数据。
所以:
(1)要创建一个admin-server的项目,用来收集数据。
(2)在要收集数据的spring boot中添加admin-client。
二、Spring Boot Admin接入操作
2.1 Admin-Server
创建一个Spring Boot项目,添加admin-server的依赖,引入如下依赖:
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.2.0</version>
</dependency>
在启动类启用admin-server:
@SpringBootApplication
@EnableAdminServer
在配置文件添加配置:
spring.application.name = admin-server
server.port = 8888
2.2 Admin-Client
在需要进行可视化的项目中添加admin-client依赖:
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.2.0</version>
</dependency>
在配置文件添加配置:
spring.boot.admin.client.url = http://localhost:8888
management.endpoints.web.exposure.include=*
management.endpoints.web.health.show-details=ALWAYS
版本的不同,这里配置的key是不一样的。
2.3 验证效果
启动admin-server,启动client,然后就可以访问地址:
http://127.0.0.1:8888/
三、Spring Boot Admin其它说明
3.1 Admin-Server安全问题
这个可以配置Spring Security进行安全控制,那么访问admin-server的控制台和client都需要进行账号和密码才能进行连接了。
3.2 client状态通知
如果我们的一个spring boot挂了,我们希望能够进行通知下,admin-server也是支持的,而且支持多种通知方式:
(1)电子邮件
(2)PagerDuty
(3)OpsGenie
(4)Hipchat
(5)Slack
(6)Let’s Chat
3.3 是否支持在Spring Cloud中使用呢?
这个是支持的,配置上的一些差别而已。