IoT-Konzepte und Azure IoT Hub
Das Internet der Dinge (Internet of Things, IoT) ist ein Netzwerk physischer Geräte, die über das Internet oder ein anderes Netzwerk eine Verbindung mit anderen Geräten und Diensten herstellen und mit ihnen Daten austauschen. Zurzeit gibt es weltweit mehr als zehn Milliarden verbundene Geräte, und jedes Jahr werden weitere hinzugefügt. Alles, was mit den erforderlichen Sensoren und Software eingebettet werden kann, kann über das Internet verbunden werden.
Azure IoT Hub ist ein verwalteter Dienst, der in der Cloud gehostet wird und als zentraler Nachrichten-Hub für die Kommunikation zwischen einer IoT-Anwendung und deren angeschlossenen Geräten fungiert. Sie können Millionen von Geräten und deren Back-End-Lösungen zuverlässig und sicher verbinden. Fast jedes Gerät kann mit einem IoT Hub verbunden werden.
Es werden mehrere Messagingmuster unterstützt, einschließlich D2C-Telemetrie, Hochladen von Dateien von Geräten und Anforderung-Antwort-Methoden zum Steuern Ihrer Geräte aus der Cloud. IoT Hub unterstützt auch die Überwachung, um das Erstellen von Geräten sowie Geräteverbindungen und Gerätefehler nachzuverfolgen.
IoT Hub lässt sich auf Millionen von gleichzeitig verbundenen Geräten und Millionen von Ereignissen pro Sekunde skalieren, um Ihre IoT-Workloads zu unterstützen. Weitere Informationen zum Skalieren Ihres IoT-Hubs finden Sie unter Skalieren von Azure IoT Hub. Weitere Informationen zu den Dienstebenen, die von IoT Hub angeboten werden, finden Sie auf der Preisseite.
Sie können IoT Hub in andere Azure-Dienste integrieren, um vollständige End-to-End-Lösungen zu erstellen. Verwenden Sie z.B. Folgendes:
Azure Event Grid: Mit diesem Dienst können Sie schnell, zuverlässig, skalierbar und sicher auf kritische Ereignisse reagieren.
Azure Logic Apps: Mit diesem Dienst automatisieren Sie Ihre Geschäftsprozesse.
Azure Machine Learning: Mit diesem Dienst fügen Sie Ihrer Lösung Modelle für maschinelles Lernen und KI hinzu.
Azure Stream Analytics: Mit diesem Dienst führen Sie in Echtzeit Analyseberechnungen für die Datenströme aus Ihren Geräten aus.
IoT Central-Anwendungen verwenden mehrere IoT Hubs als Teil ihrer skalierbaren und robusten Infrastruktur.
Jedes Azure-Abonnement verfügt über standardmäßige Kontingentgrenzen, um einen Missbrauch des Dienstes zu verhindern. Diese Grenzen können sich auf den Umfang Ihrer IoT-Lösung auswirken. Der derzeitige Grenzwert liegt bei 50 IoT Hub-Instanzen pro Abonnement. Wenden Sie sich an den Support, um eine Erhöhung des Kontingents anzufordern. Weitere Informationen finden Sie unter IoT Hub-Kontingente und -Drosselung. Weitere Informationen zu Kontingentgrenzen finden Sie in einem der folgenden Artikel:
IoT-Geräte
IoT-Geräte unterscheiden sich von anderen Clients wie Browsern und mobilen Apps. Für IoT-Geräte gilt beispielsweise Folgendes:
- Es handelt sich häufig um eingebettete Systeme ohne menschlichen Bediener.
- Sie können an Remotestandorten bereitgestellt werden, an denen der physische Zugriff teuer ist.
- Sie sind möglicherweise nur über das Back-End der Lösung erreichbar.
- Sie verfügen möglicherweise über eingeschränkte Stromversorgungs- und Verarbeitungsressourcen.
- Sie bieten möglicherweise intermittierende, langsame oder teure Netzwerkkonnektivität.
- Sie müssen möglicherweise geschützte, benutzerdefinierte oder branchenspezifische Anwendungsprotokolle verwenden.
Geräteidentität und -authentifizierung
Bei jedem IoT-Hub gibt es eine Identitätsregistrierung, in der Informationen zu den Geräten und Modulen gespeichert werden, die eine Verbindung mit ihm herstellen dürfen. Damit ein Gerät oder Modul eine Verbindung herstellen kann, muss die Identitätsregistrierung des IoT-Hubs einen Eintrag für dieses Gerät bzw. Modul enthalten. Das Gerät oder Modul authentifiziert sich beim IoT-Hub zudem mit Anmeldeinformationen, die in der Identitätsregistrierung gespeichert sind.
Wir unterstützen zwei Authentifizierungsmethoden zwischen dem Gerät und dem IoT Hub. Sie können eine SAS-tokenbasierte Authentifizierung oder eine X.509-Zertifikatauthentifizierung verwenden.
Die SAS-Tokenmethode ermöglicht es, dass das Gerät bei jedem Aufruf des IoT Hubs authentifiziert wird, indem dem Aufruf der symmetrische Schlüssel zugeordnet wird. Die X.509-Authentifizierung ermöglicht die Authentifizierung eines IoT-Geräts auf physischer Ebene im Rahmen des Transport Layer Security (TLS)-Standardverbindungsaufbaus. Die Wahl zwischen den beiden Methoden wird in erster Linie davon bestimmt, wie sicher die Geräteauthentifizierung erfolgen muss und ob ein sicherer Speicher auf dem Gerät vorhanden ist (in dem der private Schlüssel geschützt gespeichert wird).
Sie können mithilfe des IoT Hub Device Provisioning Service viele Geräte gleichzeitig einrichten und bereitstellen.
Gerätekommunikation
Nachdem Sie Ihre Authentifizierungsmethode ausgewählt haben, wird die Internetverbindung zwischen IoT-Gerät und IoT Hub standardmäßig mit TLS (Transport Layer Security) geschützt. Azure IoT unterstützt TLS 1.2, TLS 1.1 und TLS 1.0 in der angegebenen Reihenfolge. Unterstützung für TLS 1.0 wird nur zum Zweck der Abwärtskompatibilität geboten. Über die TLS-Unterstützung in IoT Hub können Sie herausfinden, wie Sie Ihren Hub für die Verwendung von TLS 1.2 konfigurieren, weil diese Version die höchste Sicherheit bietet.
IoT-Geräte senden in der Regel Telemetriedaten von den Sensoren an Back-End-Dienste in der Cloud. Es sind jedoch auch andere Kommunikationstypen möglich, z. B. ein Back-End-Dienst, der Befehle an Ihre Geräte sendet. Einige Beispiele für verschiedene Kommunikationstypen sind die folgenden:
- Ein Kühllaster, der alle 5 Minuten Temperaturdaten an einen IoT Hub sendet
- Der Back-End-Dienst, der einen Befehl an ein Gerät sendet, um die Sendefrequenz von Telemetriedaten für eine Problemdiagnose zu ändern
- Ein Gerät zur Überwachung eines diskontinuierlichen Rührkessels in einem Chemiewerk, das eine Warnung sendet, wenn die Temperatur einen bestimmten Wert überschreitet
Gerätetelemetrie
Beispiele für Telemetriedaten, die von einem Gerät empfangen werden, können Sensordaten wie Geschwindigkeit oder Temperatur, eine Fehlermeldung wie ein verpasstes Ereignis oder eine Informationsmeldung zur Mitteilung sein, dass das Gerät fehlerfrei ist. IoT-Geräte senden Ereignisse an eine Anwendung, um Erkenntnisse zu gewinnen. Anwendungen erfordern möglicherweise bestimmte Teilmengen von Ereignissen für die Verarbeitung oder den Speicher an verschiedenen Endpunkten.
Geräteeigenschaften
Eigenschaften können aus dem IoT Hub gelesen oder festgelegt und zum Senden von Benachrichtigungen verwendet werden, wenn eine Aktion abgeschlossen wurde. Ein Beispiel für eine bestimmte Eigenschaft auf einem Gerät ist die Temperatur. Die Temperatur kann eine schreibbare Eigenschaft sein, die auf dem Gerät aktualisiert oder aus einem an das Gerät angeschlossenen Temperatursensor gelesen werden kann.
Sie können Eigenschaften in IoT Hub mithilfe von Gerätezwillingen oder Plug & Play aktivieren.
Wenn Sie etwas über die Unterschiede zwischen Gerätezwillingen und Plug & Play erfahren möchten, lesen Sie Plug & Play.
Gerätebefehle
Ein Beispiel für einen Befehl ist der Neustart eines Geräts. IoT Hub implementiert Befehle, indem es Ihnen ermöglicht wird, direkte Methoden auf Geräten aufzurufen. Direkte Methoden stellen eine Interaktion des Typs „Anforderung/Antwort“ mit einem Gerät dar, die einem HTTP-Aufruf darin ähnelt, dass sie sofort (nach einem vom Benutzer angegebenen Timeout) zu einem Erfolg oder Fehler führt. Dieser Ansatz eignet sich für Szenarien, in denen die Vorgehensweise bei sofortigen Aktionen unterschiedlich ist, je nachdem, ob das Gerät reagieren konnte oder nicht.
Reagieren auf Gerätedaten
IoT Hub ermöglicht es Ihnen, den Nutzen Ihrer Gerätedaten bei anderen Azure-Diensten zu erhöhen, sodass Sie zur vorhersagbaren Problemlösung (statt zur reaktiven Verwaltung) wechseln können. Verbinden Sie Ihren IoT Hub mit anderen Azure-Diensten, um Machine Learning, Analysen und KI durchzuführen, auf Echtzeitdaten zu reagieren, die Verarbeitung zu optimieren und tiefere Erkenntnisse zu gewinnen.
Hinweis
Azure IoT Hub speichert Kundendaten nicht außerhalb der Geografie, in der Sie die Dienstinstanz bereitstellen. Weitere Informationen finden Sie unter Regionsübergreifende Replikation in Azure.
Integrierter Endpunkt sammelt Gerätedaten standardmäßig
Ein integrierter Endpunkt sammelt standardmäßig Daten von Ihrem Gerät. Die Daten werden mithilfe eines „Anforderung/Antwort“-Musters über dedizierte IoT-Geräteendpunkte gesammelt, stehen für eine maximale Dauer von sieben Tagen zur Verfügung und können verwendet werden, um Aktionen auf einem Gerät durchzuführen. Dies sind die Daten, die vom Geräteendpunkt akzeptiert werden:
- Senden von Gerät-an-Cloud-Nachrichten.
- Empfangen von Cloud-an-Gerät-Nachrichten.
- Einleiten von Dateiuploads.
- Abrufen und Aktualisieren der Eigenschaften von Gerätezwillingen.
- Empfangen von Anforderungen direkter Methoden.
Weitere Informationen zu IoT Hub-Endpunkten finden Sie unter IoT Hub Dev Guide Endpoints (Entwicklungsleitfaden für IoT – Endpunkte).
Nachrichtenrouting sendet Daten an andere Endpunkte
Daten können zur Weiterverarbeitung auch an andere Dienste weitergeleitet werden. Mit der Aufskalierung der IoT-Lösung können auch die Anzahl der Geräte, die Menge von Ereignissen, die Vielfalt von Ereignissen und verschiedene Dienste variieren. Eine flexible, skalierbare, konsistente und zuverlässige Methode für das Routing von Ereignissen ist für dieses Muster erforderlich. Sobald eine Nachrichtenroute erstellt wurde, werden Daten nicht mehr an den integrierten Endpunkt übertragen – es sei denn, dass eine Fallbackroute konfiguriert wurde. Ein Tutorial mit mehreren Verwendungsmöglichkeiten des Nachrichtenroutings finden Sie im Tutorial zum Routing.
IoT Hub unterstützt das Einrichten benutzerdefinierter Endpunkte für verschiedene vorhandene Azure-Dienste wie Storage-Container, Event Hubs, Service Bus-Warteschlangen, Service Bus-Themen und Cosmos DB. Nachdem der Endpunkt eingerichtet wurde, können Sie Ihre IoT-Daten an einen dieser Endpunkte weiterleiten, um Downstreamdatenvorgänge auszuführen.
IoT Hub lässt sich auch in Event Grid integrieren, wodurch es Ihnen ermöglicht wird, Daten an mehrere Abonnenten aufzufächern. Event Grid ist ein vollständig verwalteter Ereignisdienst, mit dem Sie Ereignisse über viele verschiedene Azure-Dienste und -Anwendungen hinweg problemlos verwalten können. Entwickelt im Hinblick auf Leistung und Skalierung vereinfacht er das Erstellen ereignisgesteuerter Anwendungen und serverloser Architekturen. Die Unterschiede zwischen Nachrichtenrouting und der Nutzung von Event Grid werden im Vergleich zwischen Nachrichtenrouting und Event Grid erläutert.
Nächste Schritte
Um eine umfassende IoT-Lösung zu testen, lesen Sie die Schnellstartanleitungen zu IoT Hub:
- Senden von Telemetriedaten von einem Gerät an IoT-Hub
- Senden von Telemetriedaten von einem IoT Plug & Play-Gerät an IoT Hub
- Schnellstart: Steuern eines mit einer IoT Hub-Instanz verbundenen Geräts
Weitere Informationen zu den Möglichkeiten, wie Sie IoT-Lösungen mit Azure IoT erstellen und bereitstellen können, finden Sie unter: