Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
适用于:
IoT Edge 1.5
重要
IoT Edge 1.5 LTS 是受支持的版本。 IoT Edge 1.4 LTS 于 2024 年 11 月 12 日终止。 如果使用的是早期版本,请参阅 Update IoT Edge。
本文介绍使用 IoT Edge 时的限制和限制。
限制
网关层次结构中连接的客户端数
默认情况下,网关层次结构中的每个 IoT Edge 父设备最多可以有 100 个连接的客户端 。
注释
连接的客户端包括设备和模块。
嵌套拓扑中的每个 IoT Edge 设备都会为每个连接的客户端打开与父 EdgeHub(或 IoT 中心)的单独逻辑连接,并为自身打开一个连接。 每一层的连接不会聚合,而是会被分别添加。
例如,如果第 L4 层中有两个 IoT Edge 子设备,并且每个子设备都有:
- 设备本身的1个连接,以及
- 100 个连接的下游客户端(包括设备和模块),
然后,第 L5 层中的父 IoT Edge 设备具有来自第 L4 层 的 202 个传入连接总数 。
可以通过在父设备的 edgeHub 模块中设置 MaxConnectedClients 环境变量来更改此限制。
重要
edgeHub 的模块孪生在其报告属性中保存有关连接客户端的信息,大小有限。 当孪生体的报告属性达到最大允许大小以增加连接的客户端数量时,IoT Edge将无法正确报告其状态。 如果客户端数超过数百,则可能会发生这种情况。 在设置 MaxConnectedClients之前,请考虑使用生产方案进行测试。
有关详细信息,请参阅创建网关层次结构。
模块孪生属性的大小
IoT 中心强制实施以下限制:
- 标签值限制为 8 KB。
-
properties/desired和properties/reported的值均有32 KB大小限制。
有关详细信息,请参阅模块孪生大小。
嵌套层次结构层数
IoT Edge 设备最多支持五层 IoT Edge 设备作为其下方的子级链接。
有关详细信息,请参阅父关系和子关系。
部署中的模块数
IoT 中心对 IoT Edge 自动部署具有以下限制:
- 每个部署 50 个模块
- IoT 中心 32 KB 模块孪生大小限制取代了此限制。 有关详细信息,请参阅使用自定义模块时应注意的孪生大小限制。
- 每个付费 SKU 中心 100 个部署(包括分层部署)
- 每个免费 SKU 集线器 10 次部署
限制
证书
IoT Edge 证书具有以下限制:
- 公用名 (CN) 不能与将在 IoT Edge 设备的配置文件中使用的主机名相同。
- 客户端连接 IoT Edge 时使用的名称不能与 Edge CA 证书中使用的公用名相同。
有关详细信息,请参阅设备安全证书。
TPM 证明
将 TPM 证明与设备预配服务一起使用时,需要使用 TPM 2.0。
有关详细信息,请参阅 TPM 证明设备要求。
路由语法
IoT Edge 和 IoT 中心的路由语法几乎相同。 支持的查询语法:
不支持的查询语法:
重启策略
on-unhealthy重启策略值由架构接受,但运行时当前不会从 Docker 运行状况检查中派生不正常状态,因此它没有实际效果。
on-failure重启策略将重启使用非零退出代码退出的模块。 仅never、on-failure和always重启策略会产生可观察的行为。
若要自动重启运行不正常的模块,请使用此GitHub问题中提到的解决方案。 在模块的 Healthcheck 中配置 createOptions 属性以处理失败的运行状况检查。
故障排除日志
在更新模块期间,从 Azure 门户访问模块日志可能会有延迟。
如果在 Azure 门户中的 IoT Edge 中查看设备中的“ 故障排除 ”选项卡,可能会看到消息“无法检索日志”。 请求失败,状态代码为 504。请求超时, 运行时状态 可以显示为所有模块的“错误”。
可以在一段时间后再次看到日志。 由于 edgeAgent 可能正忙于启动模块,因此无法访问,因此无法同时检索日志。 日志是从 Moby 或 Docker 拉取的,因此此过程需要时间,如果 edgeAgent 繁忙,请求可能会超时。
文件上传
IoT 中心仅支持用于设备标识的文件上传 API,而不支持模块标识。 由于 IoT Edge 只使用模块,因此 IoT Edge 本地不支持文件上传。
有关使用 IoT 中心上传文件的详细信息,请参阅使用 IoT 中心上传文件。
Edge 代理环境变量
如果容器已经存在,则你在config.toml中对环境变量(如edgeAgent)的更改将不会应用到hostname。 若要应用这些更改,请通过运行edgeAgent删除sudo docker rm -f edgeAgent容器。 IoT Edge 守护程序会重新创建该容器,并在大约一分钟内启动 edgeAgent。
NTLM 身份验证
不支持 NTLM 身份验证。 使用 NTLM 身份验证配置的代理不起作用。
IoT Edge 对代理身份验证的支持有限。 仅支持为用户名和密码身份验证配置的代理。
后续步骤
有关详细信息,请参阅 IoT 中心其他限制。