Azure IoT Edge 支持的平台

注意

本文引用了 CentOS,这是一个接近生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。

适用于:IoT Edge 1.4 复选标记 IoT Edge 1.4

本文介绍 IoT Edge 支持哪些操作系统平台、 IoT Edge 运行时、容器引擎和组件(无论是正式发布还是预览版)。

获取支持

如果在使用 Azure IoT Edge 服务时遇到问题,可以通过多种方式来寻求支持。 请尝试通过以下某个渠道来寻求支持:

报告 bug - 涉及 Azure IoT Edge 产品的大多数开发都是在 IoT Edge 开放源代码项目中进行的。 可以在项目的问题页面上报告 bug。 与 Azure IoT Edge for Linux on Windows 相关的 bug 可以在 iotedge-eflow 问题页上报告。 修复很快就会从项目实施到产品更新中。

Microsoft 客户支持团队 - 拥有支持计划的用户可通过直接从 Azure 门户创建支持票证来与 Azure 客户支持团队进行沟通。

功能请求 - Azure IoT Edge 产品通过产品的 Azure 反馈社区跟踪功能请求。

容器引擎

Azure IoT Edge 模块是以容器形式实现的,因此 IoT Edge 需要容器引擎来启动这些模块。 Azure 提供了容器引擎 moby-engine 来满足此要求。 该容器引擎基于 Moby 开源项目。 Docker CE 和 Docker EE 是其他常用的容器引擎。 它们也基于 Moby 开放源代码项目并且与 Azure IoT Edge 兼容。 Azure 对使用那些容器引擎的系统提供尽力而为的支持;但是,Azure 不能为其中的问题提供修复。 因此,Azure 建议在生产系统上使用 moby-engine。

屏幕截图显示作为容器运行时的 Moby 引擎。

操作系统

Azure IoT Edge 在大多数可以运行容器的操作系统上运行;但是,并非所有这些系统都受到同等支持。 操作系统分组为各个层级,这些层级表示用户可以预期的支持级别。

  • 支持第 1 层系统。 对于第 1 层系统,Microsoft 会采取以下措施:
    • 将此操作系统包括在自动化测试中
    • 为它们提供安装程序包
  • 第 2 层系统与 Azure IoT Edge 兼容并且可以相对容易地使用。 对于第 2 层系统:
    • Azure 已在平台上进行了非正式测试,或者知道合作伙伴已在平台上成功运行 Azure IoT Edge
    • 适用于其他平台的安装程序包在这些平台上可能会正常工作

第 1 层

下表中列出的系统(不管是公开发布版还是公共预览版)受 Microsoft 的支持,并在每个新版本中进行了测试。

Linux 容器

构建为 Linux 容器的模块可以部署到 Linux 或 Windows 设备。 对于 Linux 设备,IoT Edge 运行时会直接安装在主机设备上。 对于 Windows 设备,使用 IoT Edge 运行时预生成的 Linux 虚拟机会在主机设备上运行。

建议使用 IoT Edge for Linux on Windows 在 Windows 设备上运行 IoT Edge。

操作系统 AMD64 ARM32v7 ARM64 结束支持
Debian 11 (Bullseye) Debian + ARM32v7 2026 年 6 月
Red Hat Enterprise Linux 9 Red Hat Enterprise Linux 9 + AMD64 2032 年 5 月
Red Hat Enterprise Linux 8 Red Hat Enterprise Linux 8 + AMD64 2029 年 5 月
Ubuntu Server 22.04 Ubuntu Server 22.04 + AMD64 Ubuntu Server 22.04 + ARM64 2027 年 6 月
Ubuntu Server 20.04 Ubuntu Server 20.04 + AMD64 Ubuntu Server 20.04 + ARM64 2025 年 4 月
Windows 10/11 Windows 10/11 + AMD64 Windows 10/11 + ARM64 有关受支持的 Windows OS 版本,请参阅 Azure IoT EFLOW
Windows Server 2019/2022 Windows Server 2019/2022 + AMD64 有关受支持的 Windows OS 版本,请参阅 Azure IoT EFLOW

注意

第 1 层操作系统的支持日期结束后,将从第 1 层支持的平台列表中删除。 如果不采取任何操作,则在不受支持的操作系统上运行的 IoT Edge 设备将继续工作,但在支持日期结束后,操作系统主机包中的持续安全修补程序和 bug 修复将不可用。 若要继续获得支持和安全更新,建议你将主机 OS 更新为第 1 层支持的平台。

Windows 容器

我们不再支持 Windows 容器。 建议使用 IoT Edge for Linux on Windows 在 Windows 设备上运行 IoT Edge。

第 2 层

下表中列出的系统被视为与 Azure IoT Edge 兼容,但 Microsoft 不会对其进行主动测试或维护。

重要

我们尽量提供对这些系统的支持,它可能要求你在第 1 层支持的系统上重现问题。

操作系统 AMD64 ARM32v7 ARM64
Debian 10 1 Debian 10 + AMD64 Debian 10 + ARM32v7 Debian 10 + ARM64
Debian 11 Debian 11 + AMD64 Debian 11 + ARM64
Mentor Embedded Linux Flex OS Mentor Embedded Linux Flex OS + AMD64 Mentor Embedded Linux Flex OS + ARM32v7 Mentor Embedded Linux Flex OS + ARM64
Mentor Embedded Linux Omni OS Mentor Embedded Linux Omni OS + AMD64 Mentor Embedded Linux Omni OS + ARM64
Ubuntu 20.04 2 Ubuntu 20.04 + ARM32v7
Ubuntu 22.04 2 Ubuntu 22.04 + ARM32v7
Wind River 8 Wind River 8 + AMD64
Yocto
对于 Yocto 问题,请打开 GitHub 问题
Yocto + AMD64 Yocto + ARM32v7 Yocto + ARM64
Raspberry Pi OS Buster Raspberry Pi OS Buster + ARM32v7 Raspberry Pi OS Buster + ARM64

1 随着 1.3 的发布,Debian 10 中出现了导致故障的新系统调用。 若要查看解决方法,请查看 1.3 发行说明的已知问题:ARMv7 上的 Debian 10 (Buster) 部分了解详细信息。

2Azure IoT Edge 版本上提供了安装包。 请参阅脱机或特定版本安装中的安装步骤。

注意

第 2 层操作系统的支持日期结束后,将从支持的平台列表中删除。 如果不采取任何操作,则在不受支持的操作系统上运行的 IoT Edge 设备将继续工作,但在支持日期结束后,操作系统主机包中的持续安全修补程序和 bug 修复将不可用。 若要继续获得支持和安全更新,建议你将主机 OS 更新为第 1 层支持的平台。

发行版本

下表列出了当前支持的版本。 IoT Edge 发行资产和发行说明在 azure-iotedge 版本页上提供。

发行说明和资产 类型 发布日期 支持结束日期
1.4 长期支持 (LTS) 2022 年 8 月 2024 年 11 月 12 日

有关 IoT Edge 版本历史记录的详细信息,请参阅版本历史记录

重要

  • 每个 Azure 产品都有生命周期。 生命周期从产品发布开始,到不再受支持时结束。 了解此生命周期中的关键日期可帮助你就何时升级软件或对其进行其他更改做出明智的决策。 IoT Edge 由 Azure 的新式生命周期策略治理。

IoT Edge 使用 Microsoft.Azure.Devices.Client SDK。 有关详细信息,请参阅 Azure IoT C# SDK GitHub 存储库Azure SDK for .NET 参考内容。 以下列表显示了用于测试每个版本的客户端 SDK 版本:

IoT Edge 版本 Microsoft.Azure.Devices.Client SDK 版本
1.4 1.36.6

虚拟机

Azure IoT Edge 可以在虚拟机(例如 Azure 虚拟机)中运行。 当客户想要利用边缘智能增强现有的基础结构时,经常会使用虚拟机作为 IoT Edge 设备。 主机 VM OS 系列必须与模块容器内部使用的来宾 OS 系列相匹配。 直接在设备上运行 Azure IoT Edge 时,同样要满足此要求。 Azure IoT Edge不区分底层虚拟化技术,将在以 Hyper-V 和 vSphere 等平台为后盾的 VM 中工作。

虚拟机中的 Azure IoT Edge 的屏幕截图。

最低系统要求

在 Raspberry Pi3 等小型设备以及服务器级硬件上,Azure IoT Edge 都能非常顺利地运行。 哪种硬件适合方案取决于想要运行的工作负荷。 在设备方面做出最终决策可能比较复杂;但是,可以在传统的便携式计算机或台式机上轻松开始设计解决方案的原型。

在设计原型期间获得的经验可以帮助你在设备方面做出最终的选择。 应考虑的问题包括:

  • 工作负荷中有多少个模块?
  • 模块的容器共享多少层?
  • 你的模块采用什么语言编写?
  • 模块将处理多少数据?
  • 模块是否需要使用任何专用硬件来加速其工作负荷?
  • 所需的解决方案性能特点有哪些?
  • 硬件预算是多少?