什么是 Azure IoT EdgeWhat is Azure IoT Edge

Azure IoT Edge 将云分析和自定义业务逻辑移到设备,这样你的组织就可以专注于业务见解而非数据管理。Azure IoT Edge moves cloud analytics and custom business logic to devices so that your organization can focus on business insights instead of data management. 通过将业务逻辑打包到标准容器中,横向扩展 IoT 解决方案,然后可以将这些容器部署到任何设备,并从云中监视所有这些设备。Scale out your IoT solution by packaging your business logic into standard containers, then you can deploy those containers to any of your devices and monitor it all from the cloud.

分析可以提升 IoT 解决方案中的业务价值,但并非所有分析都需要在云中进行。Analytics drives business value in IoT solutions, but not all analytics needs to be in the cloud. 如果希望尽快响应突发事件,可以在边缘运行异常情况检测工作负荷。If you want to respond to emergencies as quickly as possible, you can run anomaly detection workloads at the edge. 如果想要降低带宽成本并避免传输数 TB 的原始数据,可以在本地清理和聚合数据,然后只将见解发送到云进行分析。If you want to reduce bandwidth costs and avoid transferring terabytes of raw data, you can clean and aggregate the data locally then only send the insights to the cloud for analysis.

Azure IoT Edge 包含三个组件:Azure IoT Edge is made up of three components:

  • IoT Edge 模块是容器,可以运行 Azure 服务、第三方服务或者你自己的代码。IoT Edge modules are containers that run Azure services, third-party services, or your own code. 这些模块部署到 IoT Edge 设备,在设备上以本地方式执行。Modules are deployed to IoT Edge devices and execute locally on those devices.
  • IoT Edge 运行时在每个 IoT Edge 设备上运行,并管理部署到每个设备的模块。The IoT Edge runtime runs on each IoT Edge device and manages the modules deployed to each device.
  • 可以通过基于云的界面远程监视和管理 IoT Edge 设备。A cloud-based interface enables you to remotely monitor and manage IoT Edge devices.

Note

Azure IoT Edge 在 IoT 中心的免费层和标准层中提供。Azure IoT Edge is available in the free and standard tier of IoT Hub. 免费层仅用于测试和评估。The free tier is for testing and evaluation only. 有关基本和标准层的详细信息,请参阅如何选择合适的 IoT 中心层For more information about the basic and standard tiers, see How to choose the right IoT Hub tier.

IoT Edge 模块IoT Edge modules

IoT Edge 模块是执行单位,以 Docker 兼容容器的方式来实现,在边缘运行业务逻辑。IoT Edge modules are units of execution, implemented as Docker compatible containers, that run your business logic at the edge. 可以将多个模块配置为互相通信,创建一个数据处理管道。Multiple modules can be configured to communicate with each other, creating a pipeline of data processing. 可以开发自定义模块,或者将某些 Azure 服务打包到模块中,以脱机方式在边缘提供见解。You can develop custom modules or package certain Azure services into modules that provide insights offline and at the edge.

边缘的人工智能Artificial intelligence at the edge

可以使用 Azure IoT Edge 来部署复杂事件处理、机器学习、图像识别和其他高价值 AI,不需在内部编写代码。Azure IoT Edge allows you to deploy complex event processing, machine learning, image recognition, and other high value AI without writing it in-house. Azure Functions、Azure 流分析之类的 Azure 服务均可通过 Azure IoT Edge 在本地运行。Azure services like Azure Functions, Azure Stream Analytics can all be run on-premises via Azure IoT Edge. 但是,你也可以运行 Azure 服务之外的内容。You’re not limited to Azure services, though. 任何人均可创建 AI 模块,通过 Azure 市场提供给社区使用。Anyone is able to create AI modules and make them available to the community for use through the Azure Marketplace.

自带代码Bring your own code

如果希望将自己的代码部署到设备,则也可使用 Azure IoT Edge。When you want to deploy your own code to your devices, Azure IoT Edge supports that, too. 与其他 Azure IoT 服务一样,Azure IoT Edge 始终使用同一编程模型。Azure IoT Edge holds to the same programming model as the other Azure IoT services. 可以在设备或云中运行相同的代码。You can run the same code on a device or in the cloud. Azure IoT Edge 既支持 Linux,也支持 Windows,允许你根据所选平台来编码。Azure IoT Edge supports both Linux and Windows so you can code to the platform of your choice. 它支持 Java、.NET Core 2.0、Node.js、C、Python,允许开发人员使用熟悉的语言和现有的业务逻辑进行编码。It supports Java, .NET Core 2.0, Node.js, C, and Python so your developers can code in a language they already know and use existing business logic.

IoT Edge 运行时IoT Edge runtime

Azure IoT Edge 运行时允许在 IoT Edge 设备上使用自定义逻辑和云逻辑。The Azure IoT Edge runtime enables custom and cloud logic on IoT Edge devices. 运行时位于 IoT Edge 设备上,并执行管理和通信操作。The runtime sits on the IoT Edge device, and performs management and communication operations. 该运行时执行多个功能:The runtime performs several functions:

  • 在设备上安装和更新工作负荷。Installs and update workloads on the device.
  • 维护设备上的 Azure IoT Edge 安全标准。Maintains Azure IoT Edge security standards on the device.
  • 确保 IoT Edge 模块始终运行。Ensures that IoT Edge modules are always running.
  • 将模块运行状况报告给云以进行远程监控。Reports module health to the cloud for remote monitoring.
  • 管理下游叶设备与 IoT Edge 设备之间、IoT Edge 设备上的模块之间以及 IoT Edge 设备与云之间的通信。Manages communication between downstream leaf devices and an IoT Edge device, between modules on an IoT Edge device, and between an IoT Edge device and the cloud.

IoT Edge 运行时将见解和报告发送到 IoT 中心

如何使用 Azure IoT Edge 设备取决于你自己。How you use an Azure IoT Edge device is up to you. 通常使用运行时将 AI 部署到网关设备,由后者聚合和处理来自其他本地设备的数据,但此部署模型只是一个选项。The runtime is often used to deploy AI to gateway devices which aggregate and process data from other on-premises devices, but this deployment model is just one option.

Azure IoT Edge 运行时在各种大型 IoT 设备上运行,因此可以通过各种方式来使用该运行时。The Azure IoT Edge runtime runs on a large set of IoT devices that enables using it in a wide variety of ways. 它支持 Linux 和 Windows 操作系统,并可提取硬件详细信息。It supports both Linux and Windows operating systems and abstracts hardware details. 如果要处理的数据不多,请使用比 Raspberry Pi 3 小的设备;如果要运行资源密集型工作负荷,请使用工业服务器。Use a device smaller than a Raspberry Pi 3 if you’re not processing much data, or use an industrial server to run resource-intensive workloads.

IoT Edge 云界面IoT Edge cloud interface

管理数百万台 IoT 设备的软件生命周期很困难,这些设备通常属于不同的制造商且型号各异,或者地理位置分散。It's difficult to manage the software lifecycle for millions of IoT devices that are often different makes and models or geographically scattered. 为特定类型的设备创建和配置工作负荷,部署到所有设备,并监视以捕获任何行为异常的设备。Workloads are created and configured for a particular type of device, deployed to all of your devices, and monitored to catch any misbehaving devices. 这些活动不能逐个设备地来完成,必须大规模地进行操作。These activities can’t be done on a per device basis and must be done at scale.

Azure IoT Edge 与 Azure IoT 解决方案加速器无缝集成,提供一个符合解决方案需要的控制平面。Azure IoT Edge integrates seamlessly with Azure IoT solution accelerators to provide one control plane for your solution’s needs. 云服务允许:Cloud services allow you to:

  • 创建和配置在特定类型的设备上运行的工作负荷。Create and configure a workload to be run on a specific type of device.
  • 将工作负荷发送到一组设备。Send a workload to a set of devices.
  • 监视在现场设备上运行的工作负荷。Monitor workloads running on devices in the field.

设备遥测和操作与云进行协调

后续步骤Next steps

通过在模拟设备上部署 IoT Edge,体会上述概念。Try out these concepts by deploying IoT Edge on a simulated device.