Azure Device Registry

azureCoordination serviceazure-device-registry

Cloud registry that projects Azure IoT Operations devices and assets into Azure Resource Manager and syncs them to the edge cluster.

Provider
azure
Category
Operations
Properties · 2 set by this component
propertytypevaluesrequiredkind defaultthis component
cloudSourceOfTruth · component propertyboolean—notrueinherited
consensusenumnone | raft | paxos | zabnononeinherited
edgeSync · component propertyboolean—notrueinherited
managedboolean—nofalse▸ true
namespaces · component propertyboolean—notrueinherited
nodesinteger—no—inherited
replicatedboolean—nofalseinherited
roleenummetadata | lock | discovery | placement | sharding | leader-election | configyes—▸ metadata
Rules that apply · 2

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

shared-dependency-without-redundancy

The design requires redundant discovery, but this DNS or coordination service, which everything depends on, runs on a single provider or a single replica. Its failure is the whole system's failure.

  • — all of these hold:
  • — the design requirement `availability.discoveryRedundant` is true
  • — any of these hold:
  • — the node's `redundantProviders` is false
  • — the node's `replicated` is false
stateful-engine-pinned-to-single-zone

A matching engine, coordination service or event store living in exactly one availability zone, with no failover and no replication, is lost with that zone. Everything that depends on it stops with it.

  • — all of these hold:
  • — the node sits inside exactly 1 availability-zone group
  • — any of these hold:
  • — the node's `failover` is "none"
  • — the node's `replicated` is false
  • — the node's `replication` is "none"
Use it in a design
nodes:
  - { id: "device-registry", component: "azure-device-registry" }
Other Coordination service products · 17
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Azure Device Registry: the cloud registry that projects the devices and assets of an Azure IoT
# Operations deployment into Azure Resource Manager ("Asset and Device Management - Azure IoT
# Operations"). That page states Device Registry "offers a unified registry so that apps and services
# that interact with your assets connect to a single source", that it "syncs assets in the cloud with
# custom resources in Kubernetes on the edge", that it organises assets and devices into namespaces
# with one namespace per IoT Operations instance, and that "the cloud is always the source of truth for
# device and asset configuration".
schemaVersion: "1"
type: "component"
id: "azure-device-registry"
kind: "coordination-service"
provider: "azure"
docs: "https://learn.microsoft.com/en-us/azure/iot-operations/discover-manage-assets/overview-manage-assets"
defaults:
  managed: true
  role: "metadata"
properties:
  namespaces:
    type: "boolean"
    default: true
  edgeSync:
    type: "boolean"
    default: true
  cloudSourceOfTruth:
    type: "boolean"
    default: true

The same page as markdown, for an agent: /catalogue/components/azure-device-registry.md