使用 Enmasse 部署 Hono

问题描述

我使用 Hono 有一段时间了,它是一个非常棒的 IoT-Hub - 感谢您的出色工作:) 现在我正在努力前进,正如 Hono documentation 所推荐的那样, 我想集成 EnMasse 项目并用 EnMasse 替换认的“AMQP 消息传递网络”。

阅读 EnMasse-Doc 后,我意识到实际上 EnMasse 也使用与 Hono 相同的“AMQP 网络”结构,通过 Qpid dispatch router(多个)ActiveMQ Artemis!

现在我的问题是:

  • Hono 中认的 AMQP 消息网络与 EnMasse 之间的实际区别是什么?
  • 我在网上搜索了很多,但没有找到有关如何在 Hono 中集成 EnMasse 的答案。我很感激任何想法从哪里开始!

提前致谢!

解决方法

ad 1) 默认情况下,Hono Helm chart 部署每个 Qpid Dispatch Router 和 Artemis broker 的单个实例。这意味着 Dispatch Router 和 Artemis 都是单点故障。使用 enMasse,可以创建和(更重要的是)一致地管理调度路由器和多个 Artemis 代理网络。这对于生产场景中的横向扩展和故障转移非常重要。

ad 2) 如果您想部署到 Kubernetes,那么您可能希望首先使用 enMasse 操作符在您的 kubernetes 集群中创建一个 enMasse 实例。然后,您可以使用 Hono Helm 图表的配置属性将 Hono 实例配置为不部署示例 AMQP 消息传递网络(即单个 Dispatch Router + Artemis),而是连接到您创建的 enMasse 实例。