【Sentinel】结合Nacos实现配置持久化

>Sentinel是阿里巴巴开源的轻量级流量控制组件,用于实现系统的限流、熔断和降级保护。

目录

一、环境配置

[1.1 docker配置](#1.1 docker配置)

[1.2 快捷优化](#1.2 快捷优化)

[1.3 Sentinel持久化](#1.3 Sentinel持久化)


一、环境配置

1.1 docker配置

目前我的系统是Ubuntu系统,各个系统之间有一点不一样的步骤,按需查看

sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgcurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg\] https://download.docker.com/linux/ubuntu (lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable dockersudo systemctl start docker

安装成功后,配置镜像加速器

sudo mkdir -p /ect/docker
vim /ect/docker/deamon.json

复制代码
{
    "registry-mirrors": [
      "https://mirror.ccs.tencentyun.com",
      "https://hub.rat.dev/",
      "https://docker.1panel.live/",
      "https://docker.m.daocloud.io",
      "https://docker.nju.edu.cn",
      "https://dockerproxy.com"
    ],
    "tls": true,
    "tlscacert": "/etc/docker/certs.d/ca.pem",
    "tlscert": "/etc/docker/certs.d/server-cert.pem",
    "tlskey": "/etc/docker/certs.d/server-key.pem",
    "hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2376"]
}

配置TLS证书,设置只能开发人员访问。TLS配置这里不再陈述,如有需要读者可自行搜索。

这里说一下可能出现的问题,配置成功后没有监听2375端口,需要删除旧配置

rm /etc/systemd/system/docker.service.d/override.conf
sudo systemctl daemon-reload
sudo systemctl restart docker

从您的本地机器连接时,需要以下文件:

配置docker-compose插件

先去下载服务:https://github.com/docker/compose/releases

接着上传到/usr/local/bin目录下

sudo mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

接下来按照规范,我们去建立对应的数据卷目录

1.2 快捷优化

docker-compose虽然配置成功了,但是每次启动都要输入一大串命令,感觉很是麻烦,所以我们可以写一个shell函数。

注意:执行下面命令时,一定要先备份一份/root/.bashrc文件!

复制代码
cat >> /root/.bashrc <<EOF
up() {
    docker compose -f "/app/docker-compose.yml" up -d "\$@"
}
down() {
    docker compose -f "/app/docker-compose.yml" down "\$@"
}
EOF

source /root/.bashrc

这样的话以后启动容器,就可以在任意目录下执行了

up mysql

接口下我们在mysql数据库中导入若依对应的sql表结构,采用合并一次性导入。

在对应的sql目录下,打开cmd窗口

type *.sql all.sql

1.3 Sentinel持久化

我们先将sentinel的源码下载到本地

https://github.com/alibaba/Sentinel/releases/tag/1.8.1

修改sentinel-dashboard的pom文件

将test -> rule -> nacos目录拷贝到main目录下

修改NacosConfig的代码

在配置文件里面添加路径配置

nacos.addr=localhost:8848

修改v2包下面的控制类

修改前端页面代码

打包部署完成后,就可以看到naocs的菜单了

相关推荐
无心水7 小时前
【分布式利器:限流】3、微服务分布式限流:Sentinel集群限流+Resilience4j使用教程
分布式·微服务·架构·sentinel·分布式限流·resilience4j·分布式利器
百***61871 天前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel
pengzhuofan1 天前
Sentinel 服务保护
java·微服务·sentinel
20岁30年经验的码农1 天前
Java Sentinel流量控制与熔断降级框架详解
java·开发语言·sentinel
q***97911 天前
使用bitnamiredis-sentinel部署Redis 哨兵模式
数据库·redis·sentinel
h***06654 天前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel
7***A4435 天前
后端服务熔断降级:Sentinel配置
sentinel
b***66615 天前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel
ANYOLY6 天前
Sentinel 限流算法详解
算法·sentinel