请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

sentinel控制台部署在服务器,在本地连接sentinel,sentinel报错连接不上客户端

大目老师你好:
我将sentinel-dashboard部署在服务器上,使用本地微服务连接sentinel,dashboard中已经注册成功了,如下图

图片描述

但是访问微服务的api,在簇点链路中没有数据,看dashboard的日志提示连接不上我本地项目,如下图

图片描述

请问服务器必须得访问到本地吗,那么在dashboard自动注册的时候是将本地的内网地址注册了,请问改如何解决呢?连接部署在服务器上的dashboard是否必须指定client-ip呢?
微服务很简单都是默认的:
spring.cloud.sentinel.enabled=true
spring.cloud.sentinel.transport.dashboard=117.78.7.231:9010
feign.sentinel.enabled=true`

正在回答

1回答

从截图看,服务也能正常注册到控制台。 但是控制台取数据失败了。怀疑是控制台无法和微服务注册的地址通信导致的。

8-11 Sentinel与控制台通信原理剖析 详细讲解了控制台和微服务之间的通信机制。控制台所在的服务器必须能够访问192.168.0.106,这样控制台才能获得微服务的监控信息、将规则推送给微服务。


1 回复 有任何疑惑可以回复我~
  • 提问者 Jeace #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-09-25 17:22:40
  • 提问者 Jeace #2
    好得谢谢老师了,通常服务器是没法访问本地的,那么这种情况只能将微服务也部署到能够互相通信的服务器上才能继续了吧。
    回复 有任何疑惑可以回复我~ 2019-09-25 17:22:55
  • 大目 回复 提问者 Jeace #3
    是的哈。
    当然,也可以重写sentinel的transport模块,改变现有的通信机制,不过这种方案成本非常高…
    回复 有任何疑惑可以回复我~ 2019-09-25 17:24:42
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信