可視化限流管理,Sentinel 控制檯啓動和接入

Sentinel 的使用能夠分爲核心庫和控制檯兩個部分。
核心庫不依賴任何框架/庫,集成了主流框架,能夠進行單機限流降級等功能,
控制檯Dashboard提供了可視化的管理限流規則、對集羣進行監控,集羣限流分配管理、機器發現等功能。html

這篇博客學習 Sentinel 控制檯的啓動和接入。java

1、控制檯啓動

控制檯下載有兩種方式,一種是直接下載編譯好的release版本程序包,另外一種是下載控制檯的工程代碼,在本地打包後啓動。git

直接下載release程序包

release 頁面下載最新版本的控制檯 jar 包。github

最新的正式版本是v1.7.1。spring

經過代碼構建

下載最新的 sentinel-dashboard 控制檯工程,代碼倉庫地址 sentinel-dashboardsegmentfault

下載後,進入工程目錄,經過Maven打包成一個可執行的 fat jar:session

mvn clean package架構

構建和啓動

使用以下命令啓動控制檯:框架

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

注意:啓動 Sentinel 控制檯須要 JDK 版本爲 1.8 及以上版本。學習

其中,

-Dserver.port=8080 用於指定 Sentinel 控制檯端口爲 8080
-Dcsp.sentinel.dashboard.server 用於控制檯對外暴露的服務地址

配置用戶名和密碼

從 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 分鐘;

查看控制檯

控制檯啓動後,訪問 localhost:8080,能夠查看控制檯。

2、客戶端接入控制檯

這裏我使用 spring.io 建立一個Spring Boot項目來進行演示,工程搭建步驟能夠參考
十分鐘快速建立 Spring Cloud 項目

引入依賴

客戶端須要引入 Transport 模塊來與 Sentinel 控制檯進行通訊。須要在 pom.xml 引入 JAR 包:

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

引入依賴後,在應用啓動時須要添加,指定控制檯地址和端口,能夠經過添加啓動JVM參數
或者配置文件兩種方式。

配置控制檯地址:添加JVM啓動參數

啓動時加入 JVM 參數 -Dcsp.sentinel.dashboard.server=consoleIp:port。
這裏我把啓動參數添加在Idea Configuration下的VM options中:
-Dcsp.sentinel.dashboard.server=192.168.43.120:8080

)

配置控制檯地址:修改Spring配置文件

這裏我使用的是yaml方式,

查看控制檯

完成配置後,啓動應用,刷新控制檯,可在 Sentinel 控制檯上看到對應的應用,機器列表頁面能夠看到對應的機器,後面教程會對 Sentinel 控制檯功能和應用進行詳細的解析

參考

Sentinel官方文檔

關注公衆號:架構進化論,得到第一手的技術資訊和原創文章
相關文章
相關標籤/搜索