azure - 如何指定到网关的路由

标签 azure azure-iot-hub azure-iot-edge

我想创建边缘设备的“层次结构”并因此使用网关机制。目前,网关只是一个透明网关,它将消息传递到 IoT 中心。 (https://learn.microsoft.com/en-us/azure/iot-edge/how-to-create-transparent-gateway-linux)。

情况:我有两个边缘设备,即“传感器”和“网关”。如何在部署中指定传感器的输出在上游到 IoT 中心之前需要先到达网关的路由?

传感器路线:“route”:“FROM/messages/* INTO ???

网关路由:“route”:“FROM/messages/* INTO $upstream”

最佳答案

对于当前版本的 v2 IoT Edge(1.0,于 2018 年 6 月下旬发布),您无法将边缘设备链接到一个层次结构中。这是许多场景所需的功能,但我们尚不支持(我在 Azure IoT Edge 团队)。我们计划启用它,但我没有时间表。

最直接的问题是:IoT Edge 运行时构建一个基于 SAS 的连接字符串,用于代表设备建立与云的连接。运行时只知道如何构建包含 IoT 中心主机名的连接字符串:

HostName=<hub>;DeviceId=<device>;SharedAccessKey=<secret>

要连接到另一个边缘设备而不是 IoT 中心,连接字符串需要一条附加信息 - 另一个边缘设备的主机名:

HostName=<hub>;DeviceId=<device>;SharedAccessKey=<secret>;GatewayHostName=<edge>

由于连接字符串的原因,边缘设备只能与云端的 IoT 中心进行通信,而无法与其他边缘设备的类似 IoT 中心的接口(interface)进行通信。

这是一个很容易解决的问题,但除此之外我们还不知道是否还存在其他阻塞问题。此外,还需要做一些工作来确保创建边缘层次结构的整个体验有效且有意义。

关于azure - 如何指定到网关的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51656087/

相关文章:

powershell - 如何使用 HTTP 触发器 PowerShell Azure Function 读取 Azure 表存储?

asp.net - WaHostBootstrapper 不断退出并出现错误 WapXmlReadRoleModel=0x1

c# - 对使用RegistryManager的类进行单元测试 C# Azure IoTHub

node.js - 使用 Node sdk 将模块连接到 Edge Hub 时出错 - NotConnectedError : unable to get local issuer certificate

azure-functions - Azure EventHubTrigger 函数应用中的偏移量

Azure IoT Edge 设置成功完成,但未启动 EdgeAgent docker 镜像

Azure 媒体服务从私有(private) blob 存储容器提交 JobInputHttp

azure - 在 Azure AD 上启用 MFA 需要什么级别的权限

azure - 用于流分析的 Azure 架构是否良好?

c# - 使用 .net 从 Iothub 配置获取部署 list