一、Sentinel控制台
官方文档-Sentinel 控制台:https://github.com/alibaba/Sentinel/wiki/%E6%8E%A7%E5%88%B6%E5%8F%B0#2-%E5%90%AF%E5%8A%A8%E6%8E%A7%E5%88%B6%E5%8F%B0
1、概述Sentinel 提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理、监控(单机和集群),规则管理和推送的功能。
Sentinel 控制台包含如下功能:
- 查看机器列表以及健康情况:收集 Sentinel 客户端发送的心跳包,用于判断机器是否在线。
- 监控 (单机和集群聚合):通过 Sentinel 客户端暴露的监控 API,定期拉取并且聚合应用监控信息,最终可以实现秒级的实时监控。
- 规则管理和推送:统一管理推送规则。
- 鉴权:生产环境中鉴权非常重要。这里每个开发者需要根据自己的实际情况进行定制。
注意:Sentinel 控制台目前仅支持单机部署。Sentinel 控制台项目提供 Sentinel 功能全集示例,不作为开箱即用的生产环境控制台,若希望在生产环境使用请根据文档自行进行定制和改造。
2、下载运行1)下载 Sentinel控制台 jar包
下载地址:https://github.com/alibaba/Sentinel/releases
2)启动 Sentinel控制台
通过 java -jar 命令启动控制台:
java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.4.jar
其中:
- -Dserver.port=8080 用于指定 Sentinel 控制台端口为 8080,如果省略该参数,默认也是8080。
- -Dcsp.sentinel.dashboard.server=consoleIp:port 指定控制台地址和端口。若启动多个应用,则需要通过 -Dcsp.sentinel.api.port=xxxx 指定客户端监控 API 的端口(默认是 8719)。
用户可以通过如下参数进行配置:
- -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 分钟; 同样也可以直接在 Spring properties 文件中进行配置。
在本地,我运行下面命令:
java -Dserver.port=17080 -Dsentinel.dashboard.auth.username=sentinel -Dsentinel.dashboard.auth.password=123456 -jar D:\OpenResoure\Sentinel\sentinel-dashboard-1.8.4.jar
前面的 Springboot项目中。引入依赖。
com.alibaba.csp
sentinel-transport-simple-http
1.8.4
2、启动项目
指定 Sentinel控制台地址和端口,添加JVM参数,启动项目。
-Dcsp.sentinel.dashboard.server=localhost:17080
访问之前的流控方法。
注意:
Sentinel 会在客户端首次调用接口时才进行初始化,开始向控制台发送心跳包。
再次访问接口,发现修改后的流控规则OK。
注意:Sentinel控制台重启之后,控制台配置的信息默认不会持久化。
– 求知若饥,虚心若愚。