Nacos整合Spring Boot Admin

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nacos整合Spring Boot Admin相关的知识,希望对你有一定的参考价值。

参考技术A

gitHub

springboot 有一个非常好用的监控和管理的源软件,这个软件就是spring boot admin,该软件能够将Actuator中的信息进行图形化的展示,也可以监控 Spring Boot 应用的健康状况,提供实时报警功能.

主要的功能点有

pom.xml

设置启动类

bootstrap.yml注册到nacos(配置nacos地址,开启actuator全部端点,配置日志打印路径)

由于多种方法可以解决分布式Web应用程序中的身份验证和授权,因此SpringBootAdmin不会提供默认方法,默认情况下Spring-boot-admin-server-ui提供了登录页面和注销功能

添加配置

编写Security的配置

启动项目,即可看到登录页面,输入配置的账号密码登录,能看到注册的服务

页面还是挺好看的

由于Spring Admin Server UI 里有很多js和css,在我们上生产时,大多数选择nginx代理加重定向头的组合,这会是页面加载崩溃,找不到元素,所以我们要配置nginx代理的proxy_set_header 以及服务端跨域处理

在我们服务宕机或上线时可以自动触发邮件发送,需要提前开启邮件的imtp和smtp功能,请自行了解

pom.xml

配置账号

手动停止一个服务看下效果,成功发送报警邮件

pom.xml

启动类

client端相对简单,因为nacos自动帮我们整合了与admin的关联工作,只需要注册进nacos,并且与服务端保持在同一命名空间和分组下即可

bootstrap.yml

一切就绪就可以在控制台看到我们的服务了

Dubbo Admin —— Spring Cloud Alibaba 2021.1 + Nacos + Dubbo Admin参考配置

环境配置

    <dependencyManagement>
        <dependencies>
            <!--Spring Boot-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.6.2</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--Spring Cloud-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>2021.0.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--Spring Cloud Alibaba-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2021.1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!--Alibaba Aliyun-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>aliyun-spring-boot-dependencies</artifactId>
                <version>1.0.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

Nacos:2.0.2
Dubbo:2.7.8
Dubbo Admin:0.3.0

应用配置

bootstrap.yml

spring:
  application:
    name: xxx
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
        namespace: 645f0af0-167d-4f26-9c52-ac317dfba41a
      config:
        server-addr: 127.0.0.1:8848
        namespace: 645f0af0-167d-4f26-9c52-ac317dfba41a
        file-extension: yaml
dubbo:
  application:
    id: xxx
    name: xxx
  protocol:
    id: dubbo
    port: -1
  registry:
    id: nacos
    address: nacos://127.0.0.1:8848?namespace=645f0af0-167d-4f26-9c52-ac317dfba41a
    check: false
  scan:
    base-packages: xxx
  consumer:
    check: false

Dubbo Admin配置

测试结果


参考文章

以上是关于Nacos整合Spring Boot Admin的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot与Nacos整合

Spring Cloud 整合 Spring Boot Admin

Nacos学习笔记 Nacos整合SpringBoot流程

Nacos学习笔记 Nacos整合SpringBoot流程

微服务:整合 Spring Boot Admin - 邮件警报

微服务:整合 Spring Boot Admin - 开启Security安全认证