详解Spring boot Admin 使用eureka监控服务

时间:2021-05-19

前言

最近刚好有空,来学习一下如何搭建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文件

    <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

    @Configuration@EnableAutoConfiguration@EnableDiscoveryClient@EnableAdminServerpublic class AdminServerApplication { public static void main(String[] args) { SpringApplication.run(AdminServerApplication.class, args); }}

    @EnableAdminServer 用来标记为admin应用的

    其他的注解都和普通的eureka client 应用一致

    yml文件

    spring: application: name: admin-server boot: admin: routes: endpoints: env,metrics,trace,dump,jolokia,info,configprops,trace,logfile,refresh,flyway,liquibase,heapdump,hystrix.streameureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/#测试,不使用密码management.security.enabled: falseserver: 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

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章