sentinel-dashboard部署在云服务器上,界面添加流控规则失败

1、错误截图

2、错误分析

sentinel-dashboard是需要和微服务进行双向交互的,本地的微服务访问接口注册到sentinel-dashboard,同时会在本地起一个http service,端口默认是8719,如果被占用会依次向后尝试,管理页面如下图:

可以看到,控制台保存的ip是内网的,云服务器是无法访问的我们本地的服务的,所以就会出错,上面红框中的ip和端口,我们是可以在本地设置的,参数如下:

spring:
cloud:
sentinel:
transport:
clientIp: 127.0.0.1
port: 8719

所以如果sentinel和微服务部署在一条服务器上就没有这个问题,或者微服务部署在另外一台公网服务器上,这里的clientIp就可以直接指定服务器的公网ip

3、解决方法

综上所述,需要让sentinel控制台和微服务可以双向通信,那么方法有三个:

1、如果是本地起的微服务,那个就直接在本地运行sentinel的控制台,将clientIp直接配置成127.0.0.1

2、如果sentinel部署在云服务器上,那么就将本地的服务也放到同一个云服务器上运行

3、如果sentinel和微服务运行在不同的公有云服务器上,则需要指定clientIp为微服务运行服务器的ip

要让云服务器上的sentinel访问本地服务,可以尝试采用本地服务内网透传的方式,需要注意的是sentinel的访问携带了端口,所以不能是全域名映射,必须是域名指定端口映射,本人使用的natapp内网透传是全域名映射,无法指定端口,查阅了资料,nat123好像支持域名指定端口访问,由于这个不是重点,所以没有尝试,感兴趣的可以尝试下。

posted @   浪迹天涯的派大星  阅读(1237)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示