文章目录
简介
接下来我们通过
Sentinel
控制台来实现对服务消费者提供的熔断机制进行监控和控制,本操作先要完成之前的步骤,详情请参照【Spring Cloud Alibaba】Spring Cloud Alibaba 搭建教程
什么是 Sentinel控制台
Sentinel
提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理、监控(单机和集群),规则管理和推送的功能。这里,我们将会详细讲述如何通过简单的步骤就可以使用这些功能。
Sentinel
控制台包含如下功能:
查看机器列表以及健康情况:收集
Sentinel
客户端发送的心跳包,用于判断机器是否在线。
**监控 (单机和集群聚合)**:通过
Sentinel
客户端暴露的监控
API
,定期拉取并且聚合应用监控信息,最终可以实现秒级的实时监控。
规则管理和推送:统一管理推送规则。
鉴权:生产环境中鉴权非常重要。这里每个开发者需要根据自己的实际情况进行定制。
注意:Sentinel 控制台目前仅支持单机部署。Sentinel 控制台项目提供 Sentinel 功能全集示例,不作为开箱即用的生产环境控制台,若希望在生产环境使用请根据文档自行进行定制和改造。
官网地址:点击这里
获取
源码方式
注:下载依赖时间较长,请耐心等待…
# 下载源码git clone https://github.com/alibaba/Sentinel.git
# 编译打包
mvn clean package
下载jar包方式
下载地址:https://github.com/alibaba/Sentinel/releases
启动
注意:启动 Sentinel 控制台需要 JDK 版本为 1.8 及以上版本。
java -Dserver.port=8080-Dcsp.sentinel.dashboard.server=localhost:8080-Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar
注意:windows控制台会错误识别命令,需要配置项需加单引号
其中
-Dserver.port=8080
用于指定
Sentinel
控制台端口为
8080
。
参数作用-Dcsp.sentinel.dashboard.server=localhost:8080向 Sentinel 接入端指定控制台的地址-Dproject.name=sentinel-dashboard向 Sentinel 指定应用名称,比如上面对应的应用名称就为 sentinel-dashboard
从
Sentinel 1.6.0
起,
Sentinel
控制台引入基本的登录功能,默认用户名和密码都是
sentinel
。用户可以通过如下参数进行配置:
-Dsentinel.dashboard.auth.username=sentinel
用于指定控制台的登录用户名为sentinel
;-Dsentinel.dashboard.auth.password=123456
用于指定控制台的登录密码为123456
;如果省略这两个参数,默认用户和密码均为sentinel
;-Dserver.servlet.session.timeout=7200
用于指定Spring Boot
服务端session
的过期时间,如7200
表示7200
秒;60m
表示60
分钟,默认为30
分钟;
全部的配置项可以参考 启动配置项文档。
访问服务
访问地址:
http://localhost:8080/#/dashboard/home
,默认用户和密码均为
sentinel
;
登录成功
配置项目,启用Sentinel
在模块
moonce-consumer-feign
的
application.yml
配置文件中增加如下配置:
spring:cloud:sentinel:transport:port:8719dashboard: localhost:8080
这里的
spring.cloud.sentinel.transport.port
端口配置会在应用对应的机器上启动一个
Http Server
,该
Server
会与
Sentinel
控制台做交互。比如
Sentinel
控制台添加了一个限流规则,会把规则数据
push
给这个
Http Server
接收,
Http Server
再将规则注册到
Sentinel
中。
更多
Sentinel
控制台的使用及问题参考: Sentinel 控制台文档 以及 Sentinel FAQ。
完整配置
application.yml
spring:application:name: moonce-consumer-feign
cloud:nacos:discovery:server-addr: 127.0.0.1:8848sentinel:transport:port:8719dashboard: localhost:8080server:port:9092feign:sentinel:enabled:truemanagement:endpoints:web:exposure:include:"*"
测试
启动项目
moonce-provider
和
moonce-consumer-feign
,访问接口
http://localhost:9092/test/hi
打开地址
http://localhost:8080/#/dashboard/home
,多了个
moonce-consumer-feign
的服务信息
版权归原作者 猫巳 所有, 如有侵权,请联系我们删除。