Spring Cloud Alibaba 熔断器仪表盘监控
Sentinel 控制台
Sentinel 控制台提供一个轻量级的控制台,它提供机器发现、单机资源实时监控、集群资源汇总,以及规则管理的功能。您只需要对应用进行简单的配置,就可以使用这些功能。
注意: 集群资源汇总仅支持 500 台以下的应用集群,有大概 1 – 2 秒的延时。如果想支持更多的集群,那就部署两个Sentinel喽
下载并打包
# 下载源码
git clone https://github.com/alibaba/Sentinel.git
# 编译打包
mvn clean package
注:下载依赖时间较长,请耐心等待…
启动控制台
Sentinel 控制台是一个标准的 SpringBoot 应用,以 SpringBoot 的方式运行 jar 包即可。
cd sentinel-dashboard\target
java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar
如果8080端口冲突请修改-Dserver.port=自定义端口号
访问服务
打开浏览器访问:http://localhost:8080/#/dashboard/home
配置控制台信息
application.yml
配置文件中增加如下配置:
spring:
cloud:
sentinel:
transport:
port: 8719
dashboard: localhost:8080
这里的 spring.cloud.sentinel.transport.port
端口配置会在应用对应的机器上启动一个 Http Server,该 Server 会与 Sentinel 控制台做交互。比如 Sentinel 控制台添加了 1 个限流规则,会把规则数据 push 给这个 Http Server 接收,Http Server 再将规则注册到 Sentinel 中。
测试 Sentinel
使用之前的 Feign 客户端,application.yml
完整配置如下:
spring:
application:
name: nacos-consumer-feign
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
sentinel:
transport:
port: 8720
dashboard: localhost:8080
server:
port: 9092
feign:
sentinel:
enabled: true
management:
endpoints:
web:
exposure:
include: "*"
注:由于 8719 端口已被 sentinel-dashboard 占用,故这里修改端口号为 8720;不修改也能注册,会自动帮你在端口号上 + 1;
打开浏览器访问:http://localhost:8080/#/dashboard/home
此时会多一个名为 nacos-consumer-feign
的服务