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.
AWS IoT Device Defender
Die AWS IoT Device Defender Komponente (aws.greengrass.DeviceDefender
) benachrichtigt Administratoren über Änderungen im Status der Greengrass-Core-Geräte. Dies kann helfen, ungewöhnliches Verhalten zu erkennen, das auf ein gefährdetes Gerät hinweisen könnte. Weitere Informationen finden Sie unter AWS IoT Device Defender im AWS IoT Core
-Entwicklerhandbuch.
Diese Komponente liest Systemmetriken auf dem Kerngerät. Anschließend veröffentlicht sie die Metriken auf AWS IoT Device Defender. Weitere Informationen zum Lesen und Interpretieren der von dieser Komponente gemeldeten Metriken finden Sie in der Dokumentspezifikation für Gerätemetriken im AWS IoT Core Entwicklerhandbuch.
Diese Komponente bietet ähnliche Funktionen wie der Device Defender-Connector in AWS IoT Greengrass V1. Weitere Informationen finden Sie unter Device Defender-Connector im AWS IoT Greengrass V1 Entwicklerhandbuch.
Versionen
Diese Komponente hat die folgenden Versionen:
Informationen zu den Änderungen in den einzelnen Versionen der Komponente finden Sie im Changelog.
Typ
- v3.x
-
Diese Komponente ist eine generische Komponente (aws.greengrass.generic
). Der Greengrass-Kern führt die Lebenszyklusskripte der Komponente aus.
- v2.x
-
Diese Komponente ist eine Lambda-Komponente (aws.greengrass.lambda
). Der Greengrass-Kern führt die Lambda-Funktion dieser Komponente mithilfe der Lambda-Launcher-Komponente aus.
Weitere Informationen finden Sie unter Komponententypen.
Betriebssystem
- v3.x
-
Diese Komponente kann auf Kerngeräten installiert werden, auf denen die folgenden Betriebssysteme ausgeführt werden:
- v2.x
-
Diese Komponente kann nur auf Linux-Kerngeräten installiert werden.
Voraussetzungen
Für diese Komponente gelten die folgenden Anforderungen:
- v3.x
-
-
Python-Version 3.7 wurde auf dem Core-Gerät installiert und zur PATH Umgebungsvariablen hinzugefügt.
-
AWS IoT Device Defender konfiguriert, um die Erkennungsfunktion zur Überwachung von Verstößen zu verwenden. Weitere Informationen finden Sie unter Detect im AWS IoT Core Entwicklerhandbuch.
- v2.x
-
-
Ihr Kerngerät muss die Anforderungen für die Ausführung von Lambda-Funktionen erfüllen. Wenn Sie möchten, dass das Kerngerät containerisierte Lambda-Funktionen ausführt, muss das Gerät die entsprechenden Anforderungen erfüllen. Weitere Informationen finden Sie unter Anforderungen an die Lambda-Funktion.
-
Python-Version 3.7 wurde auf dem Core-Gerät installiert und zur PATH Umgebungsvariablen hinzugefügt.
-
AWS IoT Device Defender konfiguriert, um die Erkennungsfunktion zur Überwachung von Verstößen zu verwenden. Weitere Informationen finden Sie unter Detect im AWS IoT Core Entwicklerhandbuch.
-
Die Psutil-Bibliothek ist auf dem Core-Gerät installiert. Version 5.7.0 ist die neueste Version, von der bestätigt wurde, dass sie mit der Komponente funktioniert.
-
Die auf dem Kerngerät installierte CBOR-Bibliothek. Version 1.0.0 ist die neueste Version, von der bestätigt wurde, dass sie mit der Komponente funktioniert.
-
Um Ausgabedaten von dieser Komponente zu erhalten, müssen Sie bei der Bereitstellung dieser Komponente das folgende Konfigurationsupdate für die ältere Abonnement-Router-Komponente (aws.greengrass.LegacySubscriptionRouter
) zusammenführen. Diese Konfiguration gibt das Thema an, zu dem diese Komponente Antworten veröffentlicht.
Legacy subscription router v2.1.xLegacy subscription router v2.0.x
- Legacy subscription router v2.1.x
{
"subscriptions": {
"aws-greengrass-device-defender": {
"id": "aws-greengrass-device-defender",
"source": "component:aws.greengrass.DeviceDefender",
"subject": "$aws/things/+/defender/metrics/json",
"target": "cloud"
}
}
}
- Legacy subscription router v2.0.x
{
"subscriptions": {
"aws-greengrass-device-defender": {
"id": "aws-greengrass-device-defender",
"source": "arn:aws:lambda:region
:aws:function:aws-greengrass-device-defender:version
",
"subject": "$aws/things/+/defender/metrics/json",
"target": "cloud"
}
}
}
-
Ersetzen region
mit dem AWS-Region , das Sie verwenden.
-
Ersetzen version
mit der Version der Lambda-Funktion, die diese Komponente ausführt. Um die Version der Lambda-Funktion zu finden, müssen Sie sich das Rezept für die Version dieser Komponente ansehen, die Sie bereitstellen möchten. Öffnen Sie die Detailseite dieser Komponente in der AWS IoT Greengrass Konsole und suchen Sie nach dem Schlüssel-Wert-Paar der Lambda-Funktion. Dieses Schlüssel-Wert-Paar enthält den Namen und die Version der Lambda-Funktion.
Sie müssen die Lambda-Funktionsversion auf dem Legacy-Abonnement-Router jedes Mal aktualisieren, wenn Sie diese Komponente bereitstellen. Dadurch wird sichergestellt, dass Sie die richtige Lambda-Funktionsversion für die Komponentenversion verwenden, die Sie bereitstellen.
Weitere Informationen finden Sie unter Erstellen von Bereitstellungen.
Abhängigkeiten
Wenn Sie eine Komponente bereitstellen, stellt sie AWS IoT Greengrass auch kompatible Versionen ihrer Abhängigkeiten bereit. Das bedeutet, dass Sie die Anforderungen für die Komponente und all ihre Abhängigkeiten erfüllen müssen, um die Komponente erfolgreich bereitstellen zu können. In diesem Abschnitt werden die Abhängigkeiten für die veröffentlichten Versionen dieser Komponente sowie die semantischen Versionseinschränkungen aufgeführt, die die Komponentenversionen für jede Abhängigkeit definieren. Sie können die Abhängigkeiten für jede Version der Komponente auch in der AWS IoT Greengrass Konsole anzeigen. Suchen Sie auf der Seite mit den Komponentendetails nach der Liste der Abhängigkeiten.
- 3.1.1
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 3.1.1 dieser Komponente aufgeführt.
- 3.0.0 - 3.0.2
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 3.0.0 bis 3.0.2 dieser Komponente aufgeführt.
- 2.0.12 - 2.0.16
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.16 dieser Komponente aufgeführt.
- 2.0.10 - 2.0.11
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 2.0.10 und 2.0.11 dieser Komponente aufgeführt.
- 2.0.9
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.9 dieser Komponente aufgeführt.
- 2.0.8
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.8 dieser Komponente aufgeführt.
- 2.0.7
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.7 dieser Komponente aufgeführt.
- 2.0.6
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.6 dieser Komponente aufgeführt.
- 2.0.5
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.5 dieser Komponente aufgeführt.
- 2.0.4
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.4 dieser Komponente aufgeführt.
- 2.0.3
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.3 dieser Komponente aufgeführt.
Weitere Informationen zu Komponentenabhängigkeiten finden Sie in der Referenz zu den Komponentenrezepten.
Konfiguration
Diese Komponente stellt die folgenden Konfigurationsparameter bereit, die Sie bei der Bereitstellung der Komponente anpassen können.
- v3.x
-
PublishRetryCount
-
Gibt an, wie oft die Veröffentlichung wiederholt wird. Diese Funktion ist in Version 3.1.1 verfügbar.
Das Minimum ist 0.
Das Maximum ist 72.
Standard: 5
SampleIntervalSeconds
-
(Optional) Die Zeitspanne in Sekunden zwischen den einzelnen Zyklen, in denen die Komponente Messwerte sammelt und meldet.
Die Mindestwert beträgt 300 Sekunden (5 Minuten).
Standard: 300 Sekunden
-
UseInstaller
-
(Optional) Boolescher Wert, der definiert, ob das Installationsskript in dieser Komponente verwendet werden soll, um die Abhängigkeiten dieser Komponente zu installieren.
Setzen Sie diesen Wert auf, false
wenn Sie ein benutzerdefiniertes Skript zum Installieren von Abhängigkeiten verwenden möchten oder wenn Sie Laufzeitabhängigkeiten in ein vorgefertigtes Linux-Image aufnehmen möchten. Um diese Komponente verwenden zu können, müssen Sie die folgenden Bibliotheken, einschließlich aller Abhängigkeiten, installieren und sie dem standardmäßigen Greengrass-Systembenutzer zur Verfügung stellen.
Wenn Sie Version 3.0.0 oder 3.0.1 dieser Komponente auf Kerngeräten verwenden, die Sie für die Verwendung eines HTTPS Proxys konfigurieren, müssen Sie diesen Wert auf setzen. false
Das Installationsskript unterstützt in diesen Versionen dieser Komponente keinen Betrieb hinter einem HTTPS Proxy.
Standard: true
- v2.x
-
Die Standardkonfiguration dieser Komponente umfasst Lambda-Funktionsparameter. Wir empfehlen, dass Sie nur die folgenden Parameter bearbeiten, um diese Komponente auf Ihren Geräten zu konfigurieren.
lambdaParams
-
Ein Objekt, das die Parameter für die Lambda-Funktion dieser Komponente enthält. Dieses Objekt enthält die folgenden Informationen:
EnvironmentVariables
-
Ein Objekt, das die Parameter der Lambda-Funktion enthält. Dieses Objekt enthält die folgenden Informationen:
PROCFS_PATH
-
(Optional) Der Pfad zum /proc
Ordner.
-
Um diese Komponente in einem Container auszuführen, verwenden Sie den Standardwert/host-proc
. Die Komponente wird standardmäßig in einem Container ausgeführt.
-
Um diese Komponente ohne Container-Modus auszuführen, geben Sie /proc
für diesen Parameter Folgendes an.
Standard: /host-proc
. Dies ist der Standardpfad, in dem diese Komponente den /proc
Ordner im Container mountet.
Diese Komponente hat nur Lesezugriff auf diesen Ordner.
SAMPLE_INTERVAL_SECONDS
-
(Optional) Die Zeitspanne in Sekunden zwischen den einzelnen Zyklen, in denen die Komponente Messwerte sammelt und meldet.
Die Mindestwert beträgt 300 Sekunden (5 Minuten).
Standard: 300 Sekunden
containerMode
-
(Optional) Der Containerisierungsmodus für diese Komponente. Wählen Sie aus den folgenden Optionen aus:
-
GreengrassContainer
— Die Komponente wird in einer isolierten Laufzeitumgebung innerhalb des AWS IoT Greengrass Containers ausgeführt.
-
NoContainer
— Die Komponente läuft nicht in einer isolierten Laufzeitumgebung.
Wenn Sie diese Option angeben, müssen Sie sie /proc
für die PROCFS_PATH
Umgebungsvariable angeben.
Standard: GreengrassContainer
containerParams
-
(Optional) Ein Objekt, das die Containerparameter für diese Komponente enthält. Die Komponente verwendet diese Parameter, wenn Sie GreengrassContainer
für angebencontainerMode
.
Dieses Objekt enthält die folgenden Informationen:
memorySize
-
(Optional) Die Speichermenge (in Kilobyte), die der Komponente zugewiesen werden soll.
Der Standardwert ist 50.000 KB.
pubsubTopics
-
(Optional) Ein Objekt, das die Themen enthält, in denen die Komponente den Empfang von Nachrichten abonniert. Sie können jedes Thema angeben und angeben, ob die Komponente MQTT Themen von AWS IoT Core oder lokale Themen zum Veröffentlichen/Abonnieren abonniert.
Dieses Objekt enthält die folgenden Informationen:
0
— Dies ist ein Array-Index als Zeichenfolge.
-
Ein Objekt, das die folgenden Informationen enthält:
type
-
(Optional) Der Typ der Veröffentlichungs-/Abonnementnachrichten, die diese Komponente zum Abonnieren von Nachrichten verwendet. Wählen Sie aus den folgenden Optionen aus:
-
PUB_SUB
— Abonnieren Sie lokale Veröffentlichen/Abonnement-Nachrichten. Wenn Sie diese Option wählen, darf das Thema keine Platzhalter enthalten. MQTT Weitere Informationen zum Senden von Nachrichten von einer benutzerdefinierten Komponente aus, wenn Sie diese Option angeben, finden Sie unterLokale Nachrichten veröffentlichen/abonnieren.
-
IOT_CORE
— AWS IoT Core MQTT Nachrichten abonnieren. Wenn Sie diese Option wählen, kann das Thema MQTT Platzhalter enthalten. Weitere Informationen zum Senden von Nachrichten aus benutzerdefinierten Komponenten, wenn Sie diese Option angeben, finden Sie unterNachrichten veröffentlichen/abonnieren AWS IoT Core MQTT.
Standard: PUB_SUB
topic
-
(Optional) Das Thema, das die Komponente abonniert, um Nachrichten zu empfangen. Wenn Sie IotCore
für angebentype
, können Sie in diesem MQTT Thema Platzhalter (+
und#
) verwenden.
Beispiel: Aktualisierung der Konfigurationszusammenführung (Containermodus)
{
"lambdaExecutionParameters": {
"EnvironmentVariables": {
"PROCFS_PATH": "/host_proc"
}
},
"containerMode": "GreengrassContainer"
}
Beispiel: Aktualisierung der Konfigurationszusammenführung (kein Container-Modus)
{
"lambdaExecutionParameters": {
"EnvironmentVariables": {
"PROCFS_PATH": "/proc"
}
},
"containerMode": "NoContainer"
}
Diese Komponente akzeptiert keine Nachrichten als Eingabedaten.
Ausgabedaten
Diese Komponente veröffentlicht Sicherheitsmetriken zu dem folgenden reservierten Thema für AWS IoT Device Defender. Diese Komponente ersetzt coreDeviceName
mit dem Namen des Kerngeräts, wenn es die Metriken veröffentlicht.
Thema (AWS IoT Core MQTT): $aws/things/coreDeviceName
/defender/metrics/json
Beispielausgabe
{
"header": {
"report_id": 1529963534,
"version": "1.0"
},
"metrics": {
"listening_tcp_ports": {
"ports": [
{
"interface": "eth0",
"port": 24800
},
{
"interface": "eth0",
"port": 22
},
{
"interface": "eth0",
"port": 53
}
],
"total": 3
},
"listening_udp_ports": {
"ports": [
{
"interface": "eth0",
"port": 5353
},
{
"interface": "eth0",
"port": 67
}
],
"total": 2
},
"network_stats": {
"bytes_in": 1157864729406,
"bytes_out": 1170821865,
"packets_in": 693092175031,
"packets_out": 738917180
},
"tcp_connections": {
"established_connections":{
"connections": [
{
"local_interface": "eth0",
"local_port": 80,
"remote_addr": "192.168.0.1:8000"
},
{
"local_interface": "eth0",
"local_port": 80,
"remote_addr": "192.168.0.1:8000"
}
],
"total": 2
}
}
}
}
Weitere Informationen zu den Metriken, die diese Komponente meldet, finden Sie im AWS IoT Core Entwicklerhandbuch in der Dokumentspezifikation für Gerätekennzahlen.
Lokale Protokolldatei
Diese Komponente verwendet die folgende Protokolldatei.
- Linux
-
/greengrass/v2
/logs/aws.greengrass.DeviceDefender.log
- Windows
-
C:\greengrass\v2
\logs\aws.greengrass.DeviceDefender.log
Um die Protokolle dieser Komponente einzusehen
Lizenzen
Diese Komponente wird im Rahmen der Greengrass Core Software-Lizenzvereinbarung veröffentlicht.
Änderungsprotokoll
In der folgenden Tabelle werden die Änderungen in den einzelnen Versionen der Komponente beschrieben.
- v3.x
-
Version
|
Änderungen
|
3.1.1
|
- Fehlerkorrekturen und Verbesserungen
-
-
Fügt Wiederholungsversuche für die Client-Verbindung hinzu, wenn die Verbindung nach einem Netzwerkausfall nicht wiederhergestellt werden kann.
-
Fügt einen konfigurierbaren Wiederholungsversuch für die Veröffentlichung von Messwerten hinzu.
|
3.1.0
|
- Fehlerkorrekturen und Verbesserungen
-
|
3.0.1
|
Behebt ein Problem mit der Berechnung von Deltawerten für Metriken durch die Komponente.
|
3.0.0
|
Diese Version ist nicht mehr verfügbar. Die Verbesserungen in dieser Version sind in späteren Versionen dieser Komponente verfügbar.
Erste Version
|
- v2.x
-
Version
|
Änderungen
|
2.0.16
|
Die Version wurde für die Version 2.13.0 von Greengrass Nucleus aktualisiert.
|
2.0.11
|
Die Version wurde für die Version 2.11.0 von Greengrass Nucleus aktualisiert.
|
2.0.10
|
Die Version wurde für die Version 2.7.0 von Greengrass Nucleus aktualisiert.
|
2.0.9
|
Die Version wurde für die Version 2.6.0 von Greengrass Nucleus aktualisiert.
|
2.0.8
|
Die Version wurde für die Version 2.5.0 von Greengrass Nucleus aktualisiert.
|
2.0.7
|
Die Version wurde für die Version 2.4.0 von Greengrass Nucleus aktualisiert.
|
2.0.6
|
Die Version wurde für die Version 2.3.0 von Greengrass Nucleus aktualisiert.
|
2.0.5
|
Die Version wurde für die Version 2.2.0 von Greengrass Nucleus aktualisiert.
|
2.0.4
|
Die Version wurde für die Version 2.1.0 von Greengrass Nucleus aktualisiert.
|
2.0.3
|
Erste Version
|