sentinel和Nacos配合實現配置規則的持久化


說明

本文中只是針對單Nacos服務實例進行配置介紹,后面有機會再補充Nacos集群的配置。

如想看sentinel和nocos整體使用請從sentinel的限流的基本使用這篇文章開始。

Nacos下載

Nacos-service的下載是個非常糟心的事,因為它本身官方提供的下載地址是在github上的,但是從github上下載極其緩慢,幾乎很難下載成功,最后找了一個可以下載的地方,把鏈接提供給大家:

nacos-service-1.3.1下載

Nacos安裝

windows

windows版本的安裝非常簡單,解壓完之后,找到/bin下面的startup.cmd文件雙擊即可。

linux

后期補充

項目依賴引入

注意:這里只是針對nacos集成的依賴。sentinel控制台的依賴請參考上文

    <dependency>
            <groupId>com.alibaba.csp</groupId>
            <artifactId>sentinel-datasource-nacos</artifactId>
        </dependency>

 

項目配置

#限流規則
#nacos的訪問地址,這里也可以是nigix代理nacos的集群地址
spring.cloud.sentinel.datasource.flow.nacos.serverAddr=localhost:8848
#nacos中存儲規則的dataId,對於dataId使用了${spring.application.name}變量,這樣可以根據應用名來區分不同的規則配置
spring.cloud.sentinel.datasource.flow.nacos.dataId=${spring.application.name}-sentinel
#nacos中存儲規則的groupId
spring.cloud.sentinel.datasource.flow.nacos.groupId=DEFAULT_GROUP
spring.cloud.sentinel.datasource.flow.nacos.dataType=json
#定義存儲的規則類型,取值見:org.springframework.cloud.alibaba.sentinel.datasource.RuleType
spring.cloud.sentinel.datasource.flow.nacos.ruleType=FLOW
#熔斷降級
spring.cloud.sentinel.datasource.degrade.nacos.server-addr=10.151.0.84:8848
spring.cloud.sentinel.datasource.degrade.nacos.namespace=16b7fa67-d3e0-47e4-bc0d-76056712afc4
spring.cloud.sentinel.datasource.degrade.nacos.data-id=${spring.application.name}-degrade-rules
spring.cloud.sentinel.datasource.degrade.nacos.group-id=SENTINEL_GROUP
spring.cloud.sentinel.datasource.degrade.nacos.rule-type=DEGRADE
#系統規則
spring.cloud.sentinel.datasource.system.nacos.server-addr=10.151.0.84:8848
spring.cloud.sentinel.datasource.system.nacos.namespace=16b7fa67-d3e0-47e4-bc0d-76056712afc4
spring.cloud.sentinel.datasource.system.nacos.data-id=${spring.application.name}-system-rules
spring.cloud.sentinel.datasource.system.nacos.group-id=SENTINEL_GROUP
spring.cloud.sentinel.datasource.system.nacos.rule-type=SYSTEM
#授權規則
spring.cloud.sentinel.datasource.authority.nacos.server-addr=10.151.0.84:8848
spring.cloud.sentinel.datasource.authority.nacos.namespace=16b7fa67-d3e0-47e4-bc0d-76056712afc4
spring.cloud.sentinel.datasource.authority.nacos.data-id=${spring.application.name}-authority-rules
spring.cloud.sentinel.datasource.authority.nacos.group-id=SENTINEL_GROUP
spring.cloud.sentinel.datasource.authority.nacos.rule-type=AUTHORITY
#熱點規則
spring.cloud.sentinel.datasource.paramflow.nacos.server-addr=10.151.0.84:8848
spring.cloud.sentinel.datasource.paramflow.nacos.namespace=16b7fa67-d3e0-47e4-bc0d-76056712afc4
spring.cloud.sentinel.datasource.paramflow.nacos.data-id=${spring.application.name}-param-flow-rules
spring.cloud.sentinel.datasource.paramflow.nacos.group-id=SENTINEL_GROUP
spring.cloud.sentinel.datasource.paramflow.nacos.rule-type=PARAM_FLOW

 

Nacos控制台配置

在nacos-service-1.3.1解壓后的conf目錄下修改application.properties文件中的數據配置,如下:

 

### Count of DB:
 db.num=1

### Connect URL of DB:
 db.url.0=jdbc:mysql://localhost:3306/nacos_config?characterEncoding=utf8&connectTimeout=3000&socketTimeout=5000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
 db.user=root
 db.password=admin

 

 

學習鏈接

Nacos集群配置

Nacos集群配置

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM