

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 können Sie nicht mehr auf die Ressourcen zugreifen. AWS IoT Greengrass V1 Weitere Informationen finden Sie unter [Migrieren von AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

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.

# Erste Schritte mit Greengrass-Konnektoren (CLI)
<a name="connectors-cli"></a>

Diese Funktion ist für AWS IoT Greengrass Core v1.7 und höher verfügbar.

Dieses Tutorial zeigt, wie Sie mit Konnektoren arbeiten. AWS CLI 

Verwenden Sie Konnektoren, um Ihren Entwicklungslebenszyklus zu beschleunigen. Konnektoren sind vorgefertigte, wiederverwendbare Module, die die Interaktion mit Services, Protokollen und Ressourcen erleichtern können. Sie können Ihnen helfen, die Geschäftslogik schneller auf Greengrass-Geräten zu implementieren. Weitere Informationen finden Sie unter [Integrieren von Services und Protokollen mit Greengrass-Konnektoren](connectors.md).

In diesem Tutorial konfigurieren und implementieren Sie den [Twilio Notifications](twilio-notifications-connector.md) Connector. Der Konnektor empfängt Twilio-Nachrichteninformationen als Eingangsdaten und löst dann eine Twilio-SMS aus. Der Datenfluss ist in der folgenden Abbildung dargestellt.

![\[Datenfluss von der Lambda-Funktion zum Twilio Notifications Connector zu Twilio.\]](http://docs.aws.amazon.com/de_de/greengrass/v1/developerguide/images/connectors/twilio-solution.png)


Nachdem Sie den Connector konfiguriert haben, erstellen Sie eine Lambda-Funktion und ein Abonnement.
+ Die Funktion wertet simulierte Daten eines Temperatursensors aus. Es veröffentlicht bedingt die Twilio-Nachrichteninformationen zu einem MQTT-Thema. Dies ist das Thema, dass der Konnektor abonniert hat.
+ Das Abonnement ermöglicht es der Funktion, zum Thema zu veröffentlichen, und dem Konnektor, die Daten vom Thema zu empfangen.

Der Twilio Notifications Connector benötigt ein Twilio-Authentifizierungstoken, um mit der Twilio-API zu interagieren. Das Token ist ein Geheimnis vom Typ Text, das in einer Gruppenressource erstellt AWS Secrets Manager und von dort aus referenziert wird. Dadurch kann AWS IoT Greengrass eine lokale Kopie des Secrets auf dem Greengrass-Core erstellt werden, wo es verschlüsselt und dem Connector zur Verfügung gestellt wird. Weitere Informationen finden Sie unter [Setzen Sie Geheimnisse bis ins AWS IoT Greengrass Mark ein](secrets.md).

Das Tutorial enthält die folgenden allgemeinen Schritte:

1. [Ein Secrets Manager Manager-Geheimnis erstellen](#connectors-cli-create-secret)

1. [Erstellen einer Ressourcendefinition und -version](#connectors-cli-create-resource-definition)

1. [Erstellen einer Konnektordefinition und -version](#connectors-cli-create-connector-definition)

1. [Erstellen Sie ein Bereitstellungspaket für Lambda-Funktionen](#connectors-cli-create-deployment-package)

1. [Erstellen einer Lambda-Funktion](#connectors-cli-create-function)

1. [Erstellen einer Funktionsdefinition und -version](#connectors-cli-create-function-definition)

1. [Erstellen einer Abonnementdefinition und -version](#connectors-cli-create-subscription-definition)

1. [Erstellen einer Gruppenversion](#connectors-cli-create-group-version)

1. [Eine Bereitstellung auswählen](#connectors-cli-create-deployment)

1. [Testen der Lösung](#connectors-cli-test-solution)

Für dieses Tutorial benötigen Sie ungefähr 30 Minuten.

**Mithilfe der API AWS IoT Greengrass **

Es ist hilfreich, die folgenden Muster zu verstehen, wenn Sie mit Greengrass-Gruppen und -Gruppenkomponenten arbeiten (z. B. die Konnektoren, Funktionen und Ressourcen in der Gruppe).
+ An der Spitze der Hierarchie befindet sich ein *Definition*-Objekt, das ein Container für *Version*-Objekte ist. Eine Version wiederum ist ein Container für die Konnektoren, Funktionen oder andere Komponententypen.
+ Wenn Sie im Greengrass Core bereitstellen, stellen Sie eine bestimmte Gruppenversion bereit. Eine Gruppenversion kann eine Version jeder Art von Komponente enthalten. Ein Core ist erforderlich, aber die anderen werden bei Bedarf einbezogen.
+ Versionen sind unveränderlich, daher müssen Sie neue Versionen anlegen, wenn Sie Änderungen vornehmen möchten. 

**Tipp**  
Wenn Sie bei der Ausführung eines AWS CLI Befehls eine Fehlermeldung erhalten, fügen Sie den `--debug` Parameter hinzu und führen Sie den Befehl erneut aus, um weitere Informationen zu dem Fehler zu erhalten.

Mit der AWS IoT Greengrass API können Sie mehrere Definitionen für einen Komponententyp erstellen. Beispielsweise können Sie jedes Mal, wenn Sie ein `FunctionDefinition`-Objekt erstellen, ein `FunctionDefinitionVersion` erstellen, oder Sie können neue Versionen zu einer bestehenden Definition hinzufügen. Diese Flexibilität ermöglicht es Ihnen, Ihr Versionsmanagementsystem individuell anzupassen.

## Voraussetzungen
<a name="connectors-cli-prerequisites"></a>

Zum Durchführen dieses Tutorials benötigen Sie Folgendes:
+ Eine Greengrass-Gruppe und ein Greengrass-Core (v1.9.3 oder höher). Weitere Informationen zum Erstellen einer Greengrass-Gruppe und Greengrass Core finden Sie unter [Erste Schritte mit AWS IoT Greengrass](gg-gs.md). Das Tutorial „Erste Schritte“ enthält auch die Schritte zur Installation der AWS IoT Greengrass -Core Software.
+ Python 3.7 ist auf dem AWS IoT Greengrass Core-Gerät installiert.
+  AWS IoT Greengrass muss so konfiguriert sein, dass es lokale Geheimnisse unterstützt, wie in [Secrets Requirements](secrets.md#secrets-reqs) beschrieben.
**Anmerkung**  
Diese Anforderung beinhaltet die Gewährung des Zugriffs auf Ihre Secrets Manager Manager-Geheimnisse. Wenn Sie die standardmäßige Greengrass-Servicerolle verwenden, ist Greengrass berechtigt, die Werte von Geheimnissen abzurufen, deren Namen mit *greengrass* - beginnen.
+ Eine Twilio-Konto-SID, ein Authent-Token und eine Twilio-aktivierte Telefonnummer. Nachdem Sie ein Twilio-Projekt erstellt haben, stehen diese Werte im Projekt-Dashboard zur Verfügung.
**Anmerkung**  
Sie können ein Twilio-Testkonto verwenden. Wenn Sie ein Testkonto verwenden, müssen Sie einer Liste verifizierter Telefonnummern hinzufügen, die keine Twilio-Empfänger sind. Weitere Informationen finden Sie unter [So arbeiten Sie mit Ihrem kostenlosen Twilio-Testkonto.](https://www.twilio.com/docs/usage/tutorials/how-to-use-your-free-trial-account)
+ AWS CLI auf Ihrem Computer installiert und konfiguriert. Weitere Informationen finden Sie [unter Installation AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) und [Konfiguration von AWS CLI im AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) *Benutzerhandbuch*.

   

  Die Beispiele in diesem Tutorial sind für Linux und andere Unix-basierte Systeme geschrieben. Wenn Sie Windows verwenden, finden Sie unter [Angeben von Parameterwerten für die](https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html) Informationen AWS Command Line Interface zu Unterschieden in der Syntax.

  Wenn der Befehl eine JSON-Zeichenkette enthält, zeigt das Tutorial ein Beispiel, das das JSON auf einer einzigen Zeile hat. Auf einigen Systemen ist es möglicherweise einfacher, Befehle in diesem Format zu bearbeiten und auszuführen.

## Schritt 1: Erstellen Sie ein Secrets Manager Manager-Geheimnis
<a name="connectors-cli-create-secret"></a>

In diesem Schritt verwenden Sie die AWS Secrets Manager API, um ein Geheimnis für Ihr Twilio-Authentifizierungstoken zu erstellen.

1. Erstellen Sie zunächst das Secret.
   + Ersetzen Sie es *twilio-auth-token* durch Ihr Twilio-Authentifizierungstoken.

   ```
   aws secretsmanager create-secret --name greengrass-TwilioAuthToken --secret-string twilio-auth-token
   ```
**Anmerkung**  
Standardmäßig ermöglicht AWS IoT Greengrass die Greengrass-Dienstrolle das Abrufen des Werts von Geheimnissen mit Namen, die mit *greengrass* - beginnen. Weitere Informationen finden Sie unter [Anforderungen für Secrets](secrets.md#secrets-reqs).

1. Kopieren Sie den `ARN` des Secrets aus der Ausgabe. Sie verwenden dies, um die geheime Ressource zu erstellen und den Twilio Notifications Connector zu konfigurieren.

## Schritt 2: Erstellen einer Ressourcendefinition und -version
<a name="connectors-cli-create-resource-definition"></a>

In diesem Schritt verwenden Sie die AWS IoT Greengrass API, um eine geheime Ressource für Ihr Secrets Manager-Geheimnis zu erstellen.

1. Erstellen Sie eine Ressourcendefinition, die eine Initialversion enthält.
   + *secret-arn*Ersetzen Sie es durch das Geheimnis, das Sie im vorherigen Schritt kopiert haben. `ARN`

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-resource-definition --name MyGreengrassResources --initial-version '{
       "Resources": [
           {
               "Id": "TwilioAuthToken",
               "Name": "MyTwilioAuthToken",
               "ResourceDataContainer": {
                   "SecretsManagerSecretResourceData": {
                       "ARN": "secret-arn"
                   }
               }
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-resource-definition \
   --name MyGreengrassResources \
   --initial-version '{"Resources": [{"Id": "TwilioAuthToken", "Name": "MyTwilioAuthToken", "ResourceDataContainer": {"SecretsManagerSecretResourceData": {"ARN": "secret-arn"}}}]}'
   ```

------

1. Kopieren Sie den `LatestVersionArn` der Ressourcendefinition aus der Ausgabe. Mit diesem Wert fügen Sie die Version der Ressourcendefinition der Gruppenversion hinzu, die Sie im Core bereitstellen.

## Schritt 3: Erstellen einer Konnektordefinition und -version
<a name="connectors-cli-create-connector-definition"></a>

In diesem Schritt konfigurieren Sie Parameter für den Twilio Notifications Connector.

1. Erstellen Sie eine Konnektordefinition mit einer Initialversion.
   + Ersetzen Sie es *account-sid* durch die SID Ihres Twilio-Kontos.
   + *secret-arn*Ersetzen Sie es durch das `ARN` Ihres Secrets Manager Manager-Geheimnisses. Der Konnektor verwendet dies, um den Wert des lokalen Secrets zu erhalten.
   + Ersetze es *phone-number* durch deine Twilio-fähige Telefonnummer. Twilio verwendet sie, um die Textnachricht zu initiieren. Dies kann in der Nutzlast der Eingabenachricht überschrieben werden. Verwenden Sie das folgende Format: `+19999999999`.

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-connector-definition --name MyGreengrassConnectors --initial-version '{
       "Connectors": [
           {
               "Id": "MyTwilioNotificationsConnector",
               "ConnectorArn": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4",
               "Parameters": {
                   "TWILIO_ACCOUNT_SID": "account-sid",
                   "TwilioAuthTokenSecretArn": "secret-arn",
                   "TwilioAuthTokenSecretArn-ResourceId": "TwilioAuthToken",
                   "DefaultFromPhoneNumber": "phone-number"
               }
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-connector-definition \
   --name MyGreengrassConnectors \
   --initial-version '{"Connectors": [{"Id": "MyTwilioNotificationsConnector", "ConnectorArn": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4", "Parameters": {"TWILIO_ACCOUNT_SID": "account-sid", "TwilioAuthTokenSecretArn": "secret-arn", "TwilioAuthTokenSecretArn-ResourceId": "TwilioAuthToken", "DefaultFromPhoneNumber": "phone-number"}}]}'
   ```

------
**Anmerkung**  
`TwilioAuthToken` ist die ID, die Sie im vorherigen Schritt zum Erstellen der geheimen Ressource verwendet haben.

1. Kopieren Sie den `LatestVersionArn` der Konnektordefinition aus der Ausgabe. Mit diesem Wert fügen Sie die Version der Konnektordefinition der Gruppenversion hinzu, die Sie im Core bereitstellen.

## Schritt 4: Erstellen Sie ein Lambda-Funktionsbereitstellungspaket
<a name="connectors-cli-create-deployment-package"></a>

Um eine Lambda-Funktion zu erstellen, müssen Sie zunächst ein *Lambda-Funktionsbereitstellungspaket* erstellen, das den Funktionscode und die Abhängigkeiten enthält. Greengrass Lambda-Funktionen benötigen das [AWS IoT Greengrass Core SDK](lambda-functions.md#lambda-sdks-core) für Aufgaben wie die Kommunikation mit MQTT-Nachrichten in der Kernumgebung und den Zugriff auf lokale Geheimnisse. In diesem Tutorial wird eine Python-Funktion erstellt, sodass Sie die Python-Version des SDK im Bereitstellungspaket verwenden.

1. <a name="download-ggc-sdk"></a> Laden Sie von der [AWS IoT Greengrass Core SDK-Downloadseite](what-is-gg.md#gg-core-sdk-download) das AWS IoT Greengrass Core SDK für Python auf Ihren Computer herunter.

1. <a name="unzip-ggc-sdk"></a>Entpacken Sie das heruntergeladene Paket, um das SDK zu erhalten. Das SDK ist der `greengrasssdk`-Ordner.

1. Speichern Sie die folgende Pythoncode-Funktion in einer lokalen Datei namens `temp_monitor.py`.

   ```
   import greengrasssdk
   import json
   import random
   
   client = greengrasssdk.client('iot-data')
   
   # publish to the Twilio Notifications connector through the twilio/txt topic
   def function_handler(event, context):
       temp = event['temperature']
       
       # check the temperature
       # if greater than 30C, send a notification
       if temp > 30:
           data = build_request(event)
           client.publish(topic='twilio/txt', payload=json.dumps(data))
           print('published:' + str(data))
           
       print('temperature:' + str(temp))
       return
   
   # build the Twilio request from the input data
   def build_request(event):
       to_name = event['to_name']
       to_number = event['to_number']
       temp_report = 'temperature:' + str(event['temperature'])
   
       return {
           "request": {
               "recipient": {
                   "name": to_name,
                   "phone_number": to_number,
                   "message": temp_report
               }
           },
           "id": "request_" + str(random.randint(1,101))
       }
   ```

1. Packen Sie die folgenden Elemente in einer ZIP-Datei mit dem Namen `temp_monitor_python.zip`. Verwenden Sie zum Erstellen der ZIP-Datei nur den Code und die entsprechenden Abhängigkeiten und nicht den dazugehörigen Ordner.
   + **temp\$1monitor.py**. App-Logik.
   + **greengrasssdk**. Erforderliche Bibliothek für Python Greengrass Lambda-Funktionen, die MQTT-Nachrichten veröffentlichen.

   Dies ist Ihr Lambda-Funktionsbereitstellungspaket.

## Schritt 5: Erstellen Sie eine Lambda-Funktion
<a name="connectors-cli-create-function"></a>

Erstellen Sie nun eine Lambda-Funktion, die das Bereitstellungspaket verwendet.

1. <a name="cli-create-empty-lambda-role"></a>Erstellen Sie eine IAM-Rolle, damit Sie den Rollen-ARN bei der Erstellung der Funktion übergeben können.

------
#### [ JSON Expanded ]

   ```
   aws iam create-role --role-name Lambda_empty --assume-role-policy '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "lambda.amazonaws.com"
               },
              "Action": "sts:AssumeRole"
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws iam create-role --role-name Lambda_empty --assume-role-policy '{"Version": "2012-10-17",		 	 	  "Statement": [{"Effect": "Allow", "Principal": {"Service": "lambda.amazonaws.com"},"Action": "sts:AssumeRole"}]}'
   ```

------
**Anmerkung**  
AWS IoT Greengrass verwendet diese Rolle nicht, da die Berechtigungen für Ihre Greengrass Lambda-Funktionen in der Greengrass-Gruppenrolle angegeben sind. Für dieses Tutorial erstellen Sie eine leere Rolle.

1. <a name="cli-copy-lambda-role-arn"></a>Kopieren Sie die `Arn` aus der Ausgabe.

1. Verwenden Sie die AWS Lambda API, um die Funktion zu erstellen. TempMonitor Der folgende Befehl geht davon aus, dass sich die Zip-Datei im aktuellen Verzeichnis befindet.
   + Ersetzen Sie *role-arn* durch den `Arn`, den Sie kopiert haben.

   ```
   aws lambda create-function \
   --function-name TempMonitor \
   --zip-file fileb://temp_monitor_python.zip \
   --role role-arn \
   --handler temp_monitor.function_handler \
   --runtime python3.7
   ```

1. Veröffentlichen einer Version der Funktion.

   ```
   aws lambda publish-version --function-name TempMonitor --description 'First version'
   ```

1. Erstellen Sie einen Alias für die veröffentlichte Version.

   Greengrass-Gruppen können eine Lambda-Funktion nach Alias (empfohlen) oder nach Version referenzieren. Die Verwendung eines Alias erleichtert die Verwaltung von Codeaktualisierungen, da Sie Ihre Abonnementtabelle oder Gruppendefinition nicht ändern müssen, wenn der Funktionscode aktualisiert wird. Stattdessen verweisen Sie einfach mit dem Alias auf die neue Funktionsversion.
**Anmerkung**  
AWS IoT Greengrass unterstützt keine Lambda-Aliase für **\$1LATEST-Versionen**.

   ```
   aws lambda create-alias --function-name TempMonitor --name GG_TempMonitor --function-version 1
   ```

1. Kopieren Sie die `AliasArn` aus der Ausgabe. Sie verwenden diesen Wert, wenn Sie die Funktion für ein Abonnement konfigurieren AWS IoT Greengrass und wenn Sie ein Abonnement erstellen.

Jetzt sind Sie bereit, die Funktion für zu konfigurieren AWS IoT Greengrass.

## Schritt 6: Erstellen einer Funktionsdefinition und -version
<a name="connectors-cli-create-function-definition"></a>

Um eine Lambda-Funktion auf einem AWS IoT Greengrass Core zu verwenden, erstellen Sie eine Funktionsdefinitionsversion, die per Alias auf die Lambda-Funktion verweist und die Konfiguration auf Gruppenebene definiert. Weitere Informationen finden Sie unter [Steuerung der Ausführung von Greengrass Lambda-Funktionen mithilfe einer gruppenspezifischen Konfiguration](lambda-group-config.md).

1. Erstellen Sie eine Funktionsdefinition, die eine Initialversion enthält.
   + Ersetzen Sie sie *alias-arn* durch die Datei`AliasArn`, die Sie bei der Erstellung des Alias kopiert haben.

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-function-definition --name MyGreengrassFunctions --initial-version '{
       "Functions": [
           {
               "Id": "TempMonitorFunction",
               "FunctionArn": "alias-arn",
               "FunctionConfiguration": {
                   "Executable": "temp_monitor.function_handler",
                   "MemorySize": 16000,
                   "Timeout": 5
               }
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-function-definition \
   --name MyGreengrassFunctions \
   --initial-version '{"Functions": [{"Id": "TempMonitorFunction", "FunctionArn": "alias-arn", "FunctionConfiguration": {"Executable": "temp_monitor.function_handler", "MemorySize": 16000,"Timeout": 5}}]}'
   ```

------

1. Kopieren Sie die `LatestVersionArn` aus der Ausgabe. Mit diesem Wert fügen Sie die Version der Funktionsdefinition der Gruppenversion hinzu, die Sie im Core bereitstellen.

1. Kopieren Sie die `Id` aus der Ausgabe. Diesen Wert verwenden Sie später, wenn Sie die Funktion aktualisieren.

## Schritt 7: Erstellen einer Abonnementdefinition und -version
<a name="connectors-cli-create-subscription-definition"></a>

<a name="connectors-how-to-add-subscriptions-p1"></a>In diesem Schritt fügen Sie ein Abonnement hinzu, das es der Lambda-Funktion ermöglicht, Eingabedaten an den Connector zu senden. Der Konnektor definiert die MQTT-Themen, die er abonniert, und dieses Abonnement verwendet eines dieser Themen. Es ist das gleiche Thema, zu dem die Beispielfunktion veröffentlicht.

<a name="connectors-how-to-add-subscriptions-p2"></a>Für dieses Tutorial erstellen Sie auch Abonnements, die es der Funktion ermöglichen, simulierte Temperaturmesswerte vom Connector AWS IoT zu empfangen AWS IoT und Statusinformationen vom Connector zu empfangen.

1. Erstellen Sie eine Abonnementdefinition, die eine Initialversion enthält, die die Abonnements umfasst.
   + *alias-arn*Ersetzen Sie es durch `AliasArn` das, was Sie kopiert haben, als Sie den Alias für die Funktion erstellt haben. Verwenden Sie diesen ARN für beide Abonnements, die ihn verwenden.

    

------
#### [ JSON Expanded ]

   ```
   aws greengrass create-subscription-definition --initial-version '{
       "Subscriptions": [
           {
               "Id": "TriggerNotification",
               "Source": "alias-arn",
               "Subject": "twilio/txt",
               "Target": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4"
           },        
           {
               "Id": "TemperatureInput",
               "Source": "cloud",
               "Subject": "temperature/input",
               "Target": "alias-arn"
           },
           {
               "Id": "OutputStatus",
               "Source": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4",
               "Subject": "twilio/message/status",
               "Target": "cloud"
           }
       ]
   }'
   ```

------
#### [ JSON Single-line ]

   ```
   aws greengrass create-subscription-definition \
   --initial-version '{"Subscriptions": [{"Id": "TriggerNotification", "Source": "alias-arn", "Subject": "twilio/txt", "Target": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4"},{"Id": "TemperatureInput", "Source": "cloud", "Subject": "temperature/input", "Target": "alias-arn"},{"Id": "OutputStatus", "Source": "arn:aws:greengrass:region::/connectors/TwilioNotifications/versions/4", "Subject": "twilio/message/status", "Target": "cloud"}]}'
   ```

------

1. Kopieren Sie die `LatestVersionArn` aus der Ausgabe. Mit diesem Wert fügen Sie die Version der Abonnementdefinition der Gruppenversion hinzu, die Sie im Core bereitstellen.

## Schritt 8: Erstellen einer Gruppenversion
<a name="connectors-cli-create-group-version"></a>

Jetzt können Sie eine Gruppenversion erstellen, die alle Elemente enthält, die Sie bereitstellen möchten. Dazu legen Sie eine Gruppenversion an, die auf die Zielversion jedes Komponententyps verweist.

Zuerst erhalten Sie die Gruppen-ID und den ARN der Core-Definitionsversion. Diese Werte sind erforderlich, um die Gruppenversion zu erstellen.

1. Rufen Sie die ID der Gruppe und die neueste Gruppenversion ab:

   1. <a name="get-group-id-latestversion"></a>Rufen Sie IDs die Greengrass-Zielgruppe und die Gruppenversion ab. Bei diesem Verfahren wird davon ausgegangen, dass es sich um die neueste Gruppen- und Gruppenversion handelt. Die folgende Abfrage gibt die zuletzt erstellte Gruppe zurück.

      ```
      aws greengrass list-groups --query "reverse(sort_by(Groups, &CreationTimestamp))[0]"
      ```

      Sie können auch nach Namen abfragen. Gruppennamen müssen nicht eindeutig sein, sodass mehrere Gruppen zurückgegeben werden können.

      ```
      aws greengrass list-groups --query "Groups[?Name=='MyGroup']"
      ```
**Anmerkung**  
<a name="find-group-ids-console"></a>Sie finden diese Werte auch in der AWS IoT Konsole. Die Gruppen-ID wird auf der Seite **Einstellungen** der Gruppe angezeigt. Die Gruppenversion IDs wird auf der Registerkarte **Bereitstellungen** der Gruppe angezeigt.

   1. <a name="copy-target-group-id"></a>Kopieren Sie die `Id` der Zielgruppe aus der Ausgabe. Sie verwenden sie, um die Core-Definitionsversion zu erhalten, und wenn Sie die Gruppe bereitstellen.

   1. <a name="copy-latest-group-version-id"></a>Kopieren Sie die `LatestVersion` aus der Ausgabe, d. h. die ID der letzten Version, die der Gruppe hinzugefügt wurde. Damit erhalten Sie die Core-Definitionsversion.

1. Abrufen des ARN der Core-Definitionsversion:

   1. Abrufen der Gruppenversion. Für diesen Schritt gehen wir davon aus, dass die neueste Gruppenversion eine Core-Definitionsversion enthält.
      + *group-id*Ersetzen Sie es durch `Id` das, was Sie für die Gruppe kopiert haben.
      + *group-version-id*Ersetzen Sie es durch `LatestVersion` das, was Sie für die Gruppe kopiert haben.

      ```
      aws greengrass get-group-version \
      --group-id group-id \
      --group-version-id group-version-id
      ```

   1. Kopieren Sie die `CoreDefinitionVersionArn` aus der Ausgabe.

1. Erstellen einer Gruppenversion
   + *group-id*Ersetzen Sie es durch `Id` das, was Sie für die Gruppe kopiert haben.
   + *core-definition-version-arn*Ersetzen Sie es durch `CoreDefinitionVersionArn` das, was Sie für die Version der Kerndefinition kopiert haben.
   + *resource-definition-version-arn*Ersetzen Sie es durch `LatestVersionArn` das, was Sie für die Ressourcendefinition kopiert haben.
   + *connector-definition-version-arn*Ersetzen Sie es durch `LatestVersionArn` das, was Sie für die Konnektordefinition kopiert haben.
   + *function-definition-version-arn*Ersetzen Sie es durch `LatestVersionArn` das, was Sie für die Funktionsdefinition kopiert haben.
   + *subscription-definition-version-arn*Ersetzen Sie es durch `LatestVersionArn` das, was Sie für die Abonnementdefinition kopiert haben.

   ```
   aws greengrass create-group-version \
   --group-id group-id \
   --core-definition-version-arn core-definition-version-arn \
   --resource-definition-version-arn resource-definition-version-arn \
   --connector-definition-version-arn connector-definition-version-arn \
   --function-definition-version-arn function-definition-version-arn \
   --subscription-definition-version-arn subscription-definition-version-arn
   ```

1. Kopieren Sie den Wert `Version` aus der Ausgabe. Dies ist die ID der Gruppenversion. Mit diesem Wert können Sie die Gruppenversion bereitstellen.

## Schritt 9: Erstellen einer Bereitstellung
<a name="connectors-cli-create-deployment"></a>

Stellen Sie die Gruppe auf dem Core-Gerät bereit.

1. <a name="check-gg-daemon-is-running"></a>Stellen Sie in einem Core-Device-Terminal sicher, dass der AWS IoT Greengrass Daemon läuft.

   1. So prüfen Sie, ob der Daemon ausgeführt wird:

      ```
      ps aux | grep -E 'greengrass.*daemon'
      ```

      Wenn die Ausgabe einen `root`-Eintrag für `/greengrass/ggc/packages/1.11.6/bin/daemon` enthält, dann wird der Daemon ausgeführt.

   1. Um den Daemon zu starten:

      ```
      cd /greengrass/ggc/core/
      sudo ./greengrassd start
      ```

1. <a name="create-deployment"></a>Erstellen einer -Bereitstellung.
   + Ersetze es *group-id* durch `Id` das, was du für die Gruppe kopiert hast.
   + *group-version-id*Ersetzen Sie es durch `Version` das, was Sie für die neue Gruppenversion kopiert haben.

   ```
   aws greengrass create-deployment \
   --deployment-type NewDeployment \
   --group-id group-id \
   --group-version-id group-version-id
   ```

1. <a name="copy-deployment-id"></a>Kopieren Sie die `DeploymentId` aus der Ausgabe.

1. <a name="get-deployment-status"></a>Abrufen des Bereitstellungsstatus.
   + *group-id*Ersetzen Sie es durch `Id` das, was Sie für die Gruppe kopiert haben.
   + *deployment-id*Ersetzen Sie es durch `DeploymentId` das, was Sie für die Bereitstellung kopiert haben.

   ```
   aws greengrass get-deployment-status \
   --group-id group-id \
   --deployment-id deployment-id
   ```

   Wenn der Status lautet`Success`, war die Bereitstellung erfolgreich. Hilfe zur Problembehebung finden Sie unter [Problembehebung AWS IoT Greengrass](gg-troubleshooting.md).

## Testen der Lösung
<a name="connectors-cli-test-solution"></a>

1. <a name="choose-test-page"></a>Wählen Sie auf der Startseite der AWS IoT Konsole die Option **Test** aus.

1. Verwenden **Sie für Thema abonnieren** die folgenden Werte und wählen Sie dann **Abonnieren** aus. Der Twilio Notifications Connector veröffentlicht Statusinformationen zu diesem Thema.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/greengrass/v1/developerguide/connectors-cli.html)

1. Verwenden **Sie für In Thema veröffentlichen** die folgenden Werte und wählen Sie dann **Veröffentlichen**, um die Funktion aufzurufen.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/greengrass/v1/developerguide/connectors-cli.html)

   Wenn erfolgreich, erhält der Empfänger die Textnachricht und die Konsole zeigt den Status `success` für die [Ausgangsdaten](twilio-notifications-connector.md#twilio-notifications-connector-data-output).

   Ändern Sie nun den `temperature` in der Eingabemeldung auf **29** und veröffentlichen Sie. Da dieser Wert unter 30 liegt, löst die TempMonitor Funktion keine Twilio-Nachricht aus.

## Weitere Informationen finden Sie auch unter
<a name="connectors-cli-see-also"></a>
+ [Integrieren von Services und Protokollen mit Greengrass-Konnektoren](connectors.md)
+ [AWS-mitgelieferte Greengrass-Anschlüsse](connectors-list.md)
+ [Erste Schritte mit Greengrass-Konnektoren (Konsole)](connectors-console.md)
+ [AWS Secrets Manager Befehle](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager) in der *AWS CLI Befehlsreferenz*
+ <a name="see-also-iam-cli"></a>[AWS Identity and Access Management (IAM) -Befehle](https://docs.aws.amazon.com/cli/latest/reference/iam) in der *AWS CLI Befehlsreferenz*
+ <a name="see-also-lambda-cli"></a>[AWS Lambda Befehle](https://docs.aws.amazon.com/cli/latest/reference/lambda) in der *AWS CLI Befehlsreferenz*
+ <a name="see-also-gg-cli"></a>[AWS IoT Greengrass Befehle](https://docs.aws.amazon.com/cli/latest/reference/greengrass/index.html) in der *AWS CLI Befehlsreferenz*