Device Management at Scale in Azure IoT Central
Published Jan 11 2021 11:50 AM 7,112 Views
Microsoft

IoT Device management at scale is achieved in Azure IoT Central using the Jobs feature. Jobs provides device operators and developers the ability to group, streamline, orchestrate, and monitor updates to tens of thousands to millions of IoT devices and edge devices with an intuitive user experience & API.

 

Operators and developers can choose to submit jobs to:

  • Update device twin writeable properties and receive reported properties as a response from the device.
  • Update cloud properties.
  • Run commands, both direct methods and offline (C2D) commands.

 

Jobs feature in Azure IoT Central addresses many business needs including:

  • Group & Update: Device groups in IoT Central helps you group a fleet of devices which could have similar capabilities or characteristics and using device groups in Jobs helps you harness device management to a fleet of devices.
  • Apply advanced delivery options: Delivery options helps stagger how and when a job is executed for large numbers of devices. This is achieved through batching and cancellation thresholds. Each batch will be completed before the next queued batch starts. The job will be automatically cancelled if the number of device errors hits the cancellation threshold set by the operator is met as devices error out.
  • Automation & Scale: Automate routine tasks to enable thousands and millions of devices using the scheduling feature and/or APIs with the ability to run jobs in the future and in a repeated fashion.
  • Heterogeneity & Compatibility: Device management across IoT devices and edge devices, platform types, operating systems, and protocol standards.
  • Filter, Search & Export: Operators will have the ability to filter, search and export results based on job results and pinpoint devices with errors. Export results as a CSV file to be able to distribute the results.
  • Ease of Use: A wizard experience guides new job creation with an intuitive user experience, copy jobs for reuse, stop and restart jobs, and rerun jobs on failed devices.

 

 

Common Scenarios

Here are some of the common scenarios' operators can use the Jobs feature of IoT Central to do device management at scale.

 

1. Submit a Job for immediate execution.

Operators and developers can choose to run a job for immediate execution. This is available through IoT Central app using the New Job wizard experience or using the Jobs APIs. Selecting delivery options is optional.

 

dm1.png

 

dm2.png

 

Operators will have the ability to monitor jobs using the jobs details.

dm4.png

 

Jobs submission can be automated with APIs. Using the Jobs Set API developers can submit jobs for immediate execution. Jobs - Set (Azure IoT Central) | Microsoft Docs

 

dmapis.png

 

 

2. Submit a Job for immediate execution with Delivery Options.

Operators and developers can choose to run a job for immediate execution with delivery options. This is available through IoT Central app using the New Job wizard experience. Delivery options helps stagger how and when a job is executed for large numbers of devices. This is achieved through batching. Each batch will complete before the next queued batch starts. Job will be automatically cancelled if the cancellation threshold set by the operator is met as devices error out.

 

Batches & Cancellation Threshold Examples

If you have 1000 devices and enter 10%, there will be 10 batches and 100 devices qualify for each batch. Batches will be executed in sequence.

 

You can choose to cancel the job if a threshold is met on number of devices which have failed during job execution. For 1000 devices if you select a 20% threshold to be applied on the total devices, the job is cancelled when 200 devices fail during job execution.

 

If you choose to apply the threshold on a batch when 40 devices fail on a batch the job will be cancelled.

 

3. Schedule a Job for future execution and repeat execution

Operators and developers can choose to run a job to schedule a job for future execution and the ability to repeat the execution on a daily, weekly, or monthly basis. This is available through IoT Central app using the New Job wizard experience. Automate routine tasks to enable thousands and millions of devices using the scheduling feature with the ability to run jobs in the future and in a repeated fashion. Scheduled jobs can be setup to run: Once on a future date, Daily, Weekly or Monthly.

 

dmsch1.png

 

dmsch2.png

 

dmsch3.png

 

4. Stop & Resume a Job

Operators and developers can choose to stop a Job in progress and choose to resume the execution of a stopped job using IoT Central app and APIs.

 

dmstop.png

 

dmstop2.png

 

5. Rerun a Job on failed devices.

Operators and developers can choose to rerun a Job on failed devices using IoT Central app and APIs. Job will pick up all devices which failed in the previous run and submit a new job for execution.

 

dmrerun.png

 

Summary

Device management at scale can be achieved in Azure IoT Central using the Jobs feature giving you the flexibility of advanced delivery options and ability to schedule jobs on a regular basis taking you through a wizard experience, rerun jobs on failed devices.

 

Additional Resources

Following are learning resources.

  1. IoT Central Docs (Jobs)
  2. Create your IoT Central App
  3. Mock Devices Tool
  4. IoT Central GitHub Page

 

Version history
Last update:
‎Jan 11 2021 11:58 AM
Updated by: