AWS IoT Greengrass Version 1 trat am 30. Juni 2023 in die erweiterte Lebensphase ein. Weitere Informationen finden Sie in der AWS IoT Greengrass V1 Wartungsrichtlinie. Nach diesem Datum AWS IoT Greengrass V1 werden keine Updates mehr veröffentlicht, die Funktionen, Verbesserungen, Bugfixes oder Sicherheitspatches bieten. Geräte, die auf laufen, werden AWS IoT Greengrass V1 nicht gestört und funktionieren weiterhin und stellen eine Verbindung zur Cloud her. Wir empfehlen Ihnen dringend, zu migrieren AWS IoT Greengrass Version 2, da dies wichtige neue Funktionen und Unterstützung für zusätzliche Plattformen bietet.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwalten von Daten-Streams auf dem AWS IoT Greengrass Core
AWS IoT GreengrassDer Stream-Manager macht es einfacher und zuverlässiger, hochvolumige IoT-Daten in dasAWS Cloudaus. Der Stream-Manager verarbeitet Daten-Streams lokal und exportiert diese inAWS Cloudautomatisch. Diese Funktion lässt sich in gängige Edge-Szenarien integrieren, z. B. Inferenz für maschinelles Lernen (ML), bei denen Daten lokal verarbeitet und analysiert werden, bevor sie in dasAWS Cloudoder lokale Lagerziele.
Der Stream-Manager vereinfacht die Anwendungsentwicklung. Ihre IoT-Anwendungen können einen standardisierten Mechanismus verwenden, um Datenstreams mit hohem Volumen zu verarbeiten und lokale Datenaufbewahrungsrichtlinien zu verwalten, anstatt benutzerdefinierte Funktionen für die Verwaltung von Streams zu erstellen. IoT-Anwendungen können Streams lesen und darin schreiben. Sie können Richtlinien für Speichertyp, Größe und Datenaufbewahrung pro Stream definieren, um zu steuern, wie der Stream-Manager Streams verarbeitet und exportiert.
Der Stream-Manager ist für den Einsatz in Umgebungen mit intermittierender oder eingeschränkter Konnektivität konzipiert. Sie können die Bandbreitenverwendung, das Timeoutverhalten und die Verarbeitung von Streamdaten definieren, wenn der Core verbunden oder getrennt ist. Für kritische Daten können Sie Prioritäten festlegen, um die Reihenfolge zu steuern, in der Streams in dasAWS Cloudaus.
Sie können automatische Exporte in dieAWS Cloudzur Lagerung oder Weiterverarbeitung und Analyse. Stream Manager unterstützt das Exportieren in FolgendesAWS CloudZiele.
Kanäle inAWS IoT Analyticsaus.AWS IoT Analyticsermöglicht es Ihnen, erweiterte Analysen Ihrer Daten durchzuführen, um Geschäftsentscheidungen zu treffen und Modelle für maschinelles Lernen zu verbessern. Weitere Informationen finden Sie unterWas ist ?AWS IoT Analytics?imAWS IoT Analytics-Benutzerhandbuchaus.
Streams in Kinesis Data Streams Kinesis Data Streams wird häufig verwendet, um Daten mit hohem Volumen zu aggregieren und in ein Data Warehouse oder einen Map-Reduce-Cluster zu laden. Weitere Informationen finden Sie unterWas ist Amazon Kinesis Data Streams?imEntwicklerhandbuch für Amazon Kinesisaus.
Komponenteneigenschaften inAWS IoT SiteWiseaus.AWS IoT SiteWiseermöglicht es Ihnen, Daten von Industrieanlagen skalierbar zu sammeln, zu organisieren und zu analysieren. Weitere Informationen finden Sie unterWas ist ?AWS IoT SiteWise?imAWS IoT SiteWise-Benutzerhandbuchaus.
Objekte in Amazon S3. Sie können Amazon S3 verwenden, um große Datenmengen zu speichern und abzurufen. Weitere Informationen finden Sie unterWas ist Amazon S3?imAmazon Simple Storage Service – Entwicklerhandbuchaus.
Stream-Management-Workflow
Ihre IoT-Anwendungen interagieren mit dem Stream-Manager über dasAWS IoT GreengrassCore-SDK In einem einfachen Workflow verbraucht eine benutzerdefinierte Lambda-Funktion, die auf dem Greengrass-Kern ausgeführt wird, IoT-Daten wie Temperatur- und Druckmetriken in Zeitreihen. Die Lambda-Funktion könnte die Daten filtern oder komprimieren und dann dasAWS IoT GreengrassCore-SDK, um die Daten in einen Stream im Stream-Manager zu schreiben. Der Stream-Manager kann den Stream in dieAWS Cloudautomatisch, basierend auf den für den Stream definierten Richtlinien. Benutzerdefinierte Lambda-Funktionen können Daten auch direkt an lokale Datenbanken oder Speicher-Repositorys senden.
Ihre IoT-Anwendungen können mehrere benutzerdefinierte Lambda-Funktionen enthalten, die Streams lesen oder darin schreiben. Diese lokalen Lambda-Funktionen können Streams lesen und darin schreiben, um Daten lokal zu filtern, zu aggregieren und zu analysieren. Dies ermöglicht es, schnell auf lokale Ereignisse zu reagieren und wertvolle Informationen zu extrahieren, bevor die Daten vom Core in die Cloud oder lokale Ziele übertragen werden.
Ein Beispielworkflow ist im folgenden Diagramm dargestellt.
Um den Stream-Manager zu verwenden, konfigurieren Sie zunächst Stream-Manager-Parameter, um Laufzeiteinstellungen auf Gruppenebene zu definieren, die für alle Streams im Greengrass-Kern gelten. Diese anpassbaren Einstellungen ermöglichen es Ihnen, zu steuern, wie der Stream-Manager Streams basierend auf Ihren geschäftlichen Anforderungen und Umgebungsbeschränkungen speichert, verarbeitet und exportiert. Weitere Informationen finden Sie unter Konfigurieren des AWS IoT Greengrass-Stream-Managers.
Nachdem Sie den Stream-Manager konfiguriert haben, können Sie Ihre IoT-Anwendungen erstellen und bereitstellen. Dies sind normalerweise benutzerdefinierte Lambda-Funktionen, die verwendenStreamManagerClient
imAWS IoT GreengrassCore-SDK, um Streams zu erstellen und mit ihnen zu interagieren. Während der Stream-Erstellung definiert die Lambda-Funktion Richtlinien pro Stream, z. B. Exportzielbereiche, Priorität und Persistenz. Für weitere Informationen, einschließlich Code-Snippets fürStreamManagerClient
Operationen, sieheVerwenden von StreamManagerClient um mit Streams zu arbeitenaus.
Informationen zu Tutorials, die einen einfachen Workflow konfigurieren, finden Sie unterExportieren von Daten-Streams inAWS Cloud(Konsole)oderExportieren von Daten-Streams inAWS Cloud(CLI)aus.
Voraussetzungen
Für die Verwendung des Stream-Managers gelten folgende Anforderungen:
-
Sie müssen verwendenAWS IoT GreengrassCore-Software v1.10 oder höher, wobei der Stream-Manager aktiviert ist. Weitere Informationen finden Sie unter Konfigurieren des AWS IoT Greengrass-Stream-Managers.
Der Stream-Manager wird auf nicht unterstützt OpenWrt -Verteilungen.
-
Die Java 8-Laufzeitumgebung (JDK 8) muss auf dem Core installiert sein.
-
Führen Sie für Debian-basierte Distributionen (einschließlich Raspbian) oder Ubuntu-basierte Distributionen den folgenden Befehl aus:
sudo apt install openjdk-8-jdk
-
Führen Sie für Red Hat-basierte Distributionen (einschließlich Amazon Linux) den folgenden Befehl aus:
sudo yum install java-1.8.0-openjdk
Weitere Informationen finden Sie unter How to download and install prebuilt OpenJDK packages
in der OpenJDK-Dokumentation.
-
-
Der Stream-Manager benötigt zusätzlich zu Ihrer AWS IoT Greengrass Core-Basissoftware mindestens 70 MB RAM. Ihr gesamter Speicherbedarf hängt von Ihrer Arbeitslast ab.
-
Benutzerdefinierte Lambda-Funktionen müssen dieAWS IoT GreengrassCore-SDKum mit dem Stream-Manager zu interagieren. DieAWS IoT GreengrassDas Core-SDK ist in mehreren Sprachen verfügbar, aber nur die folgenden Versionen unterstützen Stream-Manager-Operationen:
Java SDK (v1.4.0 oder höher)
Python SDK (v1.5.0 oder höher)
Node.js SDK (v1.6.0 oder höher)
Laden Sie die Version des SDK herunter, die Ihrer Lambda-Funktion -Laufzeit entspricht und fügen sie in das Bereitstellungspaket Ihrer Lambda-Funktion ein.
Anmerkung
DieAWS IoT GreengrassCore-SDK für Python benötigt Python 3.7 oder höher und hat andere Paketabhängigkeiten. Weitere Informationen finden Sie unterErstellen eines Bereitstellungspakets für die Lambda-Funktion (Konsole)oderErstellen eines Bereitstellungspakets für die Lambda-Funktion (CLI)aus.
-
Wenn du definierstAWS CloudExportziele für einen Stream, müssen Sie Ihre Exportziele erstellen und Zugriffsberechtigungen in der Greengrass-Gruppenrolle erteilen. Je nach Ziel können auch andere Anforderungen gelten. Weitere Informationen finden Sie unter:
Sie sind verantwortlich für die Aufrechterhaltung dieserAWS CloudRessourcen schätzen.
Datensicherheit
Beachten Sie bei der Verwendung des Stream-Managers die folgenden Sicherheitsüberlegungen.
Lokale Datensicherheit
AWS IoT Greengrass verschlüsselt keine Streamdaten, die sich im Ruhezustand befinden oder lokal zwischen Komponenten auf dem Core-Gerät übertragen werden.
Daten im Ruhezustand. Streamdaten werden lokal in einem Speicherverzeichnis im Greengrass-Kern gespeichert. Für die Datensicherheit verwendet AWS IoT Greengrass Unix-Dateiberechtigungen und Volldatenträgerverschlüsselung, sofern aktiviert. Sie können den optionalen Parameter STREAM_MANAGER_STORE_ROOT_DIR verwenden, um das Speicherverzeichnis anzugeben. Wenn Sie diesen Parameter später ändern, um ein anderes Speicherverzeichnis zu verwenden, löscht AWS IoT Greengrass das vorherige Speicherverzeichnis oder dessen Inhalt nicht.
Daten, die lokal übertragen werdenaus.AWS IoT Greengrassverschlüsselt Streamdaten bei der lokalen Übertragung auf dem Kern zwischen Datenquellen, Lambda-Funktionen,AWS IoT GreengrassCore-SDK und Stream-Manager.
Daten, die in das übertragen werdenAWS Cloudaus. Vom Stream-Manager exportierte Datenströme in dieAWS Cloudverwenden StandardAWSVerschlüsselung des Dienstclients mit Transport Layer Security (TLS)
Weitere Informationen finden Sie unter Datenverschlüsselung.
Client-Authentifizierung
Stream-Manager-Clients verwenden dasAWS IoT GreengrassCore-SDK für die Kommunikation mit dem Stream-Manager Wenn die Clientauthentifizierung aktiviert ist, können nur Lambda-Funktionen in der Greengrass-Gruppe mit Streams im Stream-Manager interagieren. Wenn die Clientauthentifizierung deaktiviert ist, kann jeder auf dem Greengrass Core ausgeführte Prozess (z. B. Docker-Container) mit Streams im Stream-Manager interagieren. Sie sollten die Authentifizierung nur deaktivieren, wenn Ihr Geschäftsfall dies erfordert.
Sie verwenden den Parameter STREAM_MANAGER_AUTHENTICATE_CLIENT, um den Clientauthentifizierungsmodus festzulegen. Sie können diesen Parameter über die Konsole oder AWS IoT Greengrass-API konfigurieren. Änderungen werden wirksam, nachdem die Gruppe bereitgestellt wurde.
Enabled | Disabled | |
---|---|---|
Parameterwert |
|
|
Zulässige Clients |
Benutzerdefinierte Lambda-Funktionen in der Greengrass-Gruppe |
Benutzerdefinierte Lambda-Funktionen in der Greengrass-Gruppe Andere Prozesse, die auf dem Greengrass Core-Gerät ausgeführt werden |