AWS IoT Greengrass V2-Beispiele unter Verwendung der AWS CLI - AWS Command Line Interface

AWS IoT Greengrass V2-Beispiele unter Verwendung der AWS CLI

Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit AWS IoT Greengrass V2 nutzen.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt, wie associate-service-role-to-account verwendet wird.

AWS CLI

So verknüpfen Sie die Greengrass-Servicerolle mit Ihrem AWS-Konto

Im folgenden associate-service-role-to-account-Beispiel wird eine Servicerolle für Ihr AWS-Konto mit AWS IoT Greengrass verknüpft.

aws greengrassv2 associate-service-role-to-account \ --role-arn arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole

Ausgabe:

{ "associatedAt": "2022-01-19T19:21:53Z" }

Weitere Informationen finden Sie unter Greengrass-Servicerolle im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie batch-associate-client-device-with-core-device verwendet wird.

AWS CLI

So verknüpfen Sie Client-Geräte mit einem Core-Gerät

Im folgenden batch-associate-client-device-with-core-device-Beispiel werden zwei Client-Geräte mit einem Core-Gerät verknüpft.

aws greengrassv2 batch-associate-client-device-with-core-device \ --core-device-thing-name MyGreengrassCore \ --entries thingName=MyClientDevice1 thingName=MyClientDevice2

Ausgabe:

{ "errorEntries": [] }

Weitere Informationen finden Sie unter Mit lokalen IoT-Geräten interagieren im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie batch-disassociate-client-device-from-core-device verwendet wird.

AWS CLI

So trennen Sie Client-Geräte von einem Core-Gerät

Im folgenden batch-disassociate-client-device-from-core-device-Beispiel werden zwei Client-Geräte von einem Core-Gerät getrennt.

aws greengrassv2 batch-disassociate-client-device-from-core-device \ --core-device-thing-name MyGreengrassCore \ --entries thingName=MyClientDevice1 thingName=MyClientDevice2

Ausgabe:

{ "errorEntries": [] }

Weitere Informationen finden Sie unter Mit lokalen IoT-Geräten interagieren im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie cancel-deployment verwendet wird.

AWS CLI

So brechen Sie einen Bereitstellung ab

Im folgenden cancel-deployment-Beispiel wird eine kontinuierliche Bereitstellung auf einer Objektgruppe abgebrochen.

aws greengrassv2 cancel-deployment \ --deployment-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ausgabe:

{ "message": "SUCCESS" }

Weitere Informationen finden Sie unter Abbrechen von Bereitstellungen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie create-component-version verwendet wird.

AWS CLI

Beispiel 1: So erstellen Sie eine Komponentenversion anhand eines Rezepts

Im folgenden create-component-version-Beispiel wird eine Version einer Hello-World-Komponente anhand einer Rezeptdatei erstellt.

aws greengrassv2 create-component-version \ --inline-recipe fileb://com.example.HelloWorld-1.0.0.json

Inhalt von com.example.HelloWorld-1.0.0.json:

{ "RecipeFormatVersion": "2020-01-25", "ComponentName": "com.example.HelloWorld", "ComponentVersion": "1.0.0", "ComponentDescription": "My first AWS IoT Greengrass component.", "ComponentPublisher": "Amazon", "ComponentConfiguration": { "DefaultConfiguration": { "Message": "world" } }, "Manifests": [ { "Platform": { "os": "linux" }, "Lifecycle": { "Run": "echo 'Hello {configuration:/Message}'" } } ] }

Ausgabe:

{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T16:24:33.650000-08:00", "status": { "componentState": "REQUESTED", "message": "NONE", "errors": {} } }

Weitere Informationen finden Sie unter Erstellen von benutzerdefinierten Komponenten und Hochladen von Komponenten zur Bereitstellung im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Beispiel 2: So erstellen Sie eine Komponentenversion anhand einer AWS-Lambda-Funktion

Im folgenden create-component-version-Beispiel wird eine Version einer Hello World-Komponente anhand einer AWS-Lambda-Funktion erstellt.

aws greengrassv2 create-component-version \ --cli-input-json file://lambda-function-component.json

Inhalt von lambda-function-component.json:

{ "lambdaFunction": { "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:HelloWorldPythonLambda:1", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "componentLambdaParameters": { "eventSources": [ { "topic": "hello/world/+", "type": "IOT_CORE" } ] } } }

Ausgabe:

{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T17:05:27.347000-08:00", "status": { "componentState": "REQUESTED", "message": "NONE", "errors": {} } }

Weitere Informationen finden Sie unter Ausführen von AWS-Lambda-Funktionen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie create-deployment verwendet wird.

AWS CLI

Beispiel 1: So erstellen Sie eine Bereitstellung

Im folgenden create-deployment-Beispiel wird die Befehlszeilenschnittstelle von AWS IoT Greengrass auf einem Core-Gerät bereitgestellt.

aws greengrassv2 create-deployment \ --cli-input-json file://cli-deployment.json

Inhalt von cli-deployment.json:

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "deploymentName": "Deployment for MyGreengrassCore", "components": { "aws.greengrass.Cli": { "componentVersion": "2.0.3" } }, "deploymentPolicies": { "failureHandlingPolicy": "DO_NOTHING", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {} }

Ausgabe:

{ "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Weitere Informationen finden Sie unter Erstellen von Bereitstellungen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Beispiel 2: So erstellen Sie eine Bereitstellung, die Komponentenkonfigurationen aktualisiert

Im folgenden create-deployment-Beispiel wird die Nucleus-Komponente von AWS IoT Greengrass auf einer Gruppe von Core-Geräten bereitgestellt. Bei dieser Bereitstellung werden für die Nucleus-Komponente die folgenden Konfigurationsupdates angewendet:

Setzt die Proxy-Einstellungen der Zielgeräte auf die Standardeinstellungen ohne Proxy zurück.Setzt die MQTT-Einstellungen der Zielgeräte auf ihre Standardwerte zurück.Legt die JVM-Optionen für die JVM des Nucleus fest.Legt die Protokollierungsebene für den Nucleus fest.

aws greengrassv2 create-deployment \ --cli-input-json file://nucleus-deployment.json

Inhalt von nucleus-deployment.json:

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "deploymentName": "Deployment for MyGreengrassCoreGroup", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.0.3", "configurationUpdate": { "reset": [ "/networkProxy", "/mqtt" ], "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}" } } }, "deploymentPolicies": { "failureHandlingPolicy": "ROLLBACK", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {} }

Ausgabe:

{ "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" }

Weitere Informationen finden Sie unter Erstellen von Bereitstellungen und Aktualisieren von Komponentenkonfigurationen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie delete-component verwendet wird.

AWS CLI

So löschen Sie eine Komponentenversion

Im folgenden delete-component-Beispiel wird eine Hello-World-Komponente gelöscht.

aws greengrassv2 delete-component \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter DeleteComponent in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie delete-core-device verwendet wird.

AWS CLI

So löschen Sie ein Core-Gerät

Im folgenden delete-core-device-Beispiel wird ein Core-Gerät von AWS IoT Greengrass gelöscht.

aws greengrassv2 delete-core-device \ --core-device-thing-name MyGreengrassCore

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Deinstallieren der Core-Software von AWS IoT Greengrass im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie describe-component verwendet wird.

AWS CLI

So beschreiben Sie eine Asset-Version

Im folgenden describe-component-Beispiel wird eine Hello-World-Komponente beschrieben.

aws greengrassv2 describe-component \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0

Ausgabe:

{ "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0", "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "creationTimestamp": "2021-01-07T17:12:11.133000-08:00", "publisher": "Amazon", "description": "My first AWS IoT Greengrass component.", "status": { "componentState": "DEPLOYABLE", "message": "NONE", "errors": {} }, "platforms": [ { "attributes": { "os": "linux" } } ] }

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie disassociate-service-role-from-account verwendet wird.

AWS CLI

So heben Sie die Verknüpfung einer Greengrass-Servicerolle mit Ihrem AWS-Konto auf

Im folgenden disassociate-service-role-from-account-Beispiel wird die Verknüpfung einer Greengrass-Servicerolle mit AWS IoT Greengrass für Ihr AWS-Konto aufgehoben.

aws greengrassv2 disassociate-service-role-from-account

Ausgabe:

{ "disassociatedAt": "2022-01-19T19:26:09Z" }

Weitere Informationen finden Sie unter Greengrass-Servicerolle im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie get-component-version-artifact verwendet wird.

AWS CLI

So rufen Sie eine URL zum Herunterladen eines Komponentenartefakts ab

Im folgenden get-component-version-artifact-Beispiel wird eine URL zum Herunterladen der JAR-Datei der lokalen Debug-Konsolenkomponente abgerufen.

aws greengrassv2 get-component-version-artifact \ --arn arn:aws:greengrass:us-west-2:aws:components:aws.greengrass.LocalDebugConsole:versions:2.0.3 \ --artifact-name "Uvt6ZEzQ9TKiAuLbfXBX_APdY0TWks3uc46tHFHTzBM=/aws.greengrass.LocalDebugConsole.jar"

Ausgabe:

{ "preSignedUrl": "https://evergreencomponentmanageme-artifactbucket7410c9ef-g18n1iya8kwr.s3.us-west-2.amazonaws.com/public/aws.greengrass.LocalDebugConsole/2.0.3/s3/ggv2-component-releases-prod-pdx/EvergreenHttpDebugView/2ffc496ba41b39568968b22c582b4714a937193ee7687a45527238e696672521/aws.greengrass.LocalDebugConsole/aws.greengrass.LocalDebugConsole.jar?X-Amz-Security-Token=KwfLKSdEXAMPLE..." }

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie get-component verwendet wird.

AWS CLI

Beispiel 1: So laden Sie das Rezept einer Komponente im YAML-Format (Linux, macOS oder Unix) herunter

Im folgenden get-component-Beispiel wird das Rezept einer Hello-World-Komponente im YAML-Format in eine Datei heruntergeladen. Der Befehl hat folgende Auswirkungen:

Verwendet die Parameter --output und --query, um die Ausgabe des Befehls zu steuern. Diese Parameter extrahieren den Rezept-Blob aus der Ausgabe des Befehls. Weitere Informationen zum Steuern der Ausgabe finden Sie unter Steuern der Befehlsausgabe im Benutzerhandbuch zur AWS-Befehlszeilenschnittstelle.Verwendet das Dienstprogramm base64. Dieses Tool dekodiert den extrahierten Blob in den Originaltext. Bei dem Blob, der von einem erfolgreichen get-component-Befehl zurückgegeben wird, handelt es sich um base64-kodierten Text. Sie müssen dieses Blob dekodieren, um den Originaltext zu erhalten.Speichert den dekodierten Text in einer Datei. Der letzte Abschnitt des Befehls (> com.example.HelloWorld-1.0.0.json) speichert den dekodierten Text in einer Datei.

aws greengrassv2 get-component \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0 \ --recipe-output-format YAML \ --query recipe \ --output text | base64 --decode > com.example.HelloWorld-1.0.0.json

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Beispiel 2: So laden Sie das Rezept einer Komponente im YAML-Format (Windows CMD) herunter

Im folgenden get-component-Beispiel wird das Rezept einer Hello-World-Komponente im YAML-Format in eine Datei heruntergeladen. Dieser Befehl verwendet das Dienstprogramm certutil.

aws greengrassv2 get-component ^ --arn arn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0 ^ --recipe-output-format YAML ^ --query recipe ^ --output text > com.example.HelloWorld-1.0.0.yaml.b64 certutil -decode com.example.HelloWorld-1.0.0.yaml.b64 com.example.HelloWorld-1.0.0.yaml

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Beispiel 3: So laden Sie das Rezept einer Komponente im YAML-Format (Windows PowerShell) herunter

Im folgenden get-component-Beispiel wird das Rezept einer Hello-World-Komponente im YAML-Format in eine Datei heruntergeladen. Dieser Befehl verwendet das Dienstprogramm certutil.

aws greengrassv2 get-component ` --arn arn:aws:greengrass:us-west-2:675946970638:components:com.example.HelloWorld:versions:1.0.0 ` --recipe-output-format YAML ` --query recipe ` --output text > com.example.HelloWorld-1.0.0.yaml.b64 certutil -decode com.example.HelloWorld-1.0.0.yaml.b64 com.example.HelloWorld-1.0.0.yaml

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter GetComponent in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie get-connectivity-info verwendet wird.

AWS CLI

So rufen Sie die Verbindungsinformationen für ein Greengrass-Core-Gerät ab

Im folgenden get-connectivity-info-Beispiel werden Verbindungsinformationen für ein Greengrass-Core-Gerät abgerufen. Client-Geräte verwenden diese Informationen, um eine Verbindung mit dem MQTT-Broker herzustellen, der auf diesem Core-Gerät ausgeführt wird.

aws greengrassv2 get-connectivity-info \ --thing-name MyGreengrassCore

Ausgabe:

{ "connectivityInfo": [ { "id": "localIP_192.0.2.0", "hostAddress": "192.0.2.0", "portNumber": 8883 } ] }

Weitere Informationen finden Sie unter Verwalten von Endpunkten für Core-Geräte im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie get-core-device verwendet wird.

AWS CLI

So rufen Sie ein Core-Gerät ab

Im folgenden get-core-device-Beispiel werden Informationen über ein Core-Gerät von AWS IoT Greengrass abgerufen.

aws greengrassv2 get-core-device \ --core-device-thing-name MyGreengrassCore

Ausgabe:

{ "coreDeviceThingName": "MyGreengrassCore", "coreVersion": "2.0.3", "platform": "linux", "architecture": "amd64", "status": "HEALTHY", "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00", "tags": {} }

Weitere Informationen finden Sie unter Überprüfen des Status eines Core-Geräts im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter GetCoreDevice in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie get-deployment verwendet wird.

AWS CLI

So rufen Sie eine Bereitstellung ab

Im folgenden get-deployment-Beispiel werden Informationen über die Bereitstellung der Nucleus-Komponente von AWS IoT Greengrass auf einer Gruppe von Core-Geräten abgerufen.

aws greengrassv2 get-deployment \ --deployment-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ausgabe:

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "revisionId": "14", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCoreGroup", "deploymentStatus": "ACTIVE", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.0.3", "configurationUpdate": { "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}", "reset": [ "/networkProxy", "/mqtt" ] } } }, "deploymentPolicies": { "failureHandlingPolicy": "ROLLBACK", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "iotJobConfiguration": {}, "creationTimestamp": "2021-01-07T17:21:20.691000-08:00", "isLatestForTarget": false, "tags": {} }

Weitere Informationen finden Sie unter Bereitstellen von Komponenten auf Geräten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter GetDeployment in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie get-service-role-for-account verwendet wird.

AWS CLI

So erhalten Sie die Greengrass-Servicerolle für Ihr AWS-Konto

Im folgenden get-service-role-for-account-Beispiel wird die Servicerolle, die mit AWS IoT Greengrass verknüpft ist, für Ihr AWS-Konto abgerufen.

aws greengrassv2 get-service-role-for-account

Ausgabe:

{ "associatedAt": "2022-01-19T19:21:53Z", "roleArn": "arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole" }

Weitere Informationen finden Sie unter Greengrass-Servicerolle im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie list-client-devices-associated-with-core-device verwendet wird.

AWS CLI

So listen Sie die Client-Geräte auf, die mit einem Core-Gerät verknüpft sind

Im folgenden list-client-devices-associated-with-core-device-Beispiel werden alle Client-Geräte aufgelistet, die mit einem Core-Gerät verknüpft sind.

aws greengrassv2 list-client-devices-associated-with-core-device \ --core-device-thing-name MyTestGreengrassCore

Ausgabe:

{ "associatedClientDevices": [ { "thingName": "MyClientDevice2", "associationTimestamp": "2021-07-12T16:33:55.843000-07:00" }, { "thingName": "MyClientDevice1", "associationTimestamp": "2021-07-12T16:33:55.843000-07:00" } ] }

Weitere Informationen finden Sie unter Mit lokalen IoT-Geräten interagieren im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie list-component-versions verwendet wird.

AWS CLI

So listen Sie die Versionen einer Komponente auf

Im folgenden list-component-versions-Beispiel werden alle Versionen einer Hello-World-Komponente aufgelistet.

aws greengrassv2 list-component-versions \ --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld

Ausgabe:

{ "componentVersions": [ { "componentName": "com.example.HelloWorld", "componentVersion": "1.0.1", "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1" }, { "componentName": "com.example.HelloWorld", "componentVersion": "1.0.0", "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0" } ] }

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie list-components verwendet wird.

AWS CLI

So listen Sie Komponenten auf

Im folgenden list-components-Beispiel werden alle Komponenten und ihre neueste Version aufgeführt, die in Ihrem AWS-Konto in der aktuellen Region definiert sind.

aws greengrassv2 list-components

Ausgabe:

{ "components": [ { "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld", "componentName": "com.example.HelloWorld", "latestVersion": { "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1", "componentVersion": "1.0.1", "creationTimestamp": "2021-01-08T16:51:07.352000-08:00", "description": "My first AWS IoT Greengrass component.", "publisher": "Amazon", "platforms": [ { "attributes": { "os": "linux" } } ] } } ] }

Weitere Informationen finden Sie unter Verwalten von Komponenten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter ListComponents in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie list-core-devices verwendet wird.

AWS CLI

So listen Sie Core-Geräte auf

Im folgenden list-core-devices-Beispiel werden die Core-Geräte von AWS IoT Greengrass in Ihrem AWS-Konto in der aktuellen Region aufgelistet.

aws greengrassv2 list-core-devices

Ausgabe:

{ "coreDevices": [ { "coreDeviceThingName": "MyGreengrassCore", "status": "HEALTHY", "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00" } ] }

Weitere Informationen finden Sie unter Überprüfen des Status eines Core-Geräts im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter ListCoreDevices in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie list-deployments verwendet wird.

AWS CLI

So listen Sie Bereitstellungen auf

Im folgenden list-deployments-Beispiel wird die letzte Änderung an jeder in Ihrem AWS-Konto definierten Bereitstellung in der aktuellen Region aufgelistet.

aws greengrassv2 list-deployments

Ausgabe:

{ "deployments": [ { "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "revisionId": "14", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCoreGroup", "creationTimestamp": "2021-01-07T17:21:20.691000-08:00", "deploymentStatus": "ACTIVE", "isLatestForTarget": false }, { "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "revisionId": "1", "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "deploymentName": "Deployment for MyGreengrassCore", "creationTimestamp": "2021-01-06T16:10:42.407000-08:00", "deploymentStatus": "COMPLETED", "isLatestForTarget": false } ] }

Weitere Informationen finden Sie unter Bereitstellen von Komponenten auf Geräten im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter ListDeployments in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie list-effective-deployments verwendet wird.

AWS CLI

So listen Sie Bereitstellungsaufträge auf

Im folgenden list-effective-deployments-Beispiel werden die Bereitstellungen aufgelistet, die für ein Core-Gerät von AWS IoT-Greengrass gelten.

aws greengrassv2 list-effective-deployments \ --core-device-thing-name MyGreengrassCore

Ausgabe:

{ "effectiveDeployments": [ { "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "deploymentName": "Deployment for MyGreengrassCore", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "coreDeviceExecutionStatus": "COMPLETED", "reason": "SUCCESSFUL", "creationTimestamp": "2021-01-06T16:10:42.442000-08:00", "modifiedTimestamp": "2021-01-08T17:21:27.830000-08:00" }, { "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "deploymentName": "Deployment for MyGreengrassCoreGroup", "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "coreDeviceExecutionStatus": "SUCCEEDED", "reason": "SUCCESSFUL", "creationTimestamp": "2021-01-07T17:19:20.394000-08:00", "modifiedTimestamp": "2021-01-07T17:21:20.721000-08:00" } ] }

Weitere Informationen finden Sie unter Überprüfen des Status eines Core-Geräts im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie list-installed-components verwendet wird.

AWS CLI

So listen Sie Komponenten auf, die auf einem Core-Gerät installiert sind

Im folgenden list-installed-components-Beispiel werden die Komponenten aufgelistet, die auf einem Core-Gerät von AWS IoT Greengrass installiert sind.

aws greengrassv2 list-installed-components \ --core-device-thing-name MyGreengrassCore

Ausgabe:

{ "installedComponents": [ { "componentName": "aws.greengrass.Cli", "componentVersion": "2.0.3", "lifecycleState": "RUNNING", "isRoot": true }, { "componentName": "aws.greengrass.Nucleus", "componentVersion": "2.0.3", "lifecycleState": "FINISHED", "isRoot": true } ] }

Weitere Informationen finden Sie unter Überprüfen des Status eines Core-Geräts im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie list-tags-for-resource verwendet wird.

AWS CLI

So listen Sie Tags für eine Ressource auf

Im folgenden list-tags-for-resource-Beispiel werden alle Tags für ein Core-Gerät von AWS IoT Greengrass aufgelistet.

aws greengrassv2 list-tags-for-resource \ --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore

Ausgabe:

{ "tags": { "Owner": "richard-roe" } }

Weitere Informationen finden Sie unter Eigene Ressourcen taggen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

Das folgende Codebeispiel zeigt, wie tag-resource verwendet wird.

AWS CLI

So fügen Sie einer Ressource einen Tag hinzu

Im folgenden tag-resource-Beispiel wird einem Core-Gerät von AWS IoT Greengrass ein Besitzer-Tag hinzugefügt. Sie können dieses Tag verwenden, um den Zugriff auf das Core-Gerät auf Basis dessen zu steuern, wem es gehört.

aws greengrassv2 tag-resource \ --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore \ --tags Owner=richard-roe

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Eigene Ressourcen taggen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter TagResource in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie untag-resource verwendet wird.

AWS CLI

So entfernen Sie ein Tag aus einer Ressource

Im folgenden untag-resource-Beispiel wird ein Besitzer-Tag von einem Core-Gerät von AWS IoT Greengrass entfernt.

aws iotsitewise untag-resource \ --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore \ --tag-keys Owner

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Eigene Ressourcen taggen im Entwicklerhandbuch zu AWS IoT Greengrass V2.

  • API-Details finden Sie unter UntagResource in der AWS CLI-Befehlsreferenz.

Das folgende Codebeispiel zeigt, wie update-connectivity-info verwendet wird.

AWS CLI

So aktualisieren Sie die Verbindungsinformationen für ein Greengrass-Core-Gerät

Im folgenden update-connectivity-info-Beispiel werden Verbindungsinformationen für ein Greengrass-Core-Gerät abgerufen. Client-Geräte verwenden diese Informationen, um eine Verbindung mit dem MQTT-Broker herzustellen, der auf diesem Core-Gerät ausgeführt wird.

aws greengrassv2 update-connectivity-info \ --thing-name MyGreengrassCore \ --cli-input-json file://core-device-connectivity-info.json

Inhalt von core-device-connectivity-info.json:

{ "connectivityInfo": [ { "hostAddress": "192.0.2.0", "portNumber": 8883, "id": "localIP_192.0.2.0" } ] }

Ausgabe:

{ "version": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Weitere Informationen finden Sie unter Verwalten von Endpunkten für Core-Geräte im Entwicklerhandbuch zu AWS IoT Greengrass V2.