1.7 控制台

    科技2025-07-21  9

    目录

    Pt1 概述

    Pt2 启动控制台

    Pt2.1 获取 Sentinel 控制台

    Pt2.2 启动

    Pt3. 客户端接入控制台

    Pt3.1 引入JAR包

    Pt3.2 配置启动参数

    Pt3.3 触发客户端初始化

    Pt4 控台操作


    Pt1 概述

    Sentinel 提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理、监控(单机和集群),规则管理和推送的功能。另外,鉴权在生产环境中也必不可少。这里,我们将会详细讲述如何通过简单的步骤就可以使用这些功能。

    接下来,我们将会逐一介绍如何整合 Sentinel 核心库和 Dashboard,让它发挥最大的作用。同时我们也在阿里云上提供企业级的控制台:AHAS Sentinel 控制台,您只需要几个简单的步骤,就能最直观地看到控制台如何实现这些功能。

    Sentinel 控制台包含如下功能:

    查看机器列表以及健康情况:收集 Sentinel 客户端发送的心跳包,用于判断机器是否在线。

    监控 (单机和集群聚合):通过 Sentinel 客户端暴露的监控 API,定期拉取并且聚合应用监控信息,最终可以实现秒级的实时监控。

    规则管理和推送:统一管理推送规则。

    鉴权:生产环境中鉴权非常重要。这里每个开发者需要根据自己的实际情况进行定制。

    注意:Sentinel 控制台目前仅支持单机部署。

     

    Pt2 启动控制台

    Pt2.1 获取 Sentinel 控制台

    您可以从 release 页面 下载最新版本的控制台 jar 包。

    您也可以从最新版本的源码自行构建 Sentinel 控制台:

    下载 控制台 工程

    使用以下命令将代码打包成一个 fat jar: mvn clean package

    ​​​​​​​

    Pt2.2 启动

    注意:启动 Sentinel 控制台需要 JDK 版本为 1.8 及以上版本。

    使用如下命令启动控制台:

    java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar

    其中 -Dserver.port=8080 用于指定 Sentinel 控制台端口为 8080。

    从 Sentinel 1.6.0 起,Sentinel 控制台引入基本的登录功能,默认用户名和密码都是 sentinel。可以参考 鉴权模块文档 配置用户名和密码。

    注:若您的应用为 Spring Boot 或 Spring Cloud 应用,您可以通过 Spring 配置文件来指定配置,详情请参考 Spring Cloud Alibaba Sentinel 文档。

    控台地址:localhost:8080

     

    Pt3. 客户端接入控制台

    控制台启动后,客户端需要按照以下步骤接入到控制台。

    Pt3.1 引入JAR包

    客户端需要引入 Transport 模块来与 Sentinel 控制台进行通信。您可以通过 pom.xml 引入 JAR 包:

    <dependency>   <groupId>com.alibaba.csp</groupId>   <artifactId>sentinel-transport-simple-http</artifactId>   <version>x.y.z</version> </dependency>

     

    Pt3.2 配置启动参数

    启动时加入 JVM 参数 -Dcsp.sentinel.dashboard.server=consoleIp:port 指定控制台地址和端口。若启动多个应用,则需要通过 -Dcsp.sentinel.api.port=xxxx 指定客户端监控 API 的端口(默认是 8719)。除了修改 JVM 参数,也可以通过配置文件取得同样的效果。更详细的信息可以参考 启动配置项。

    上面是官方给出的参数配置,我没有尝试。我是用了如下配置接入dashboard:

    # 接入Sentinel dashboard spring.cloud.sentinel.transport.dashboard=127.0.0.1:7777 # 取消Sentinel控台懒加载 # 默认情况下Sentinel会在客户端首次调用进行初始化,想控制台发送心跳包 # 配置eager=true取消懒加载功能 spring.cloud.sentinel.eager=true

     

    刷新控台页面

     

    Pt3.3 触发客户端初始化

    确保客户端有访问量,Sentinel 会在客户端首次调用的时候进行初始化,开始向控制台发送心跳包。

    注意:您还需要根据您的应用类型和接入方式引入对应的 适配依赖,否则即使有访问量也不能被 Sentinel 统计。

     


    Pt4 控台操作

    Sentinel Dashboard主要有以下功能:

    查看机器列表以及健康情况

    监控

    规则管理及推送

    鉴权

     

    具体使用可以参照官网:https://github.com/alibaba/Sentinel/wiki/%E6%8E%A7%E5%88%B6%E5%8F%B0

    在生产环境使用Sentinel:https://github.com/alibaba/Sentinel/wiki/%E5%9C%A8%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E4%BD%BF%E7%94%A8-Sentinel

    Processed: 0.012, SQL: 8