​​使用 Nacos 存储 Sentinel 规则信息

简介: ​使用 Nacos 存储 Sentinel 规则信息

Sentinel 规则配置,一旦我们重启服务过后,所有的规则都会消失。我们可以通过 Zookeeper , Applo , Nacos 等配置中心将这些规则配置存储起来,让服务重启或者启动多节点的时候可以共享配置数据。


之前的项目我们通过 Nacos 来作为服务注册中心和服务配置中心,我们也可以将 Nacos 作为 Sentinel 的配置数据存储仓库,来为我们提供Sentinel 配置数据的持久化。 如下图所示

image.png

Nacos

microservice

Sentinel

dashboard

microservice

microservice

增加 Nacos 存储依赖


需要独立引入如下依赖,来申明 sentinel 的规则数据存储在 nacos 中。


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

    添加 YML 配置


    我们如果使用 Sentinel 的独立数据源功能,那么需要在 yaml 文件中申明数据源配置信息。


      spring:  application:    name: stock-service  profiles:    active: dev  cloud:    sentinel:      transport:        port: 8719        dashboard: localhost:8080      enabled: true      datasource:        ds:          nacos:            dataId: ${spring.application.name}-flow-rules            groupId: DEFAULT_GROUP            data‐type: json            rule‐type: flow


      Nacos 增加配置


      在 Nacas 配置中心,我们需要添加规则配置并且发布,这里需要注意 dataId 和 groupId 一定不要搞错,不然会导致找不到数据配置,如下图所示:


      image.png

      DataID:

      stodK-service-flow-rules

      DEFAULTGROUP

      Group:

      更多高级选项

      描还:

      默认不要勾选,

      Beta发布:

      TEXT

      YAMLOHTML

      XML

      配置格式:

      Properties

      ISON

      配百内容

      51

      "resource":"abc"

      "controlBehavior:0,

      "count":20.0,

      "grade":1,

      "limitapp":"default",

      "strategy":0

      J

      "resource":"abc1",

      "controlBehavior":0,

      "count":20.0,

      "grade":1,

      "limitapp":"default",

      "stratergy":o

      返回

      发布

      数据模板


        [  {    "resource": "abc",    "controlBehavior": 0,    "count": 20.0,    "grade": 1,    "limitApp": "default",    "strategy": 0  }]


        Sentinel 查看配置


        最后我们启动服务和 Sentinel 控制台,就可以在流控信息这个菜单下面查看到我们在配置中心定义的流控信息。


        image.png

        搜索

        应用名

        新增流控规则

        stock-service

        首页

        (1/1)

        stock-service

        流控规则

        关健字

        刚新

        192.168.217.1:8720

        实时监控

        资诉名

        来沃应用

        闲值类型

        楼作

        试值

        流控效果

        流控模式

        间值模式

        危点链路

        快速牙蚊

        三接

        锦辑

        出涂

        流控规则

        20

        单机

        快速失收

        OPS

        点接

        abe

        源担

        降级规则

        1

        快关败

        单机

        卓接

        OPS

        Thello

        delauli

        册除

        热点规则

        系统规则

        条记录

        共3条记录,每页10

        授权规则

        ?群流控

        机器列表


        总结


        至此我们就完成了,Sentinel 对规则持久化到 Nacos 的全部操作。这里有一个小小的问题就是我们在 Sentinel 控制台修改规则过后默认不能直接同步到 Nacos 中,如果需要同步到 Nacos 中的需要修改 Sentinel 控制台的源码,配置信息通过 “推模式”同步到 Nacos 中存储。

        相关文章
        |
        16天前
        |
        Java 测试技术 Nacos
        |
        5月前
        |
        监控 Java 数据安全/隐私保护
        Sentinel黑白名单授权规则解读
        Sentinel黑白名单授权规则解读
        |
        2月前
        |
        Java Nacos Sentinel
        【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
        【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
        232 0
        |
        3月前
        |
        监控 数据挖掘 索引
        深度剖析Sentinel热点规则
        深度剖析Sentinel热点规则
        94 1
        |
        3月前
        |
        监控 Java API
        解密Sentinel中流控规则的阀值奥秘
        解密Sentinel中流控规则的阀值奥秘
        18 0
        解密Sentinel中流控规则的阀值奥秘
        |
        4月前
        |
        监控 测试技术 数据安全/隐私保护
        如何集成Sentinel实现流控、降级、热点规则、授权规则总结
        如何集成Sentinel实现流控、降级、热点规则、授权规则总结
        80 0
        |
        4月前
        |
        存储 Cloud Native Nacos
        恭喜 Nacos 和 Sentinel 荣获 2023 开源创新榜“优秀开源项目”
        恭喜 Nacos 和 Sentinel 荣获 2023 开源创新榜“优秀开源项目”
        |
        5月前
        |
        Sentinel
        一文速通Sentinel熔断及降级规则
        一文速通Sentinel熔断及降级规则
        |
        5月前
        |
        消息中间件 Java API
        一文带你速通Sentinel限流规则(流控)解读
        一文带你速通Sentinel限流规则(流控)解读
        |
        2月前
        |
        Dubbo 关系型数据库 MySQL
        nacos常见问题之命名空间配置数据上线修改如何解决
        Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
        103 1