白皮书
车云灵活数采方案:释放数据价值,加速智能创新 →

EMQX Enterprise 5.8.0 发布:实现跨区域、全球分布的集群连接

EMQX Team
2024-9-3
EMQX Enterprise 5.8.0 发布:实现跨区域、全球分布的集群连接

EMQX Enterprise 5.8.0 版本现已正式发布!

这一版本推出了集群连接功能,提供了更强的集群容灾能力,为企业全球业务的正常运转提供保障。此外,该版本还新增了消息转换功能和多项数据集成支持,为用户使用 EMQX Enterprise 构建物联网应用提供了更多灵活性与可能性。同时,本次更新也在安全性方面进行了多项增强。

集群连接

如今,越来越多的企业需要在全球多个国家和地区开展业务,提供服务,这对软件基础设施的全球分布和跨区域容灾等方面的能力提出了迫切的要求。

5.8.0 新增的集群连接功能可以将多个分布在不同区域的 EMQX Enterprise 集群连接起来,形成一个全球分布的大集群。客户端可以选择就近接入它所在区域的 EMQX Enterprise 集群,同时它可以和任意连接到其它集群的客户端高效通信。当一个区域的集群发生故障时,连接到它的客户端可以无缝转移到其它区域的集群,保证业务的正常运转。

相比之前的集群桥接功能,集群连接更加高效、易用和可扩展。集群连接相比集群桥接的显著优势包括:

  • 通过集群连接连接的多个集群共享统一的命名空间,因此连接到不同集群的客户端也能无缝通信;而对于集群桥接,桥接后的两个集群逻辑上仍然是独立的,它们的主题命名等各方面都是互相独立的。
  • 集群连接会根据实际的订阅情况和客户端分布,按需在集群之间路由消息,减少大量不必要的消息复制;而对于集群桥接,往往需要对指定 Topic 的数据进行全量的集群间复制。

    集群连接

消息转换

EMQX Enterprise 内置的规则引擎提供了强大的消息处理能力,但规则引擎本身主要是为了数据集成场景设计的,它不会影响正常的消息发布订阅路径。但在某些场景下,用户希望 EMQX Enterprise 能够对发布者发布的消息进行一些转换处理之后,再投递给订阅者。比如,向发布的消息里增加一些字段,或者将 Protobuf 编码的消息转换成 JSON 格式后再发布给订阅者等等。

为此,5.8.0 新增了消息转换功能,该功能允许用户使用自定义的规则修改和格式化消息,然后再进一步处理或发送给订阅者。该功能高度可定制,支持多种编码格式和高级转换。

创建消息转换界面

创建消息转换界面

新增 Kerberos Auth、OIDC SSO 支持

EMQX Enterprise 5.8.0 也新增了多项安全方面的功能:

  • 新增了对 Kerberos 网络认证协议的支持。Kerberos 是广泛应用的网络认证协议,它用来为网络中通信的双方提供严格的身份验证服务,确保通信双方身份的真实性和安全性。
  • EMQX Dashboard 新增了对 OIDC(OpenID Connect) 协议的单点登陆(SSO)功能的支持。用户可以使用企业内已有的 OIDC 服务完成单点登陆。
  • 对于 HTTP 认证方式,新增支持在 HTTP 响应体中设置一个可选的 acl 字段,该字段用于指定客户端的权限。客户端连接后的发布和订阅动作将会受到这些权限列表(ACL)规则的限制。

数据集成新增 Azure Blob Storage、Couchbase、Datalayers

本次新版本支持了与以下系统的数据集成:

  • Azure Blob Storage:Azure Blob Storage 是一项微软 Azure 云提供的数据存储服务,类似于 AWS S3, 可用于存储任何类型的大规模数据,包括各种结构化和非结构化的数据。
  • Couchbase:Couchbase 是一款分布式文档数据库,拥有强大的搜索引擎以及内置的运营和分析功能。同时它还支持在边缘和云之间快速、高效的双向数据同步。
  • Datalayers:Datalayers 是一款专为工业物联网、车联网和能源等行业优化设计的边云协同多模态分布式数据库,支持时序存储、key-value存储等,能够为客户提供稳定高效的数据存储、计算和分析的一体化解决方案。

此外,5.8.0 还新增了对在规则引擎中使用 client_attrs (客户端属性)字段的支持。客户端属性是 EMQX Enterprise 提供的一种机制,允许开发人员根据不同的应用场景需求,为 MQTT 客户端设置额外的属性。这些属性可以用于 EMQX Enterprise 的认证授权、 MQTT 扩展功能等功能中,现在也可以在规则引擎中使用。

热升级

在对 EMQX Enterprise 集群的运维过程中,如何最小化版本升级对客户端和业务造成的影响一直以来都是一个比较大的挑战。5.8.0 推出的热升级功能能够有效地解决这一问题。相比滚动升级等方式,热升级具有以下优势:

  • 热升级过程中,MQTT 连接不会中断,对客户端完全无感知。
  • 更加快速,几秒内即可完成整个热升级过程。
  • 更加轻量灵活,更新粒度可以控制在更细的代码模块级别,可通过插件方式按需构建热更新包,无需构建和部署完整安装包。

此外,为了使热升级更便捷,5.8.0 支持通过 EMQX Dashboard 一键上传需要的热更新包即可完成整个集群的热更新。

升级包上传界面

升级包上传界面

关于 5.8.0 的更多功能更新和 BUG 修复请查看 EMQX Enterprise 5.8.0 更新日志

免费试用 EMQX Enterprise 5.8.0
开始试用 →