View a markdown version of this page

Bereitstellen AWS IoT Greengrass Gruppen zu einem AWS IoT Greengrass core - AWS IoT Greengrass

Hinweis zum Ende des Supports: Am 7. Oktober 2026 AWS wird der Support für eingestellt. AWS IoT Greengrass Version 1 Nach dem 7. Oktober 2026 werden Sie nicht mehr auf die Ressourcen zugreifen können. AWS IoT Greengrass V1 Weitere Informationen finden Sie unter Migrieren von AWS IoT Greengrass Version 1.

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.

Bereitstellen AWS IoT Greengrass Gruppen zu einem AWS IoT Greengrass core

Verwenden Sie AWS IoT Greengrass Gruppen, um Entitäten in Ihrer Edge-Umgebung zu organisieren. Sie verwenden Gruppen auch, um zu steuern, wie die Entitäten in der Gruppe miteinander und mit den interagieren AWS Cloud. Beispielsweise werden nur die Lambda-Funktionen in der Gruppe für die lokale Ausführung bereitgestellt, und nur die Geräte in der Gruppe können über den lokalen MQTT-Server kommunizieren.

Eine Gruppe muss einen Core enthalten, bei dem es sich um ein AWS IoT Gerät handelt, auf dem die AWS IoT Greengrass Core-Software ausgeführt wird. Der Kern fungiert als Edge-Gateway und bietet AWS IoT Core Funktionen in der Edge-Umgebung. Abhängig von Ihren geschäftlichen Anforderungen können Sie auch die folgenden Entitäten zu einer Gruppe hinzufügen:

Sie verwalten Ihre Greengrass-Gruppe in AWS Cloud und stellen sie dann in einem Core bereit. Die Bereitstellung kopiert die Gruppenkonfiguration in die group.json-Datei auf dem Core-Gerät. Diese Datei befindet sich unter greengrass-root/ggc/deployments/group.

Cloud-Definition der Greengrass-Gruppe, die auf einem Core-Gerät bereitgestellt wird.
Anmerkung

Während einer Bereitstellung stoppt der Greengrass-Daemon-Prozess auf dem Core-Gerät und startet dann neu.

Bereitstellen von Gruppen aus der AWS IoT Konsole

Sie können eine Gruppe bereitstellen und ihre Bereitstellungen über die Konfigurationsseite der Gruppe in der AWS IoT Konsole verwalten.

Anmerkung

Um diese Seite in der Konsole zu öffnen, wählen Sie Greengrass-Geräte, dann Gruppen (V1) und dann unter Greengrass-Gruppen Ihre Gruppe aus.

Bereitstellen der aktuellen Version der Gruppe
  • Wählen Sie auf der Gruppenkonfigurationsseite Deploy aus.

Anzeigen des Bereitstellungsverlaufs der Gruppe

Der Bereitstellungsverlauf einer Gruppe enthält das Datum und die Uhrzeit, die Gruppenversion und den Status der einzelnen Bereitstellungsversuche.

  1. Wählen Sie auf der Gruppenkonfigurationsseite die Registerkarte Deployments aus.

  2. Um weitere Informationen zu einer Bereitstellung, einschließlich Fehlermeldungen, zu erhalten, wählen Sie in der AWS IoT Konsole unter Greengrass-Geräte die Option Deployments aus.

Erneutes Bereitstellen einer Gruppenbereitstellung

Sie können eine Bereitstellung erneut bereitstellen, wenn die aktuelle Bereitstellung fehlschlägt oder auf eine andere Gruppenversion zurückgesetzt wird.

  1. Wählen Sie in der AWS IoT Konsole Greengrass-Geräte und dann Groups (V1) aus.

  2. Wählen Sie die Registerkarte Bereitstellen.

  3. Wählen Sie die Bereitstellung aus, die Sie erneut bereitstellen möchten, und wählen Sie Erneut bereitstellen.

Zurücksetzen von Gruppenbereitstellungen

Sie können Gruppenbereitstellungen zurücksetzen, um eine Gruppe zu verschieben oder zu löschen oder Bereitstellungsinformationen zu entfernen. Weitere Informationen finden Sie unter Zurücksetzen von Bereitstellungen.

  1. Wählen Sie in der AWS IoT Konsole Greengrass-Geräte und dann Groups (V1) aus.

  2. Wählen Sie die Registerkarte Bereitstellen.

  3. Wählen Sie die Bereitstellung aus, die Sie zurücksetzen möchten, und wählen Sie Bereitstellungen zurücksetzen.

Bereitstellen von Gruppen mit dem AWS IoT Greengrass API

Die AWS IoT Greengrass API bietet die folgenden Aktionen zur Bereitstellung von AWS IoT Greengrass Gruppen und zur Verwaltung von Gruppenbereitstellungen. Sie können diese Aktionen über die AWS CLI AWS IoT Greengrass API oder das AWS SDK aufrufen.

Action Description

CreateDeployment

Erstellt eine NewDeployment- oder Redeployment-Bereitstellung.

Möglicherweise möchten Sie eine Bereitstellung erneut bereitstellen, wenn die aktuelle Bereitstellung fehlschlägt. Sie können auch eine erneute Bereitstellung durchführen, um eine andere Gruppenversion wiederherzustellen.

GetDeploymentStatus

Gibt den Status einer Bereitstellung zurück: Building, InProgress, Success oder Failure.

Sie können EventBridge Amazon-Ereignisse so konfigurieren, dass sie Bereitstellungsbenachrichtigungen erhalten. Weitere Informationen finden Sie unter Abrufen von Bereitstellungsbenachrichtigungen.

ListDeployments

Gibt den Bereitstellungsverlauf für die Gruppe zurück.

ResetDeployments

Setzt die Bereitstellungen für die Gruppe zurück.

Sie können Gruppenbereitstellungen zurücksetzen, um eine Gruppe zu verschieben oder zu löschen oder Bereitstellungsinformationen zu entfernen. Weitere Informationen finden Sie unter Zurücksetzen von Bereitstellungen.

Anmerkung

Weitere Informationen zu Massenbereitstellungsvorgängen finden Sie unter Erstellen von Sammelbereitstellungen für Gruppen.

Abrufen der Gruppen-ID

Die Gruppen-ID wird häufig in API-Aktionen verwendet. Sie können die ListGroups Aktion verwenden, um die ID der Zielgruppe aus Ihrer Gruppenliste zu ermitteln. Verwenden Sie AWS CLI beispielsweise in der den list-groups Befehl.

aws greengrass list-groups

Sie können auch die query-Option zum Filtern der Ergebnisse einschließen. Beispiel:

  • So rufen Sie die zuletzt erstellte Gruppe ab:

    aws greengrass list-groups --query "reverse(sort_by(Groups, &CreationTimestamp))[0]"
  • So rufe Sie eine Gruppe anhand des Namens ab:

    aws greengrass list-groups --query "Groups[?Name=='MyGroup']"

    Gruppennamen müssen nicht eindeutig sein, sodass mehrere Gruppen zurückgegeben werden können.

Nachfolgend finden Sie eine list-groups-Beispielantwort. Die Informationen für jede Gruppe beinhalten die ID der Gruppe (in der Id-Eigenschaft) und die ID der letzten Gruppenversion (in der LatestVersion-Eigenschaft). Um andere Versions-IDs für eine Gruppe abzurufen, verwenden Sie die Gruppen-ID mit ListGroupVersions.

Anmerkung

Sie können diese Werte auch in der AWS IoT Konsole finden. Die Gruppen-ID wird auf der Seite Einstellungen der Gruppe angezeigt. Die Versions-IDs der Gruppe werden auf der Registerkarte „Bereitstellungen“ der Gruppe angezeigt.

{ "Groups": [ { "LatestVersionArn": "arn:aws:us-west-2:123456789012:/greengrass/groups/00dedaaa-ac16-484d-ad77-c3eedEXAMPLE/versions/4cbc3f07-fc5e-48c4-a50e-7d356EXAMPLE", "Name": "MyFirstGroup", "LastUpdatedTimestamp": "2019-11-11T05:47:31.435Z", "LatestVersion": "4cbc3f07-fc5e-48c4-a50e-7d356EXAMPLE", "CreationTimestamp": "2019-11-11T05:47:31.435Z", "Id": "00dedaaa-ac16-484d-ad77-c3eedEXAMPLE", "Arn": "arn:aws:us-west-2:123456789012:/greengrass/groups/00dedaaa-ac16-484d-ad77-c3eedEXAMPLE" }, { "LatestVersionArn": "arn:aws:us-west-2:123456789012:/greengrass/groups/036ceaf9-9319-4716-ba2a-237f9EXAMPLE/versions/8fe9e8ec-64d1-4647-b0b0-01dc8EXAMPLE", "Name": "GreenhouseSensors", "LastUpdatedTimestamp": "2020-01-07T19:58:36.774Z", "LatestVersion": "8fe9e8ec-64d1-4647-b0b0-01dc8EXAMPLE", "CreationTimestamp": "2020-01-07T19:58:36.774Z", "Id": "036ceaf9-9319-4716-ba2a-237f9EXAMPLE", "Arn": "arn:aws:us-west-2:123456789012:/greengrass/groups/036ceaf9-9319-4716-ba2a-237f9EXAMPLE" }, ... ] }

Wenn Sie keine angeben AWS-Region, verwenden AWS CLI Befehle die Standardregion aus Ihrem Profil. Um Gruppen in einer anderen Region zurückzugeben, fügen Sie die region Option hinzu. Beispiel:

aws greengrass list-groups --region us-east-1

Überblick über AWS IoT Greengrass Gruppenobjektmodell

Bei der Programmierung mit der AWS IoT Greengrass API ist es hilfreich, das Greengrass-Gruppenobjektmodell zu verstehen.

Gruppen

In der AWS IoT Greengrass API besteht das Group Objekt der obersten Ebene aus Metadaten und einer Liste von GroupVersion Objekten. GroupVersionObjekte sind einer Group By-ID zugeordnet.

Ein Diagramm einer Gruppe, das aus Metadaten und einer Liste von Gruppenversionen besteht.

Gruppenversionen

GroupVersion-Objekte definieren die Gruppenmitgliedschaft. Jede GroupVersion verweist auf eine CoreDefinitionVersion und andere Komponentenversionen nach ARN. Diese Referenzen bestimmen, welche Entitäten in die Gruppe aufgenommen werden sollen.

Ein Diagramm einer Gruppenversion, die nach ARN auf andere Versionstypen verweist.

Um beispielsweise drei Lambda-Funktionen, ein Gerät und zwei Abonnements in die Gruppe aufzunehmen, sind die GroupVersion Verweise:

  • Die CoreDefinitionVersion, die den erforderlichen Core enthält.

  • Die FunctionDefinitionVersion, die die drei Funktionen enthält.

  • DasDeviceDefinitionVersion, das das Client-Gerät enthält.

  • Die SubscriptionDefinitionVersion, die die beiden Abonnements enthält.

Die für ein Core-Gerät bereitgestellte GroupVersion bestimmt die Entitäten, die in der lokalen Umgebung verfügbar sind, und wie sie interagieren können.

Gruppenkomponenten

Komponenten, die Sie Gruppen hinzufügen, haben eine dreistufige Hierarchie:

  • Eine Definition, die auf eine Liste von DefinitionVersion Objekten eines bestimmten Typs verweist. Beispielsweise verweist eine DeviceDefinition auf eine Liste von DeviceDefinitionVersion-Objekten.

  • A DefinitionVersion, die eine Reihe von Entitäten eines bestimmten Typs enthält. Eine DeviceDefinitionVersion enthält beispielsweise eine Liste von Device-Objekten.

  • Einzelne Entitäten, die ihre Eigenschaften und Verhalten definieren. A Device definiert beispielsweise den ARN des entsprechenden Client-Geräts in der AWS IoT Registrierung, den ARN seines Gerätezertifikats und ob sein lokaler Shadow automatisch mit der Cloud synchronisiert wird.

    Sie können einer Gruppe die folgenden Arten von Entitäten hinzufügen:

Das folgende Beispiel einer DeviceDefinition verweist auf drei DeviceDefinitionVersion-Objekte, die jeweils mehrere Device-Objekte enthalten. Es wird nur jeweils eine DeviceDefinitionVersion in einer Gruppe verwendet.

Ein Diagramm einer Gerätehierarchie, die aus DeviceDefinition DeviceDefinitionVersion, und Geräteobjekten besteht.

Aktualisieren von Gruppen

In der AWS IoT Greengrass API verwenden Sie Versionen, um die Konfiguration einer Gruppe zu aktualisieren. Versionen sind unveränderlich. Um Gruppenkomponenten hinzuzufügen, zu entfernen oder zu ändern, müssen Sie DefinitionVersion Objekte erstellen, die neue oder aktualisierte Entitäten enthalten.

Sie können neue DefinitionVersions Objekte neuen oder vorhandenen Definitionsobjekten zuordnen. Sie können beispielsweise die CreateFunctionDefinition-Aktion verwenden, um eine FunctionDefinition zu erstellen, die die FunctionDefinitionVersion als anfängliche Version enthält. Sie können auch die CreateFunctionDefinitionVersion-Aktion verwenden und auf eine vorhandene FunctionDefinition verweisen.

Nachdem Sie Ihre Gruppenkomponenten erstellt haben, erstellen Sie eineGroupVersion, die alle DefinitionVersion Objekte enthält, die Sie in die Gruppe aufnehmen möchten. Stellen Sie anschließend die GroupVersion bereit.

Um eine GroupVersion bereitzustellen, muss sie auf eine CoreDefinitionVersion verweisen, die genau einen Core enthält. Alle referenzierten Entitäten müssen Mitglieder der Gruppe sein. Außerdem muss Ihnen in dem Land, AWS-Konto in AWS-Region dem Sie den bereitstellen, eine Greengrass-Servicerolle zugeordnet sein. GroupVersion

Anmerkung

Die Update-Aktionen in der API werden verwendet, um den Namen einer Group oder eines Komponentendefinitionsobjekts zu ändern.

Entitäten aktualisieren, die auf Ressourcen verweisen AWS

Greengrass Lambda-Funktionen und geheime Ressourcen definieren Greengrass-specific Eigenschaften und verweisen auch auf entsprechende AWS Ressourcen. Um diese Entitäten zu aktualisieren, können Sie anstelle Ihrer Greengrass-Objekte Änderungen an der entsprechenden AWS Ressource vornehmen. Lambda-Funktionen verweisen beispielsweise auf eine Funktion in der Greengrass-Gruppe AWS Lambda und definieren auch den Lebenszyklus und andere Eigenschaften, die spezifisch für die Greengrass-Gruppe sind.

  • Um den Lambda-Funktionscode oder die Paketabhängigkeiten zu aktualisieren, nehmen Sie Ihre Änderungen in vor. AWS Lambda Bei der nächsten Gruppenbereitstellung werden diese Änderungen aus Ihrer lokalen Umgebung abgerufen AWS Lambda und in diese kopiert.

  • Um Greengrass-specific Eigenschaften zu aktualisieren, erstellen Sie eineFunctionDefinitionVersion, die die aktualisierten Function Eigenschaften enthält.

Anmerkung

Greengrass-Lambda-Funktionen können anhand des Alias-ARN oder der Versions-ARN auf eine Lambda-Funktion verweisen. Wenn Sie auf den Alias-ARN verweisen (empfohlen), müssen Sie Ihre FunctionDefinitionVersion (oder SubscriptionDefinitionVersion) nicht aktualisieren, wenn Sie eine neue Funktionsversion in AWS Lambda veröffentlichen. Weitere Informationen finden Sie unter Lambda-Funktionen nach Alias oder Version referenzieren.

Weitere Informationen finden Sie auch unter