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.
Wichtige Konzepte von Jobs
Die folgenden Konzepte enthalten Details zu - AWS IoT Aufträgen und zum Erstellen und Bereitstellen von Aufträgen zur Ausführung von Remote-Vorgängen auf Ihren Geräten.
Grundkonzepte
Im Folgenden finden Sie grundlegende Konzepte, die Sie bei der Verwendung von - AWS IoT Aufträgen kennen müssen.
- Job
-
Ein Auftrag ist eine Remote-Operation, die an ein oder mehrere mit AWS IoT verbundene Geräte gesendet und dort ausgeführt werden. Sie können beispielsweise einen Auftrag definieren, der eine Reihe von Geräten anweist, eine Anwendung herunterzuladen und zu installieren oder Firmware-Updates auszuführen, einen Neustart vorzunehmen, die Zertifikate zu rotieren oder Remote-Fehlerbehebungsvorgänge auszuführen.
- Auftragsdokument
-
Um einen Auftrag zu erstellen, müssen Sie zunächst ein Auftragsdokument erstellen, das ist eine Beschreibung der Remote-Operationen, die von den Geräten ausgeführt werden sollen.
Auftragsdokumente sind UTF-8-kodierte JSON-Dokumente, die die Informationen enthalten, die Ihr Gerät für die Ausführung eines Auftrags benötigt. Ein Auftragsdokument enthält eine oder mehrere URLs, unter denen das Gerät ein Update oder andere Daten herunterladen kann. Das Auftragsdokument kann in einem Amazon S3-Bucket gespeichert sein oder inline in dem Befehl enthalten sein, der den Auftrag erstellt.
Tipp
Beispiele für Auftragsdokumente finden Sie im Beispiel job-agent.js
im AWS IoT SDK für JavaScript. - Ziel
-
Beim Anlegen eines Auftrags geben Sie eine Liste von Zielen an, nämlich die Geräte, die die Operationen ausführen sollen. Bei den Zielen kann es sich um Objekte und/oder Objektgruppen handeln. Der AWS IoT Jobs-Service sendet eine Nachricht an jedes Ziel, um es darüber zu informieren, dass ein Auftrag verfügbar ist.
- Bereitstellung
-
Nachdem Sie einen Auftrag erstellt haben, indem Sie das Auftragsdokument bereitgestellt und Ihre Zielliste angegeben haben, wird das Auftragsdokument dann auf den Remote-Zielgeräten bereitgestellt, für die Sie das Update durchführen möchten. Bei Snapshot-Aufträgen wird der Auftrag nach der Bereitstellung auf den Zielgeräten abgeschlossen. Bei kontinuierlichen Aufträgen wird ein Auftrag für eine Gruppe von Geräten bereitgestellt, sobald diese den Gruppen hinzugefügt werden.
- Auftragsausführung
-
Eine Auftragsausführung ist eine Instance eines Auftrags auf einem Zielgerät. Das Ziel startet eine Ausführung eines Auftrags durch Herunterladen des Auftragsdokuments. Anschließend führt es die im Dokument angegebenen Operationen aus und meldet seinen Fortschritt an AWS IoT. Eine Ausführungsnummer ist eine eindeutige Kennung einer Auftragsausführung auf einem bestimmten Ziel. Der AWS IoT Jobs-Service stellt Befehle bereit, um den Fortschritt einer Auftragsausführung auf einem Ziel und den Fortschritt eines Auftrags über alle Ziele hinweg zu verfolgen.
Auftragstypen, Konzepte
Die folgenden Konzepte können Ihnen helfen, mehr über die verschiedenen Arten von Aufträgen zu erfahren, die Sie mit AWS IoT Aufträgen erstellen können.
- Snapshot-Auftrag
-
Standardmäßig wird ein Auftrag an alle Ziele gesendet, die Sie bei der Erstellung des Auftrags angeben. Wenn diese Ziele den Auftrag abgeschlossen haben (oder melden, dass sie dazu nicht in der Lage sind), ist der Auftrag abgeschlossen.
- Kontinuierlicher Auftrag
-
Kontinuierliche Aufträge werden an alle Ziele gesendet, die Sie bei der Erstellung des Auftrags angeben. Er weiter ausgeführt und an alle neuen Geräten (Objekte) gesendet, die der Zielgruppe hinzugefügt werden. Beispiel: Ein kontinuierlicher Auftrag kann zum Onboarding und zur Aktualisierung von Geräten, die einer Gruppe hinzugefügt werden, verwendet werden. Sie können einen Auftrag kontinuierlich machen, indem Sie bei der Erstellung des Auftrags einen optionalen Parameter setzen.
Anmerkung
Wenn Sie Ihre IoT-Flotte mit dynamischen Objektgruppen ins Visier nehmen, empfehlen wir, kontinuierliche Aufträge anstelle von Snapshot-Aufträgen zu verwenden. Durch die Verwendung kontinuierlicher Aufträge erhalten Geräte, die der Gruppe beitreten, die Auftragsausführung auch dann, wenn der Auftrag erstellt wurde.
Vorsignierte URLs
Für einen sicheren, zeitlich begrenzten Zugriff auf Daten, die nicht im Auftragsdokument enthalten sind, können Sie vorsignierte Amazon S3-URLs verwenden. Platzieren Sie Ihre Daten in einen Amazon S3-Bucket und fügen einen Platzhalterlink zu den Daten in dem Auftragsdokument hinzu. Wenn AWS IoT Jobs eine Anforderung für das Auftragsdokument erhält, analysiert es das Auftragsdokument, indem es nach den Platzhalterlinks sucht, und ersetzt dann die Links durch vorsignierte Amazon S3-URLs.
Der Platzhalterlink hat das folgende Format:
${aws:iot:s3-presigned-url:https://s3.amazonaws.com/
bucket
/key
}
wobei bucket
der Name Ihres Buckets und key
das Objekt in dem Bucket ist, zu dem Sie die Verknüpfung herstellen.
In den Regionen Peking und Ningxia funktionieren vorsignierte URLs nur, wenn der Eigentümer der Ressource über eine ICP-Lizenz (Internet Content Provider) verfügt. Weitere Informationen finden Sie unter Amazon Simple Storage Service
Auftragskonfigurationskonzepte
Die folgenden Konzepte können Ihnen helfen, die Konfiguration von Aufträgen zu verstehen.
- Rollouts
-
Sie können angeben, wie schnell die Ziele über eine ausstehende Auftragsausführung benachrichtigt werden. Auf diese Weise können Sie einen schrittweisen Rollout erstellen, um Updates, Neustarts und andere Operationen besser zu verwalten. Sie können eine Rolloutkonfiguration erstellen, indem Sie entweder eine statische Rollout-Rate oder eine exponentielle Rollout-Rate verwenden. Verwenden Sie eine statische Rollout-Rate, um die maximale Anzahl von Auftragszielen festzulegen, die pro Minute informiert werden sollen.
Beispiele für die Festlegung von Rollout-Raten und weitere Informationen zur Konfiguration von Auftrags-Rollouts finden Sie unter. Konfigurationen für Auftrags-Rollout, Planung und Abbruch
- Planung
-
Auftragsplanung ermöglicht es Ihnen, den Rollout-Zeitraum eines Auftragsdokuments auf allen Geräten der Zielgruppe für kontinuierliche Aufträge und Snapshot-Aufträge zu planen. Darüber hinaus können Sie ein optionales Wartungsfenster einrichten, das bestimmte Daten und Uhrzeiten enthält, zu denen das Auftragsdokument im Rahmen eines Auftrags auf allen Geräten in der Zielgruppe bereitgestellt wird. Ein Wartungsfenster ist eine wiederkehrende Instance mit einer Häufigkeit von täglichen, wöchentlichen, monatlichen oder benutzerdefinierten Daten und Uhrzeiten, die bei der ersten Erstellung des Auftrags oder der Auftragsvorlage ausgewählt wurden. Nur fortlaufende Aufträge können so geplant werden, dass sie während eines Wartungsfensters einen Rollout durchführen.
Die Planung von Aufträgen ist spezifisch für Ihren Auftrag. Einzelne Auftragsausführungen können nicht geplant werden. Weitere Informationen finden Sie unter Konfigurationen für Auftrags-Rollout, Planung und Abbruch.
- Abbrechen
-
Sie können eine Reihe von Bedingungen für den Abbruch von Rollouts erstellen, wenn bestimmte von Ihnen angegebenen Kriterien erfüllt sind. Weitere Informationen finden Sie unter Konfigurationen für Auftrags-Rollout, Planung und Abbruch.
- Timeouts
-
Auftrags-Timeouts benachrichtigen Sie, wenn eine Auftragsbereitstellung für eine unerwartet lange Zeit im Status
IN_PROGRESS
stecken bleibt. Es gibt zwei Arten von Timern: Timer für „In Bearbeitung“ und Timer für „Schritt“. Wenn der AuftragIN_PROGRESS
ist, können Sie den Fortschritt Ihrer Auftragsbereitstellung überwachen und verfolgen.Rollouts und Abbruchkonfigurationen sind spezifisch für Ihren Auftrag, wohingegen die Timeout-Konfiguration spezifisch für eine Auftragsbereitstellung ist. Weitere Informationen finden Sie unter Timeout bei der Auftragsausführung und Wiederholungskonfigurationen.
- Wiederholversuche
-
Auftragswiederholungen ermöglichen es, die Auftragsausführung erneut zu versuchen, wenn ein Auftrag fehlschlägt, eine Zeitüberschreitung eintritt oder beides auftritt. Sie können über bis zu 10 Wiederholungsversuche für die Auftragsausführung verfügen. Sie können den Fortschritt Ihres Wiederholungsversuchs überwachen und verfolgen, ob die Auftragsausführung erfolgreich war.
Rollouts und Abbruchkonfigurationen sind spezifisch für Ihren Auftrag, während die Timeout- und Wiederholungs-Konfigurationen spezifisch für eine Auftragsausführung sind. Weitere Informationen finden Sie unter Timeout bei der Auftragsausführung und Wiederholungskonfigurationen.