OptoBlog

MQTT:关键任务容错

发布的 乔什·伊斯特本在2020年6月16日,9:01:50

MQTT系列继续深入了解groov史诗的(现在groov力拓)特性为高可靠性的MQTT网络。

在其核心,MQTT是专为不可靠的网络。早在90年代,康菲石油公司(现在菲利普斯66)是寻找一种方法来提高遥测报告对其低带宽拨号和昂贵的网络连线(小卫星天线)SCADA网络。IBM与系统集成商Arcom控制系统(现在卷云连接解决方案)来开发一个简约的通信协议,可以优雅地处理间歇性的网络中断和延迟很高很多分布式设备/ TCP / IP。

跳前20年,MQTT在IT世界被作为一种灵活的、高效的交通物联网数据,但是这些应用程序不一定利用MQTT的严格的状态管理和数据完整性的功能。卷云链接知道MQTT蓬勃发展在工业环境中,可靠性是至关重要的,它倡导B规范开发,在某种程度上,为了满足这种需要。

如果你刚刚开始这个系列,我建议你回去第1部分和2和熟悉groov史诗的MQTT客户机和倡导B规范的优点。在这篇文章中,我将深入的安全、历史、和故障转移的特性groov管理和点火边缘客户提供以及它们如何工作与倡导B载荷MQTT网络更有弹性。

奖金:groov管理客户端groov力拓提供所有相同的MQTT本系列中描述的功能。继续读下去,groov力拓用户!

安全

网络威胁否则稳定系统带来危险,但幸运的是,groov史诗和MQTT更容易保护您的数据。

而不是复杂协议的安全机制,MQTT利用SSL / TLS加密嵌入TCP / IP堆栈。假设你的代理支持,您可以启用加密通信groov管理或点火边先代替你代理的协议和端口名称地址。我的经纪人,而不是使用

tcp:/ / mqtt.groov.com1883年

我将使用

ssl:/ / mqtt.groov.com8883年

groov管理下的MQTT >配置>代理子菜单,您也将启用“SSL”选项,选择适当的CA证书。“这是这些变化是什么样子:

Sparkplug_configuration_security
如果你还没有办理证书的信任之前,他们一个重要组成部分在生成加密密钥和验证你的史诗与正确的端点。证书是由MQTT服务器和分布式的网络管理员使用受信任的边缘设备,像史诗。有关更多信息,请查看这篇文章从我们的系列groov史诗的安全

上传你的安全证书groov史诗,进入安全> SSL客户端菜单。一旦完成,该证书文件作为一个选项出现在MQTT代理>选择证书对话框。的groov史诗用户指南拥有更多的证书创建和管理信息。

如果您正在使用groov史诗是点火边MQTT客户机,这是相同的变化会是什么样子的MQTT传输模块设置:

ignition-client-settings-1
如果你担心SSL / TLS如何影响MQTT的表现,看看这个基准报告从蜂巢MQ。它得出的结论是,虽然加密性能影响连接,在持续使用没什么区别。

故障恢复连接

另一个基本的容错措施是建立多个MQTT经纪人和配置groov史诗或与连接到每个里约热内卢。

这个设置groov配置管理,导航到MQTT > >添加代理,并创建你想要尽可能多的联系。

冗余
在上面的图片中,连同我的连接光电子22的现场Mosquitto经纪人,我添加了第二个联系我们战车代理托管在AWS。

如果你使用点火边MQTT客户机,设置冗余一样简单groov管理。添加新服务器连接的MQTT传播>设置>服务器”选项卡。任何代理连接共享相同的“服务器设置”财产成为一个自动故障转移组的一部分。

ignition-transmission-servers
点火边缘允许您创建额外的故障转移组下的“设置”选项卡。高级场景你可能组MQTT客户在特定的代理,您可以创建额外的MQTT客户机,每个都有自己的服务器设置和历史存储,通过定义“定制发射机设置”下“发射器”选项卡。

主要的主机

如果您已经配置了多个代理连接的故障转移groov管理或点火边缘,你也可以设置一个主主机ID。通常情况下,当使用故障转移连接,MQTT客户机将连接到第一个可用的代理和开关循环如果它失去了连接。如果你将数据发送到后端客户端像SCADA,历史学家,或物联网系统,一个SpB-compatible客户机可以提高性能通过允许你指定,系统主要应用程序。

然后,如果groov史诗或后端客户失去了连接到当前代理,史诗将通过可用旋转连接,直到找到后端客户端了。然而,请注意,MQTT会选择连接到后端端一个连接到代理。如果没有可用的代理连接发布一个在线状态的主要宿主,MQTT客户机不会保持联系,直到找到一个。

指定一个主主机应用程序groov管理,去主要的MQTT配置屏幕,设置“主要主机ID”为目标应用程序的MQTT客户机ID。

例如,点火SCADA服务器上运行我的笔记本(不是点火边缘,但完整的点火)的客户机IDlaptop-ignition-scada,所以我将进入“主主机ID”groov管理:

Sparkplug_configuration_edge-node
在点火边,一个冗余的代理故障转移组,称为服务器设置,可以指定一个“主要主机ID”。这是发现在“设置”选项卡。

ignition-transmission-sets-2

历史

在断开时,一些普通的MQTT提供服务质量的水平能保证消息传递的附加流量用于握手。通常,然而,只有最近的消息交付连接。倡导B提供了一个不同的机制,最大限度地减少数据丢失。

因为倡导B装饰MQTT消息元数据,SpB客户能够标记某些消息历史记录。主要主机ID集合,groov管理可以将MQTT记录暂时存储在RAM当史诗失去连接到主应用程序中,然后这些记录当连接恢复。

groov管理你会启用这个特性在MQTT >配置>设备将大量插入子菜单的“历史性队列”字段。我们建议一个队列大小为3600存储和性能之间取得平衡,但是你可以根据数据的速率更高的生产:

Sparkplug_configuration_device

转发与点火优势更好的客户,提供更大的容量和非易失性存储选项。如果你选择磁盘支持选项,你得到额外的好处groov史诗的power-fail-safe文件系统和工业SSD。

使historization点火边,去MQTT传播>历史和编辑“默认内存存储。”选择“启用这个历史存储”,改变“类型”“磁盘支持。”(我也要改变历史的名称存储,以反映这些改变。)

ignition-history-enable
您还可以调整历史能力在这里如果你想。默认设置将缓冲区100000条记录1星期。哇。

一旦这部分完成,回到MQTT传播>设置菜单,选择“发射器”选项卡。向下滚动并设置“历史商店”的名称存储您刚启用(“默认存储”在我的例子中)。

ignition-transmitter-history
注意:要充分利用转发历史,你会需要沟通的网络MQTT订阅观看历史记录。目前,点火MQTT引擎模块和金丝雀实验室MQTT倡导B数据收集器都做。

MQTT持续增长的流行,我们期望看到支持这个和其他倡导的创造性使用B添加到其他SCADA包和历史学家。

权衡和考虑

倡导B提供了一个高效可靠的标准,可互操作的工业通信。groov史诗和groov力拓提供一个安全的构建容错MQTT OT平台倡导B数据系统。在不增加成本的情况,groov管理提供了重要的安全特性,转发historization,故障转移。免费尝试,只有更多的许可证,点火边缘需要这些特性与磁盘支持切口扩大基础设施存储和更多的选择。

你认为哪个选项是适合你,记住这一点groov管理更适合标签的数量低于1000,如果你有一个更大的系统,点火的优势将是最好的选择。与groov史诗,您可以利用选项来设计系统提供确保运行正常,数据完整性和抵抗网络攻击。

groov管理与激励B

点火边

平台

groov史诗
groov力拓

groov史诗

数据源

PAC和I / O控制标签

PAC控制标签和I / O,遗留plc,设备,或OPC标记

标签数

介质(< 1000)

高(1000 +)

订阅其他出版商的主题

没有

是的(w / MQTT引擎)

安全

用户身份验证
SSL / TLS加密
安全证书

用户身份验证
SSL / TLS加密
安全证书
客户端证书

Historization

易失性存储器
Max 65 k记录

非易失性存储(可选)
100 k记录或1周

冗余

多个代理
主要的主机名称

多个代理
多个故障转移组
多个客户端
主要的主机名称

成本

没有一个

800美元*
+ 200美元* * w / MQTT引擎

*GROOV-LIC-EDGE当前列表定价6/10/20;* *特别定价购买时点火边缘许可证

下次我们带在一起…

现在我们有一个安全、可靠的基础数据共享,我们可以看看让MQTT的宏观架构网络规模工业水平,包括遗留系统集成。预演,看看我们最近的研讨会与归纳自动化和卷云链接:点火社区生活与卷链德赢vwin客户端下载接:MQTT车间

本系列中的所有文章

第1部分- - - - - -MQTT:基本出版groov史诗
第2部分- - - - - -MQTT:更快、更好和倡导B
第3部分- MQTT:关键任务容错
第4部分- - - - - -MQTT:把它放在一起

主题:Node-RED,MQTT,点火边,groov史诗,groov管理,倡导,MQTT实现,groov里约热内卢

写的乔什·伊斯特本

经过12年在半导体工作作为一个自动化工程师,石化,食品和饮料,和生命科学行业,乔什·伊斯特本与光电子22的工程师们了解明天的客户的需求。
找到我:

    订阅电子邮件更新

    最近的帖子

      文章的主题

      看到所有