问题标签 [mqtt-vernemq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
550 浏览

mqtt - Mqtt 客户端收不到来自 VerneMq 的离线消息

我们有一个 mqtt 服务器(Azure 上 Linux VM 上的 VerneMq),其配置如下

除了它的默认配置。

为了测试持久消息机制,我们创建了以下场景:我们向服务器提供了一些测试消息并等待几分钟,然后再向客户端订阅(使用 cleanSession = false),我们能够接收到所有消息。但是如果我们做同样的事情并等待 24 小时,我们就无法接收到所有存储的消息,即使我们可以看到该客户端的等待消息

代理和客户端都使用 qos=2。我们必须更改客户端或服务器上的任何其他配置吗?

0 投票
1 回答
828 浏览

macos - 在 MAC OS 中执行 dpkg 命令时出现错误

我正在尝试使用 dpkg 安装 verneMQ MQTT 代理。当我尝试以下命令时,我收到此错误:

命令 :sudo dpkg -i vernemq_<%= latest_version() %>-1_amd64.deb

错误 :

如果我这样做echo $PATH,我会得到所有这些路径信息:

请建议我该如何解决这个错误

0 投票
1 回答
746 浏览

cluster-computing - 如何子到和监控 VerneMQ 集群?

我设法创建了一个由 2 个 Vernemq 节点组成的集群。

两者都通信良好并且分别位于不同的服务器

  • A.company.com
  • B.company.com

以下命令显示两个节点都在运行。(使用ssl和8883端口)

实际上一切都运行良好,例如:


当我订阅 A.mycompany.com时,集群是否分发到B.mycompany.com

可以请有人分享一些关于它是如何工作的见解吗?


由于我在这方面没有任何经验,请问您哪种方式是监督集群活动的最佳方式?

  1. Graphite(我看到了一些集群的相关指标)
  2. http://(oneofthetwoserver):8888/metrics

问候,

皮埃尔

0 投票
3 回答
3075 浏览

kubernetes - Kubernetes 集群上的 VerneMQ

我正在尝试通过 Oracle OCI 使用 Helm 图表在 Kubernetes 集群上安装 VerneMQ。

Kubernetes 基础设施似乎已经启动并运行,我可以毫无问题地部署我的自定义微服务。

我正在按照https://github.com/vernemq/docker-vernemq的说明进行操作

这里的步骤:

  • helm install --name="broker" ./从 helm/vernemq 目录

输出是:

但是当我做这个检查时

kubectl exec --namespace default broker-vernemq-0 vmq-admin cluster show

我有

我认为子域有问题(双点之间没有任何内容)

用这个命令

最后的日志行是

我也尝试过使用这个自定义 yaml:

有什么建议吗?

非常感谢
杰克

0 投票
0 回答
360 浏览

ssl - 使用 webhooks 的 vernemq 身份验证

我想在 vernemq 代理上验证/授权客户端。这是我感兴趣的两个钩子:

auth_on_register
auth_on_subscribe

我已经为它们设置了钩子和端点。在新注册和订阅时,我可以记录 POST 请求参数。

相关的 vernemq 文档可以在这里找到

问题:

我们可以在客户端请求中传递一些自定义变量,以便我们可以处理身份验证。

如果不是,那么 ssl 在这里可以是一个很好的选择,请包括那个程序?

详细信息: 通过启用 auth_on_register,我们可以将 POST 请求发送到相应的端点,参数:

您可以看到它使用用户名和密码进行身份验证,vernemq 或 mqqt 通常是否提供发送自定义参数的工具,例如 auth_token?

我已经读到我们也可以配置 ssl 证书,所以如果没有自定义参数的工具,那么我会接受这个,还是有其他建议?

0 投票
0 回答
915 浏览

mqtt - 无法通过与 VerneMQ /MQTT 的共享订阅检索消息

问题

我想使用共享订阅,但订阅共享主题时收不到任何消息。

但是,当订阅没有 share 关键字的主题时,一切正常

我试过的

我已经尝试过各种版本的主题名称(带有斜线,没有转义 share 关键字,没有通配符......)

在查看代理实例上的主题时(mqtt 代理是集群的),订阅似乎是成功的:

配置看起来像这样

有没有配置错误?我是否需要定义任何值才能使共享订阅起作用?我使用 verneMq 1.7.0。错误日志为空。如何调试消息未发送给订阅者的原因?

0 投票
3 回答
1556 浏览

docker - 配置文件更改为 VerneMQ docker 映像

我想对 docker 上运行的 VerneMQ 映像的配置文件进行一些更改。有什么方法可以访问配置文件以便进行更改?

0 投票
0 回答
110 浏览

mysql - passlib 校验和不使用 MySQL 的 SHA2 进行验证

我正在使用 vernemq 使用 SHA256 算法从数据库中授权用户。我观察到使用内置 mqsql 函数在表中创建新条目时SHA2

它会生成类似这样的哈希值,54d0e30d0a00d86451a3353a2123fc1f006faaba6b55ef0d168390f26cbab82a并且 Vernemq 服务器在使用CJJPL9密码登录时成功验证了该用户。

但是,当我使用 passlib 库从 python 代码中将此条目添加到此表中时sha256_crypt.encrypt("CJJPL9"),它会生成如下哈希 $5$rounds=80000$wnsT7Yr92oJoP28r$cKhJImk5mfuSKV9b3mumNzlbstFUplKtQXXMo4G6Ep5。我知道,由于 salt,哈希值会有所不同,但是两种哈希值的格式存在明显差异,因此,verneMQ 服务器无法验证该用户的凭据。passlib 库的格式表明它只保留 256 位校验和的 43 个字符。我还尝试通过仅保留 passlib 哈希字符串的校验和部分来进行测试,但仍然没有运气。

我想知道 MySQLSAH2("CJJPL9", 256)sha256_crypt.encrypt("CJJPL9").

0 投票
0 回答
805 浏览

docker - vernemq 和 nginx 的 docker-compose 文件出错

我写了一个 docker-compose 文件来运行两个服务 vernemq 和 nginx。当我在终端上运行命令 docker-compose up 时,我不断收到以下错误。如果这可能有帮助,我正在使用带有 ubuntu 18.04 映像的虚拟机

我尝试将 IP 地址留在 vernemq 服务中,但没有帮助。

这是我的码头工人撰写文件

这是我得到的错误

0 投票
1 回答
384 浏览

cluster-computing - 我需要使用 VerneMQ 创建多个集群节点,但文档没有指定如何创建集群节点

我是新手MQTT。我必须创建多个 vernemq 集群节点。我该怎么做呢?

产生这个输出:

我想在集群中再添加一个节点,请帮忙!