Bereitstellung von Geräten mit dem Azure IoT Hub Device Provisioning-DienstProvisioning devices with Azure IoT Hub Device Provisioning Service

Microsoft Azure bietet einen umfangreichen Satz von integrierten öffentlichen Clouddiensten für alle Ihre IoT-Lösunganforderungen.Microsoft Azure provides a rich set of integrated public cloud services for all your IoT solution needs. Der IoT Hub Device Provisioning-Dienst ist ein Hilfsdienst für IoT Hub, der die JIT-Bereitstellung im richtigen IoT-Hub ohne manuelles Eingreifen ermöglicht, sodass Kunden Millionen von Geräten sicher und skalierbar bereitstellen können.The IoT Hub Device Provisioning Service is a helper service for IoT Hub that enables zero-touch, just-in-time provisioning to the right IoT hub without requiring human intervention, enabling customers to provision millions of devices in a secure and scalable manner.

Wann sollte der Device Provisioning-Dienst verwendet werden?When to use Device Provisioning Service

Es gibt viele Bereitstellungsszenarien, in denen der Device Provisioning-Dienst eine hervorragende Wahl ist, um Verbindungen von Geräten mit IoT Hub herzustellen und sie für IoT Hub zu konfigurieren, z.B.:There are many provisioning scenarios in which the Device Provisioning Service is an excellent choice for getting devices connected and configured to IoT Hub, such as:

  • Bereitstellung ohne manuelles Eingreifen für eine einzelne IoT-Lösung ohne werkseitige Hartcodierung von IoT Hub-Verbindungsinformationen (Anfangssetup)Zero-touch provisioning to a single IoT solution without hardcoding IoT Hub connection information at the factory (initial setup)
  • Mehrere Hubs übergreifender Lastenausgleich für GeräteLoad balancing devices across multiple hubs
  • Herstellen der Verbindung von Geräten mit der IoT-Lösung ihrer Besitzer auf Basis der Verkaufstransaktionsdaten (Mehrinstanzenfähigkeit)Connecting devices to their owner’s IoT solution based on sales transaction data (multitenancy)
  • Herstellen der Verbindung von Geräten mit einer bestimmten IoT-Lösung abhängig vom Anwendungsfall (Lösungsisolation)Connecting devices to a particular IoT solution depending on use-case (solution isolation)
  • Herstellen der Verbindung eines Geräts mit IoT Hub mit der geringsten Wartezeit (Geo-Sharding)Connecting a device to the IoT hub with the lowest latency (geo-sharding)
  • Erneute Bereitstellung basierend auf einer Änderung im GerätReprovisioning based on a change in the device
  • Wechseln der Schlüssel, die vom Gerät verwendet werden, um eine Verbindung mit IoT Hub herzustellen (wenn keine X. 509-Zertifikate verwendet werden, um Verbindungen herstellen)Rolling the keys used by the device to connect to IoT Hub (when not using X.509 certificates to connect)

Abläufe im HintergrundBehind the scenes

Alle im vorherigen Abschnitt aufgelisteten Szenarien können mit dem Bereitstellungsdienst für die Bereitstellung ohne manuelles Eingreifen mit demselben Ablauf ausgeführt werden.All the scenarios listed in the previous section can be done using the provisioning service for zero-touch provisioning with the same flow. Viele der normalerweise mit der Bereitstellung verbundenen manuellen Schritte sind beim Device Provisioning-Dienst automatisiert, um die Bereitstellung von IoT-Geräten zu beschleunigen und das Risiko eines manuellen Fehlers zu senken.Many of the manual steps traditionally involved in provisioning are automated with the Device Provisioning Service to reduce the time to deploy IoT devices and lower the risk of manual error. Im Folgenden wird beschrieben, was bei der Bereitstellung eines Geräts im Hintergrund geschieht.The following section describes what goes on behind the scenes to get a device provisioned. Der erste Schritt ist manuell, alle folgenden Schritte sind automatisiert.The first step is manual, all of the following steps are automated.

Grundlegender Bereitstellungsablauf

  1. Der Gerätehersteller fügt die Geräteregistrierungsinformationen der Registrierungsliste im Azure-Portal hinzu.Device manufacturer adds the device registration information to the enrollment list in the Azure portal.
  2. Das Gerät nimmt mit dem werkseitig festgelegten Bereitstellungsdienstendpunkt Kontakt auf.Device contacts the provisioning service endpoint set at the factory. Das Gerät übergibt dem Bereitstellungsdienst seine Identifikationsinformationen, um seine Identität nachzuweisen.The device passes the identifying information to the provisioning service to prove its identity.
  3. Der Bereitstellungsdienst überprüft die Identität des Geräts entweder mit einer Nonce-Herausforderung (Trusted Platform Module) oder einer standardmäßigen X.509-Überprüfung (X.509), indem er Registrierungs-ID und Schlüssel anhand des Registrierungslisteneintrags überprüft.The provisioning service validates the identity of the device by validating the registration ID and key against the enrollment list entry using either a nonce challenge (Trusted Platform Module) or standard X.509 verification (X.509).
  4. Der Bereitstellungsdienst registriert das Gerät bei einem IoT Hub und füllt den gewünschten Zwillingsstatus des Geräts aus.The provisioning service registers the device with an IoT hub and populates the device's desired twin state.
  5. Der IoT Hub gibt die Geräte-ID-Informationen an den Bereitstellungsdienst zurück.The IoT hub returns device ID information to the provisioning service.
  6. Der Bereitstellungsdienst gibt die IoT Hub-Verbindungsinformationen an das Gerät zurück.The provisioning service returns the IoT hub connection information to the device. Das Gerät kann nun direkt Daten an den IoT Hub senden.The device can now start sending data directly to the IoT hub.
  7. Das Gerät stellt eine Verbindung mit dem IoT Hub her.The device connects to IoT hub.
  8. Das Gerät ruft den gewünschten Status von seinem Gerätezwilling im IoT Hub ab.The device gets the desired state from its device twin in IoT hub.

BereitstellungProvisioning process

Es gibt zwei unterschiedliche Schritte im Bereitstellungsprozess eines Geräts, bei denen der Device Provisioning-Dienst einen Teil übernimmt, der auch eigenständig ausgeführt werden kann:There are two distinct steps in the deployment process of a device in which the Device Provisioning Service takes a part that can be done independently:

  • Der Fertigungsschritt, in dem das Gerät werkseitig erstellt und vorbereitet wird, undThe manufacturing step in which the device is created and prepared at the factory, and
  • Der Cloudeinrichtungsschritt, in dem der Device Provisioning-Dienst für die automatisierte Bereitstellung konfiguriert wird.The cloud setup step in which the Device Provisioning Service is configured for automated provisioning.

Beide Schritte fügen sich nahtlos in bestehende Fertigungs- und Bereitstellungsprozesse ein.Both these steps fit in seamlessly with existing manufacturing and deployment processes. Der Device Provisioning-Dienst vereinfacht auch einige Bereitstellungsprozesse, die mit viel manueller Arbeit zum Abrufen der Verbindungsinformationen auf das Gerät verbunden sind.The Device Provisioning Service even simplifies some deployment processes that involve a lot of manual work to get connection information onto the device.

FertigungsschrittManufacturing step

Dieser Schritt umfasst alles, was in der Fertigung geschieht.This step is all about what happens on the manufacturing line. An diesem Schritt sind Hardwareentwickler und -hersteller, Integrator und/oder Endhersteller des Geräts beteiligt.The roles involved in this step include silicon designer, silicon manufacturer, integrator and/or the end manufacturer of the device. Dieser Schritt betrifft das Erstellen der Hardware selbst.This step is concerned with creating the hardware itself.

Der Device Provisioning-Dienst führt keinen neuen Schritt in den Fertigungsprozess ein; stattdessen bindet er ihn in den vorhandenen Schritt ein, der die grundlegende Software und (im Idealfall) das HSM auf dem Gerät installiert.The Device Provisioning Service does not introduce a new step in the manufacturing process; rather, it ties into the existing step that installs the initial software and (ideally) the HSM on the device. Statt dass in diesem Schritt eine Geräte-ID erstellt wird, wird das Gerät mit den Bereitstellungsdienstinformationen programmiert, sodass es den Bereitstellungsdienst aufrufen kann, um beim Einschalten seine Verbindungsinformationen/IoT-Lösungszuweisung zu erhalten.Instead of creating a device ID in this step, the device is programmed with the provisioning service information, enabling it to call the provisioning service to get its connection info/IoT solution assignment when it is switched on.

Auch in diesem Schritt liefert der Hersteller dem Bereitsteller/Bediener des Geräts Indentifikationsschlüsselinformationen.Also in this step, the manufacturer supplies the device deployer/operator with identifying key information. Die Angabe dieser Informationen ist möglicherweise einfach nur die Bestätigung, dass alle Geräte über ein X.509-Zertifikat verfügen, das aus einem vom Gerätebereitsteller/-bediener bereitgestellten Signaturzertifikat generiert wurde, kann jedoch auch komplexer sein und das Extrahieren des öffentlichen Teils eines TPM-Endorsement Keys aus jedem TPM-Gerät beinhalten.Supplying that information could be as simple as confirming that all devices have an X.509 certificate generated from a signing certificate provided by the device deployer/operator, or as complicated as extracting the public portion of a TPM endorsement key from each TPM device. Diese Dienste werden heute von vielen Hardwareherstellern angeboten.These services are offered by many silicon manufacturers today.

CloudeinrichtungsschrittCloud setup step

In diesem Schritt wird die Cloud für die ordnungsgemäße automatische Bereitstellung konfiguriert.This step is about configuring the cloud for proper automatic provisioning. Im Allgemeinen sind zwei Arten von Benutzern am Cloudeinrichtungsschritt beteiligt: eine Person (ein Gerätebediener), die weiß, wie Geräte erstmalig eingerichtet werden müssen, und eine andere Person (ein Lösungsoperator), die weiß, wie Geräte auf die IoT Hubs aufgeteilt werden sollen.Generally there are two types of users involved in the cloud setup step: someone who knows how devices need to be initially set up (a device operator), and someone else who knows how devices are to be split among the IoT hubs (a solution operator).

Eine einmalige anfängliche Einrichtung der Bereitstellung muss ausgeführt werden, und dies wird im Allgemeinen vom Lösungsoperator übernommen.There is a one-time initial setup of the provisioning that must occur, which is usually handled by the solution operator. Sobald der Bereitstellungsdienst konfiguriert ist, muss er nicht geändert werden, solange sich der Anwendungsfall nicht ändert.Once the provisioning service is configured, it does not have to be modified unless the use case changes.

Wenn der Dienst für die automatische Bereitstellung konfiguriert ist, muss er auf das Registrieren von Geräten vorbereitet werden.After the service has been configured for automatic provisioning, it must be prepared to enroll devices. Dieser Schritt erfolgt durch den Gerätebediener, der die gewünschte Konfiguration der Geräte kennt und dafür verantwortlich ist, sicherzustellen, dass der Bereitstellungsdienst ordnungsgemäß die Identität des Geräts nachweisen kann, wenn es seinen IoT Hub sucht.This step is done by the device operator, who knows the desired configuration of the device(s) and is in charge of making sure the provisioning service can properly attest to the device's identity when it comes looking for its IoT hub. Die Gerätebediener übernimmt die Indentifikationsschlüsselinformationen vom Hersteller und fügt sie der Registrierungsliste hinzu.The device operator takes the identifying key information from the manufacturer and adds it to the enrollment list. Die Registrierungsliste kann später aktualisiert werden, indem neue Einträge hinzugefügt oder vorhandene Einträge mit den neuesten Informationen zu den Geräten aktualisiert werden.There can be subsequent updates to the enrollment list as new entries are added or existing entries are updated with the latest information about the devices.

Registrierung und BereitstellungRegistration and provisioning

Bereitstellung kann abhängig von der Branche, wo der Begriff verwendet wird, verschiedene Bedeutungen haben.Provisioning means various things depending on the industry in which the term is used. Im Kontext der Bereitstellung von IoT-Geräten für ihre Cloudlösung ist sie ein aus zwei Teilen bestehender Prozess:In the context of provisioning IoT devices to their cloud solution, provisioning is a two part process:

  1. Im ersten Teil wird durch Registrieren des Geräts eine erstmalige Verbindung des Geräts mit der IoT-Lösung hergestellt.The first part is establishing the initial connection between the device and the IoT solution by registering the device.
  2. Im zweiten Schritt wird die richtige Konfiguration des Geräts basierend auf den spezifischen Anforderungen der Lösung, für die es registriert wurde, angewendet.The second part is applying the proper configuration to the device based on the specific requirements of the solution it was registered to.

Nach Ausführung dieser beiden Schritte kann das Gerät als vollständig bereitgestellt bezeichnet werden.Once both of those two steps have been completed, we can say that the device has been fully provisioned. Einige Clouddienste ermöglichen nur den ersten Schritt des Bereitstellungsvorgangs, das Registrieren von Geräten beim Endpunkt der IoT-Lösung, aber nicht die Erstkonfiguration.Some cloud services only provide the first step of the provisioning process, registering devices to the IoT solution endpoint, but do not provide the initial configuration. Der Device Provisioning-Dienst automatisiert beide Schritte und sorgt so für eine nahtlose Bereitstellung des Geräts.The Device Provisioning Service automates both steps to provide a seamless provisioning experience for the device.

Features des Device Provisioning-DienstsFeatures of the Device Provisioning Service

Der Device Provisioning-Dienst hat viele Features, die ihn zur idealen Lösung zur Bereitstellung von Geräten machen.The Device Provisioning Service has many features, making it ideal for provisioning devices.

  • Unterstützung des sicheren Nachweises für Identitäten auf X.509- und TPM-Basis.Secure attestation support for both X.509 and TPM-based identities.
  • Eine Registrierungsliste mit der vollständigen Aufzeichnung von Geräten/Gerätegruppen, die sich zu einem beliebigen Zeitpunkt registrieren könnten.Enrollment list containing the complete record of devices/groups of devices that may at some point register. Die Registrierungsliste enthält Informationen zu der gewünschten Konfiguration des Geräts, sobald es registriert ist, und sie kann jederzeit aktualisiert werden.The enrollment list contains information about the desired configuration of the device once it registers, and it can be updated at any time.
  • Mehrere Zuordnungsrichtlinien, um zu steuern, wie der Device Provisioning-Dienst zur Unterstützung Ihrer Szenarien Geräte IoT Hubs zuweist.Multiple allocation policies to control how the Device Provisioning Service assigns devices to IoT hubs in support of your scenarios.
  • Überwachungs- und Diagnoseprotokolle, um sicherzustellen, dass alles ordnungsgemäß funktioniertMonitoring and diagnostics logging to make sure everything is working properly.
  • Unterstützung für mehrere Hubs, sodass der Device Provisioning-Dienst Geräte mehreren IoT Hubs zuweisen kann.Multi-hub support allows the Device Provisioning Service to assign devices to more than one IoT hub. Der Device Provisioning-Dienst kann mehrere Azure-Abonnements übergreifend mit Hubs kommunizieren.The Device Provisioning Service can talk to hubs across multiple Azure subscriptions.
  • Regionsübergreifende Unterstützung, sodass der Device Provisioning-Dienst Geräte IoT Hubs in anderen Regionen zuweisen kannCross-region support allows the Device Provisioning Service to assign devices to IoT hubs in other regions.

Weitere Informationen zu den Konzepten und Features in Verbindung mit der Gerätebereitstellung finden Sie unter IoT Hub Device Provisioning Service device concepts (IoT Hub Device Provisioning-Dienst: Gerätekonzepte), IoT Hub Device Provisioning Service concepts (IoT Hub Device Provisioning-Dienst: Konzepte) und IoT Hub Device Provisioning Service security concepts (IoT Hub Device Provisioning-Dienst: Sicherheitskonzepte).You can learn more about the concepts and features involved in device provisioning in device concepts, service concepts, and security concepts.

Plattformübergreifende UnterstützungCross-platform support

Der Device Provisioning-Dienst ist wie alle Azure IoT-Dienste plattformübergreifend mit einer Vielzahl von Betriebssystemen einsetzbar.The Device Provisioning Service, like all Azure IoT services, works cross-platform with a variety of operating systems. Azure bietet Open Source-SDKs in einer Vielzahl von Sprachen zur Erleichterung von Geräteverbindungen und Dienstverwaltung.Azure offers open-source SDKs in a variety of languages to facilitate connecting devices and managing the service. Der Device Provisioning-Dienst unterstützt die folgenden Protokolle zum Verbinden von Geräten:The Device Provisioning Service supports the following protocols for connecting devices:

  • HTTPSHTTPS
  • AMQPAMQP
  • AMQP über WebsocketsAMQP over web sockets
  • MQTTMQTT
  • MQTT über WebsocketsMQTT over web sockets

Der Device Provisioning-Dienst unterstützt für Dienstvorgänge nur HTTPS-Verbindungen.The Device Provisioning Service only supports HTTPS connections for service operations.

RegionsRegions

Der Device Provisioning-Dienst ist in vielen Regionen verfügbar.The Device Provisioning Service is available in many regions. Eine für alle Dienste laufend aktualisierte Liste der vorhandenen und neu angekündigten Regionen finden Sie unter Azure-Regionen.The updated list of existing and newly announced regions for all services is at Azure Regions. Die Verfügbarkeit des Device Provisioning-Diensts können Sie auf der Seite Azure-Status überprüfen.You can check availability of the Device Provisioning Service on the Azure Status page.

Hinweis

Der Device Provisioning-Dienst ist global und nicht an einen Standort gebunden.The Device Provisioning Service is global and not bound to a location. Sie müssen jedoch eine Region angeben, in der Ihre dem Device Provisioning-Dienstprofil zugeordneten Metadaten gespeichert werden sollen.However, you must specify a region in which the metadata associated with your Device Provisioning Service profile will reside.

VerfügbarkeitAvailability

Für den Device Provisioning-Dienst gilt eine Vereinbarung zum Servicelevel (SLA) von 99,9 Prozent, und Sie können die SLA hier einsehen.There is a 99.9% Service Level Agreement for the Device Provisioning Service, and you can read the SLA. Die vollständige Azure-SLA erläutert die garantierte Verfügbarkeit von Azure insgesamt.The full Azure SLA explains the guaranteed availability of Azure as a whole.

KontingenteQuotas

Für jedes Azure-Abonnement gelten standardmäßig bestimmte Kontingentgrenzen, die den Umfang Ihrer IoT-Lösung beeinträchtigen könnten.Each Azure subscription has default quota limits in place that could impact the scope of your IoT solution. Die aktuelle Grenze auf Abonnementbasis sind 10 Device Provisioning-Dienste pro Abonnement.The current limit on a per-subscription basis is 10 Device Provisioning Services per subscription.

Die folgende Tabelle enthält die Grenzwerte, die für Ressourcen des Azure IoT Hub Device Provisioning-Diensts gelten.The following table lists the limits that apply to Azure IoT Hub Device Provisioning Service resources.

ResourceResource BegrenzungLimit
Maximale Anzahl von Gerätebereitstellungsdiensten pro Azure-AbonnementMaximum device provisioning services per Azure subscription 1010
Maximale Anzahl von Registrierungen (Enrollments)Maximum number of enrollments 1.000.0001,000,000
Maximale Anzahl von Registrierungen (Registrations)Maximum number of registrations 1.000.0001,000,000
Maximale Anzahl von RegistrierungsgruppenMaximum number of enrollment groups 100100
Maximale Anzahl von ZertifizierungsstellenMaximum number of CAs 2525
Maximale Anzahl der verknüpften IoT-HubsMaximum number of linked IoT hubs 1010
Maximale NachrichtengrößeMaximum size of message 96 KB96 KB

Hinweis

Sie können sich an den Microsoft-Support wenden, um die Anzahl von Instanzen in Ihrem Abonnement erhöhen zu lassen.To increase the number of instances in your subscription, contact Microsoft Support.

Hinweis

Sie können sich an den Microsoft-Support wenden, um die Anzahl der Registrierungen für Ihren Bereitstellungsdienst zu erhöhen.To increase the number of enrollments and registrations on your provisioning service, contact Microsoft Support.

Der Device Provisioning Service drosselt Anforderungen, wenn die folgenden Kontingente überschritten werden.The Device Provisioning Service throttles requests when the following quotas are exceeded.

DrosselungThrottle Wert pro EinheitPer-unit value
VorgängeOperations 200/Minute/Dienst200/min/service
GeräteregistrierungenDevice registrations 200/Minute/Dienst200/min/service
Abrufvorgang für GeräteDevice polling operation 5/10 Sekunden/Gerät5/10 sec/device

Weitere Informationen zu Kontingentgrenzen finden Sie hier:For more details on quota limits:

Der Device Provisioning-Dienst automatisiert die Bereitstellung von Geräten unter Azure IoT Hub.The Device Provisioning Service automates device provisioning with Azure IoT Hub. Erfahren Sie mehr über IoT Hub.Learn more about IoT Hub.

Nächste SchritteNext steps

Sie haben jetzt einen Überblick über die Bereitstellung von IoT-Geräten in Azure erhalten.You now have an overview of provisioning IoT devices in Azure. Der nächste Schritt ist, dass Sie ein End-to-End-IoT-Szenario testen.The next step is to try out an end-to-end IoT scenario.