SpringBoot Admin

Spring Boot Admin 是一个管理和监控Spring Boot 应用程序的开源软件


非 Spring Cloud Discovery 型配置

server端

pom.xml引入 server 端依赖 

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--springBoot admin server 端依赖-->
        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-server</artifactId>
            <version>2.4.3</version>
        </dependency>
    </dependencies>

启动类添加启动注解

@SpringBootApplication
@EnableAdminServer
public class SpringbootAdminApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootAdminApplication.class, args);
    }

}

配置文件

server:
  port: 8088

spring:
  application:
    name: ludb-admin-1 #应用名称

Admin Client 端

pom文件引入client端注解和验证注解

        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-client</artifactId>
            <version>2.4.3</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

config文件为关闭安全验证以便读取服务信息

package com.eurekaclient1.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;

@Configuration
public class SecurityPermitAllConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests().anyRequest().permitAll()
                .and().csrf().disable();
    }
}

 配置文件

server:
  port: 8081

spring:
  application:
    name: ludb-client-1 #应用名称

  #配置springBoot Admin 的服务地址
  boot:
    admin:
      client:
        url: http://localhost:8088
#与 Spring Boot 2 一样,默认情况下大多数端点都没有通过 http 公开,我们公开了所有端点
management:
  endpoints:
    web:
      exposure:
        include: '*'

Spring Cloud Discovery 型配置

如果我们使用的是单个Spring Boot应用,就需要在每一个被监控的应用中配置Admin Server的地址信息;如果应用都注册在Eureka中就不需要再对每个应用进行配置,Spring Boot Admin会自动从注册中心抓取应用的相关信息。

Spring Cloud Discovery 型配置增加修改如下:

admin server 端

增加eureka配置

        <!--eureka-client端依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

启动类增加eureka 的client端注解(@EnableDiscoveryClient)

@SpringBootApplication
@EnableAdminServer
@EnableDiscoveryClient
public class SpringbootAdminApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootAdminApplication.class, args);
    }

}

增加 eureka相关配置

server:
  port: 8088

spring:
  application:
    name: ludb-admin-1 #应用名称、

eureka:
  instance:
    prefer-ip-address: true #是否使用IP地址注册(用于eureka展示)
    instance-id:  ${spring.cloud.client.ip-address}:${server.port} #当前客户端IP:端口

  client:
    #    设置服务注册中心地址【向注册中心集群注册(注册两台是为了防止第一台宕机还可以挂在第2台上)】
    service-url:
      defaultZone: http://ludb:ludb123@localhost:8761/eureka/,http://ludb:ludb123@localhost:8762/eureka/

    registry-fetch-interval-seconds: 10 #表示10秒拉取一次服务注册信息,默认30秒
    register-with-eureka: true #是否将自己注册到注册中心,默认true

admin client 端

配置增加eureka相关配置,并注释掉springBoot Admin的路由地址

server:
  port: 8081

eureka:
  instance:
    prefer-ip-address: true #是否使用IP地址注册(用于eureka展示)
    instance-id:  ${spring.cloud.client.ip-address}:${server.port} #当前客户端IP:端口

  client:
#    设置服务注册中心地址【向注册中心集群注册(注册两台是为了防止第一台宕机还可以挂在第2台上)】
    service-url:
      defaultZone: http://ludb:ludb123@localhost:8761/eureka/,http://ludb:ludb123@localhost:8762/eureka/

    registry-fetch-interval-seconds: 10 #表示10秒拉取一次服务注册信息,默认30秒
    register-with-eureka: true #是否将自己注册到注册中心,默认true

spring:
  application:
    name: ludb-client-1 #应用名称

#  #配置springBoot Admin 的服务地址
#  boot:
#    admin:
#      client:
#        url: http://localhost:8088
#与 Spring Boot 2 一样,默认情况下大多数端点都没有通过 http 公开,我们公开了所有端点
management:
  endpoints:
    web:
      exposure:
        include: '*'

可以参考官网文档:https://codecentric.github.io/spring-boot-admin/current/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值