黑白名单异常是 Dubbo 服务常见的问题。

异常示例:

com.alibaba.dubbo.rpc.RpcException: Forbid consumer 10.1.2.3 access service demo.service.DemoService from registry 10.1.2.3:2181 use dubbo version 2.8.4, Please check registry access list (whitelist/blacklist).

 

有时候问题原因并不是黑白名单,而是根本就没有服务提供者。

所以检查 ZooKeeper 中注册了哪些服务提供者也是一个排查角度,可以确定服务提供者是否已发布服务。

使用 ZooKeeper 命令行客户端

有时候现场没有安装 Dubbo-Admin,那么我们可以通过 Zookeeper 命令行客户端快速查看服务注册信息。

 

进入 ZooKeeper 命令行客户端

进入 ZooKeeper 安装目录下的 bin目录。如:/opt/zookeeper/bin

执行 zkCli.sh 进入命令行程序。如:sh zkCli.sh

 

查看所有 Dubbo 服务

执行命令 “ls /dubbo” 会输出所有Dubbo服务。

 

查看指定的服务

命令示例:“ls /dubbo/demo.service.DemoService”。

此命令会列出下一级信息入口。一般是4个:consumers、providers、configurators、routers

 

查看指定服务的消费者

命令示例:“ls /dubbo/demo.service.DemoService/consumers”

 

查看指定服务的生产者

命令示例:“ls /dubbo/demo.service.DemoService/providers”

 

其它GUI工具推荐

还有一些轻量级的GUI工具也挺适合这类快速检查。如,zkui

 

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐