前言
最近刚好有空,来学习一下如何搭建spring boot admin环境。其中遇到很多的坑。
网上大多都是使用admin-url的方式直接来监控的,感觉一点也不灵活,这不是我想要的结果,所以本篇介绍借助eureka服务注册和发现功能来灵活监控程序。
本文主要记录spring boot admin的搭建过程,希望能有所帮助。其实非常的简单,不要被使用常规方式的误导!
环境介绍
- ide:intellij idea
- jdk: java8
- maven:3.3.9
- spring boot:1.5.6
- spring cloud:edgware.build-snapshot
搭建过程
1.对于之前的eureka-client服务我们不需要进行任何更改,保持原来的状态就行。
2.搭建spring boot admin服务(也是一个eureka服务)
3.测试结果
spring boot admin模块
这里一定要注意,到目前为止(2017年10月31日10点16分),我们不能对spring boot admin 使用edgware.build-snapshot版本的eureka,会报错,因为目前最新版的codecentric1.5.4版本不兼容的问题.
所以这里要对admin依赖的spring cloud版本降级,我使用的是dalton.sr4版本。没有问题!
pom文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
<dependencies>
<!--admin的服务-->
<dependency>
<groupid>de.codecentric</groupid>
<artifactid>spring-boot-admin-server</artifactid>
<version> 1.5 . 4 </version>
</dependency>
<!--admin的ui依赖-->
<dependency>
<groupid>de.codecentric</groupid>
<artifactid>spring-boot-admin-server-ui</artifactid>
<version> 1.5 . 4 </version>
</dependency>
<dependency>
<groupid>org.springframework.boot</groupid>
<artifactid>spring-boot-starter-actuator</artifactid>
</dependency>
<dependency>
<groupid>org.springframework.cloud</groupid>
<artifactid>spring-cloud-starter-eureka</artifactid>
</dependency>
</dependencies>
<dependencymanagement>
<dependencies>
<dependency>
<groupid>org.springframework.cloud</groupid>
<artifactid>spring-cloud-dependencies</artifactid>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope> import </scope>
</dependency>
</dependencies>
</dependencymanagement>
|
application
1
2
3
4
5
6
7
8
9
10
|
@configuration
@enableautoconfiguration
@enablediscoveryclient
@enableadminserver
public class adminserverapplication {
public static void main(string[] args) {
springapplication.run(adminserverapplication. class , args);
}
}
|
@enableadminserver 用来标记为admin应用的
其他的注解都和普通的eureka client 应用一致
yml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
spring:
application:
name: admin-server
boot:
admin:
routes:
endpoints: env,metrics,trace,dump,jolokia,info,configprops,trace,logfile,refresh,flyway,liquibase,heapdump,hystrix.stream
eureka:
client:
serviceurl:
defaultzone: http: //localhost:8761/eureka/
#测试,不使用密码
management.security.enabled: false
server:
port: 8089
|
结果展示
到此配置结束,我们依次启动eureka server,admin server,eureka client``eureka client2的应用
1.首先去eureka注册中心 http://localhost:8761/查看是否将所有的应用都已经注册
我们的admin-server也是作为一个服务被注册进来,这样才能发挥eureka的服务发现功能
2.查看admin server中的监控ui http://localhost:8089
到此我们的spring boot admin 就已经搭建完成!
总结
上述的端口服务名,根据大家各自的配置会有所不同,请注意
另外版本也是非常值得注意的.
还有就是大家使用的方法不同,所以配置也有所不同,大家一定要注意自己的实现方式.
源代码在 https://github.com/eumji025/spring-cloud-repository/tree/edgware
对应的module为:
1.spring-cloud-discovery-eureka-client
2.spring-cloud-discovery-eureka-client2
3.spring-cloud-discovery-eureka-server
4.spring-boot-admin-server
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/jsu_9207/article/details/78400758