0

我在 Google kubernets 上有一个正在运行的 VerneMQ 实例(2 个节点的集群),并使用 MySQL (CloudSQL) 进行身份验证。服务器接受通过 TLS 的连接

它工作正常,但几天后我开始在日志上看到这条消息:

由于 plugin_chain_exhausted,无法从 XXXX:16609 验证客户端 {[],<<"Client-id">>}

客户端应用程序(paho)抱怨服务器拒绝连接“未授权(paho 错误中的代码 = 5)”

经过几次重试后,它终于连接上了。但每次它变得越来越难,直到它不再连接

如果我重新启动 VerneMQ 一切都会恢复正常

我目前最多同时连接 3 个客户端。

已连接的客户端在 pub/sub 中没有问题。

在我的配置中,我有(除其他外):

log.console.level=debug
plugins.vmq_diversity=on
vmq_diversity.mysql.* = all of them set
allow_anonymous=off
vmq_diversity.auth_mysql.enabled=on

就像服务器随着时间的推移而降级。状态网页报告没有问题

我的 verne 服务器是大约一个月前从 git 存储库构建的,并在 docker 容器上运行

可能是什么原因?我还能检查什么来找到可能的原因?也许是多样性错误配置?

Tks

4

1 回答 1

0

快速解释一下plugin_chain_exhausted日志:使用 Verne,您可以运行多个身份验证/授权插件,它们将在链中进行检查。如果一个插件允许客户端,它就会进入。如果没有插件允许客户端,你会看到上面的日志。

但是,这并不能解释您描述的行为。我不认为我已经看到了。

无论如何,首先要检查的是你是否真的运行了多个插件。例如:您是否禁用了 vmq.passwd 和 vmq.acl 插件?

于 2021-07-27T06:43:14.730 回答