Azure IoT-Referenzarchitektur

Functions
IoT Hub
IoT Device Provisioning
Stream Analytics
Digital Twins

Sie können benutzerdefinierte IoT-Lösungen erstellen, indem Sie Azure PaaS-Komponenten (Platform-as-a-Service) zusammenstellen, wie in diesem Artikel beschrieben. In diesem Artikel und im folgenden Diagramm werden Azure-Komponenten und -Dienste beschrieben, die von IoT-Lösungen häufig verwendet werden, aber keine Lösung verwendet alle diese Komponenten.

Aufbau

Diagramm der Architektur für IoT-Anwendungen mit Azure PaaS-Komponenten.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Workflow

Azure IoT-Lösungen umfassen:

  • Dinge, typischerweise Geräte, die Daten generieren.
  • Erkenntnisse, die Sie über die Daten gewinnen.
  • Aktionen, die Sie basierend auf Erkenntnissen ausführen.

Beispielsweise sendet ein Motor Temperaturdaten. Sie beurteilen anhand dieser Daten, ob der Motor wie erwartet funktioniert. Sie nutzen die Erkenntnisse über die Motorleistung, um den Wartungsplan zu priorisieren.

Geräte

Azure IoT unterstützt eine Vielzahl an Geräten, von Mikrocontrollern mit Azure RTOS und Azure Sphere bis hin zu Entwicklerboards wie MX Chip und Raspberry Pi. Azure IoT unterstützt auch Smart Server-Gateways, die benutzerdefinierten Code ausführen können. Geräte können eine lokale Verarbeitung über einen Dienst wie z. B. Azure IoT Edge durchführen oder einfach eine direkte Verbindung mit Azure herstellen, damit sie Daten an die IoT-Lösung senden und von ihr empfangen können.

Wenn Geräte mit der Cloud verbunden sind, gibt es mehrere Dienste, die bei der Datenerfassung helfen. Azure IoT Hub ist ein Cloudgatewaydienst, der zum sicheren Verbinden und Verwalten von Geräten genutzt werden kann. IoT Hub Device Provisioning Service (DPS) ermöglicht die Just-in-Time-Bereitstellung ohne Benutzereingriff, mit deren Hilfe Sie eine große Anzahl von Geräten sicher und skalierbar registrieren können. Azure Digital Twins ermöglicht virtuelle Modelle echter Systeme.

Einblicke

Sobald die Geräte mit der Cloud verbunden sind, können Sie ihre Daten verarbeiten und erkunden, um benutzerdefinierte Erkenntnisse über ihre Umgebung zu erhalten. Allgemein betrachtet gibt es drei Möglichkeiten zum Verarbeiten von Daten: „heißer Pfad“ (Hot Path), „warmer Pfad“ (Warm Path) und „kalter Pfad“ (Cold Path). Die Pfade unterscheiden sich in ihren Anforderungen an Latenzzeit und Datenzugriff.

  • Der heiße Pfad analysiert Daten nahezu in Echtzeit, während sie eintreffen. Im heißen Pfad müssen Telemetriedaten mit sehr geringer Wartezeit verarbeitet werden. Der heiße Pfad verwendet in der Regel eine Engine zur Streamverarbeitung. Erwägen Sie den Einsatz von Diensten wie Azure Stream Analytics oder Azure HDInsight. Die Ausgabe kann eine Warnung auslösen oder in ein strukturiertes Format geschrieben werden, das mit Analysetools abgefragt werden kann.
  • Der warme Pfad analysiert Daten, die längere Verzögerungen bei einer detaillierteren Verarbeitung einkalkulieren können. Erwägen Sie Azure Data Explorer zum Speichern und Analysieren großer Datenmengen.
  • Der kalte Pfad führt eine Batchverarbeitung in längeren Intervallen aus, z. B. stündlich oder täglich. Der kalte Pfad wird normalerweise für große Datenmengen verwendet, die in Azure Data Lake gespeichert werden können. Die Ergebnisse müssen nicht so zeitnah wie beim heißen oder warmen Pfad vorliegen. Erwägen Sie die Verwendung von Azure Machine Learning oder Azure Databricks zum Analysieren kalter Daten.

Aktionen

Mithilfe der aus Ihren Daten gewonnenen Erkenntnisse können Sie Ihre Umgebung verwalten und steuern. Maßnahmen zur Geschäftsintegration könnten Folgendes umfassen:

  • Speichern von Informationsmeldungen
  • Auslösen von Warnungen
  • Senden von E-Mails oder SMS-Nachrichten
  • Integration mit Geschäftsanwendungen wie Customer Relationship Management (CRM) und Enterprise Resource Planning (ERP)

Sie können die folgenden Dienste für die Verwaltung und Geschäftsintegration nutzen:

  • Power BI stellt eine Verbindung mit Ihren Daten her, modelliert und visualisiert sie. Mit Power BI können Sie gemeinsam an Daten arbeiten und mittels künstlicher Intelligenz datengesteuerte Entscheidungen treffen.
  • Azure Maps erstellt standortbezogene Web- und Mobilanwendungen unter Verwendung von Geodaten-APIs, SDKs und Diensten für Suche, Karten, Routing, Tracking und Verkehr.
  • Azure Cognitive Search stellt einen Suchdienst für verschiedene Inhaltstypen zur Verfügung. Dazu gehören Funktionen für Indizierung, KI-Anreicherung und Abfrage.
  • Azure API Management stellt einen zentralen Ort zum Verwalten aller Ihrer APIs zur Verfügung.
  • Azure App Service stellt Webanwendungen bereit, die entsprechend den Anforderungen Ihres Unternehmens skaliert werden können.
  • Azure Mobile Apps erstellt plattformübergreifende und native Apps für iOS, Android, Windows oder Mac.
  • Dynamics 365 kombiniert CRM und ERP in der Cloud.
  • Microsoft Power Automate (Microsoft Flow) ist ein SaaS-Angebot zur Automatisierung von Workflows in Anwendungen und anderen SaaS-Diensten.
  • Azure Logic Apps erstellt und automatisiert Workflows, die Ihre Anwendungen, Daten, Dienste und Systeme integrieren.

Azure bietet außerdem verschiedene Dienste, die Sie dabei unterstützen, Ihre gesamte IoT-Lösung zu überwachen und zu schützen. Zu den Diagnosediensten gehört Azure Monitor. Mithilfe von Sicherheitsdiensten wie Azure Active Directory (Azure AD) und Microsoft Defender für IoT können Sie Sicherheitseinstellungen, Bedrohungserkennung und die Reaktion auf Bedrohungen steuern, anzeigen und verwalten.

Komponenten

Überlegungen

Diese Überlegungen setzen die Säulen des Azure Well-Architected Framework um, das eine Reihe von Leitprinzipien enthält, die zur Verbesserung der Qualität eines Workloads verwendet werden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

Verwaltbarkeit

Sie können Azure Digital Twins verwenden, um verbundene Umgebungen zu steuern und zu überwachen. Ein digitaler Zwilling ist ein virtuelles Modell einer realen Umgebung, das mit Daten aus Geschäftssystemen und IoT-Geräten gesteuert wird. Unternehmen und Organisationen nutzen Digital Twins, um Erkenntnisse zu gewinnen und Aktionen zu ermöglichen. Entwickler und Architekten nutzen Digital Twins-Lösungen, um intelligente und vernetzte Umgebungen zu realisieren, wie z. B.:

  • Predictive Maintenance in der Fertigung
  • Transparenz in der Lieferkette
  • Intelligente Lagerregale für eine Bestandserfassung in Echtzeit
  • Vernetzte Häuser und intelligente Gebäude

Zuverlässigkeit

Zuverlässigkeit stellt sicher, dass Ihre Anwendung Ihre Verpflichtungen gegenüber den Kunden erfüllen kann. Weitere Informationen finden Sie in der Übersicht über die Säule „Zuverlässigkeit“.

Ein wichtiger Aspekt bei robusten IoT-Lösungen sind Geschäftskontinuität und Notfallwiederherstellung. Der Entwurf für Hochverfügbarkeit (High Availability, HA) und Notfallwiederherstellung (Disaster Recovery, DR) kann Ihnen beim Definieren und Erreichen der erforderlichen Betriebszeitziele für Ihre Lösung helfen.

Verschiedene Azure-Dienste bieten unterschiedliche Optionen für Redundanz und Failover, damit Sie die Betriebszeitziele einfacher erreichen können, die Ihren Geschäftszielen am besten entsprechen. Die Integration einer dieser Hochverfügbarkeits-/Notfallwiederherstellungsalternativen in Ihre IoT-Lösung erfordert eine sorgfältige Bewertung der folgenden Aspekte und ihrer Wichtigkeit:

  • Erforderliche Resilienz
  • Implementierungs- und Wartungsaufwand
  • Auswirkung von COGS (Cost Of Goods Sold, Umsatzkosten)

Dienstspezifische Leistungsinformationen finden Sie in der Dokumentation zu jedem Azure IoT-Dienst.

Sicherheit

Sicherheit bietet Schutz vor vorsätzlichen Angriffen und dem Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Übersicht über die Säule „Sicherheit“. Dieser Abschnitt enthält Überlegungen zum Erstellen sicherer Lösungen.

Zero Trust-Sicherheitsmodell

Zero Trust ist ein Sicherheitsmodell, bei dem davon ausgegangen wird, dass Sicherheitsverletzungen geschehen, und jeder Zugriffsversuch wird so behandelt, als ob er aus einem offenen Netzwerk stammt. Außerdem wird bei Zero Trust davon ausgegangen, dass Sie grundlegende Maßnahmen ergriffen haben, wie z. B. den Schutz von Identitäten und die Beschränkung des Zugriffs.

Die grundlegende Sicherheitsimplementierung umfasst die explizite Überprüfung von Benutzern, die Möglichkeit der Einsichtnahme in ihre Geräte und die Fähigkeit, dynamische Zugriffsentscheidungen mithilfe einer Risikoerkennung in Echtzeit zu treffen. Nachdem die Grundlagen geschaffen wurden, können Sie sich auf die folgenden Zero Trust-Anforderungen für IoT-Lösungen konzentrieren:

  • Verwenden Sie eine starke Identität zum Authentifizieren von Geräten.
  • Verwenden Sie den Zugriff mit den geringsten Berechtigungen, um den Auswirkungsbereich zu verringern.
  • Überwachen Sie die Geräteintegrität, um den Zugriff einzuschränken oder Geräte zur Wartung zu kennzeichnen.
  • Führen Sie Updates durch, damit die Geräte fehlerfrei bleiben.
  • Führen Sie eine Überwachung durch, um neue Bedrohungen zu erkennen und darauf zu reagieren.

Vertrauenswürdige und sichere Kommunikation

Alle Informationen, die mit einem Gerät ausgetauscht werden, müssen vertrauenswürdig sein. Sofern ein Gerät die folgenden Kryptografiefunktionen nicht unterstützt, sollte es auf lokale Netzwerke beschränkt werden, und die gesamte Kommunikation zwischen den Netzwerken sollte über ein Bereichsgateway geleitet werden:

  • Datenverschlüsselung und digitale Signaturen mit einem nachweislich sicheren, öffentlich analysierten und umfassend implementierten Verschlüsselungsalgorithmus für den symmetrischen Schlüssel.
  • Unterstützung für TLS 1.2 für TCP oder andere streambasierte Kommunikationspfade oder DTLS 1.2 für datagrammbasierte Kommunikationspfade. Die Unterstützung der Verarbeitung von X.509-Zertifikaten ist optional. Sie können die Verarbeitung von X.509-Zertifikaten durch den im Hinblick auf Computing und Übertragung effizienteren Modus mit vorinstallierten Schlüsseln für TLS ersetzen (dieser Modus kann mit Unterstützung für die AES- und SHA-2-Algorithmen implementiert werden).
  • Aktualisierbarer Schlüsselspeicher und Schlüssel pro Gerät. Bei jedem Gerät muss es eindeutige Schlüsseldaten oder Token geben, die es gegenüber dem System identifizieren. Die Geräte müssen den Schlüssel sicher auf dem Gerät speichern (z. B. mit einem sicheren Schlüsselspeicher). Das Gerät muss die Schlüssel oder Token in regelmäßigen Abständen oder reaktiv in Notfallsituationen (z. B. bei einer Systemverletzung) aktualisieren können.
  • Die Firmware und die Anwendungssoftware auf dem Gerät müssen Updates zur Reparatur erkannter Sicherheitsrisiken zulassen.

Viele Geräte sind zu eingeschränkt, um diese Anforderungen unterstützen zu können. In diesem Fall sollten Sie ein Bereichsgateway verwenden. Geräte stellen über ein lokales Netzwerk eine sichere Verbindung mit dem Bereichsgateway her, und das Gateway ermöglicht die sichere Kommunikation mit der Cloud.

Physische Manipulationssicherung

Zur Gewährleistung der Sicherheit, Integrität und Vertrauenswürdigkeit des gesamten Systems wird empfohlen, Geräte mit integrierten Features zum Schutz vor physischen Manipulationsversuchen zu verwenden.

Beispiel:

  • Nutzen Sie Mikrocontroller/Mikroprozessoren oder zusätzliche Hardware, die eine sichere Speicherung und Verwendung von kryptografischen Schlüsseldaten bieten, z. B. die Integration von TPM (Trusted Platform Module).
  • Im TPM sollten ein sicheres Startladeprogramm und sicheres Laden von Software verankert sein.
  • Verwenden Sie Sensoren zum Erkennen von Eindringversuchen und Versuchen zur Manipulation der Geräteumgebung mit Warnungen und potenzieller „digitaler Selbstzerstörung“ des Geräts.

Kostenoptimierung

Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.

Im Allgemeinen sollten Sie den Azure-Preisrechner verwenden, um Ihre Kosten zu ermitteln. Weitere Überlegungen finden Sie im Microsoft Azure Well-Architected Framework unter Grundsätze der Kostenoptimierung.

Effiziente Leistung

Leistungseffizienz ist die Fähigkeit Ihrer Workload, auf effiziente Weise eine den Anforderungen der Benutzer entsprechende Skalierung auszuführen. Weitere Informationen finden Sie unter Übersicht über die Säule „Leistungseffizienz“.

Erstellen Sie Ihre Lösung zur Bereitstellung im globalen Bereich. Für eine optimale Skalierbarkeit bauen Sie Ihre IoT-Anwendung aus einzelnen Diensten auf, die unabhängig voneinander skaliert werden können. In diesem Abschnitt werden Überlegungen zur Skalierbarkeit für verschiedene Azure-Dienste dargelegt.

IoT Hub

Jeder IoT Hub wird mit einer bestimmten Anzahl von Einheiten in einem bestimmten Tarif und auf einer bestimmten Skalierungsebene bereitgestellt. Der Tarif und die Anzahl von Einheiten bestimmen das maximale tägliche Kontingent von Nachrichten, die Geräte an den Hub senden können. Weitere Informationen finden Sie unter IoT Hub-Kontingente und -Drosselung. Sie können einen Hub ohne Unterbrechung bestehender Vorgänge hochskalieren.

Beachten Sie für IoT Hub die folgenden Skalierungsfaktoren:

  • Maximales tägliches Kontingent von Nachrichten, die an IoT Hub gesendet werden
  • Kontingent von verbundenen Geräten in einer IoT Hub-Instanz
  • Erfassungsdurchsatz, d. h. wie schnell Nachrichten von IoT Hub erfasst werden können
  • Verarbeitungsdurchsatz, d. h. wie schnell die eingehenden Nachrichten verarbeitet werden

IoT Hub partitioniert Gerätenachrichten automatisch auf Grundlage der Geräte-ID. Alle Nachrichten von einem bestimmten Gerät gelangen immer auf dieselbe Partition, eine einzelne Partition enthält jedoch Nachrichten von mehreren Geräten. Aus diesem Grund ist die Partitions-ID die Einheit der Parallelisierung.

Azure-Funktionen

Wenn Azure Functions Daten aus einem Azure Event Hubs-Endpunkt liest, gibt es eine maximale Anzahl von Funktionsinstanzen pro Event Hub-Partition. Die maximale Verarbeitungsrate hängt davon ab, wie schnell eine Funktionsinstanz die Ereignisse aus einer einzelnen Partition verarbeiten kann. Die Funktion sollte Nachrichten in Batches verarbeiten.

Stream Analytics

Stream Analytics-Aufträge lassen sich am besten skalieren, wenn sie an allen Punkten der Stream Analytics-Pipeline parallel ablaufen, von der Eingabe über die Abfrage bis zur Ausgabe. Bei einem vollständig parallelen Auftrag kann Stream Analytics die Arbeit auf mehrere Computeknoten aufteilen. Weitere Informationen finden Sie unter Nutzen der Parallelisierung von Abfragen in Azure Stream Analytics.

Beitragende

Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:

Hauptautor:

Andere Mitwirkende:

Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.

Nächste Schritte