Driving your Edge Intelligence with Azure IoT Edge Platform
Last updated on 5 Aug 2020 | Yatish Patil
Many research studies have predicted that devices will increasingly become more connected. More than 1.40 billion data units will be collected to be cleaned, processed, and used for making critical business insights daily. Edge computing provides device intelligence that complements cloud capabilities, reduces cost, and increases operational efficiencies. Microsoft IoT edge is managed service built on Azure IoT platform. The service provides cloud intelligence locally by enabling the edge device to deploy and run Artificial intelligence (AI), Machine Learning, Stream Analytics, Serverless Functions, or custom logic that operate real-time on the data collected at the Edge.
When to consider IoT Edge
Edge Modules can be programmed to run business logic on the Device itself, controlling the data capture as well as data to be sent to the cloud. It will reduce the bandwidth and network usage while sending the telemetry data. It will also optimize the data bandwidth by the quality of the data that the cloud receives.
Near real-time response
In normal IoT Scenarios, the analytics or processing is performed after the cloud receives the data. Instead of that edge module provides the response in near real-time at the device itself. Immediate action will be taken based on the insights to make business-critical decisions.
IoT Edge module supports offline operations temporarily in case IoT Hub is not reachable from the Edge device. Edge hub plays an important role in this Feature by providing Device to Edge messaging, Authentication similar to IoT Hub, and storing the messages. When a device reconnects, Edge Hub syncs the messages with IoT hub.
The Azure IoT Edge security manager is a core for protecting the IoT Edge device and all its components by taking advantage of the hardware root of trust. IoT Edge security manager provides the visibility of IoT Device security, integrity, and all the inherent software operations from devices to applications.
When an IoT device is not able to connect to IoT hub, it uses the Gateway in-between which does the Protocol translation. It accepts the communication from downstream devices and converts them into the protocol understandable by IoT hub and sends messages.
Simplified Development process
Azure IoT Edge provides a simplified developer experience, it supports programming language like C#, C, Node.js, Python for developing the modules. Complete lifecycle management for coding, testing, deployment can be done through CI/CD pipeline in Azure DevOps.
How IoT Edge works:
Azure IoT Hub has built-in support for Edge Platform and devices. It has 3 components -
Azure Edge Runtime allows organizations to install and update workloads on their devices. It helps ensure that IoT Edge modules stay running and also maintains the required device-level security standards. IoT Edge runtime enables remote monitoring by reporting module health to the cloud and facilitates communication between modules on the IoT Edge device & between the IoT Edge device and the cloud
Edge Modules are managed by IoT Edge and are the smallest unit of computation. Azure IoT Edge allows organizations to deploy and manage their business logic on the edge devices in the form of modules. Azure IoT Edge modules can contain solution-specific code or Azure services like Azure Machine learning. Four conceptual pieces make up an Azure Edge module; which includes module image, instance, identity, and module twin.
Cloud Interface helps in the management of Azure IoT Edge from Azure. This helps in handling the IoT Edge devices and IoT Edge deployments.
How to implement IoT Edge Strategy
Organizations need to architect IoT implementation effectively to take advantage of IoT Platform. Below are some primary considerations to build best practices for your IoT Edge Platform. You can also take help of an established IoT consulting partner to drive your IoT Edge initiative for faster time-to-market.
Examine and identify the hardware you need to connect to the cloud. Determine its storage limits, design the connectivity options & protocols, define the Payload & the Type of data collected at Edge, and check whether a protocol translation required or not and also figure-out the Processes or workloads that will run on the Edge.
Device registration through Azure IoT Hub, their configuration, and Module definitions along with Module deployments are the primary considerations on setting up the Edge Device on the IoT Platform. Defining device provisioning technique supported by Edge Device with drill-down level Parent-child configurations is needed.
Module Development, Deployment & Upgrades
The process of developing, building IoT Edge modules consists of logical steps
- Writing IoT Edge Module using supported languages like C#, C, Node.js.
- Build and deploy module to Container registry such as Azure Container Instance (ACI), then IoT Edge runtime which is configured, and setup can pull down these images and install them on Edge Device.
- Install Edge Runtime on devices that will connect to the configured IoT hub automatically and get updated for the latest Modules.
With expanding capabilities of Edge, security is an important part of this lifecycle from the Hardware root of trust, to authenticate devices and secure encrypted data ingestion to cloud. IoT Edge is integrated with Azure security center. Azure IoT Edge security framework requires unique certificate identities for all devices, modules that interact.
What's new in Azure IoT Edge?
Ever since its launch, many features have been added in Azure IoT Edge; including deep integration with AI, custom vision, SQL Server databases, and tools for a variety of development languages. Azure IoT Edge now supports offline services for IoT devices. Additionally, it has an in-development Azure marketplace for monetization functions on edge devices.