Exemplos de AWS IoT Greengrass V2 usando a AWS CLI - AWS Command Line Interface

Esta documentação é somente para a versão 1 da AWS CLI. Para obter a documentação relacionada à AWS CLI versão 2, consulte o Guia do usuário da versão 2.

Exemplos de AWS IoT Greengrass V2 usando a AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o AWS IoT Greengrass V2.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar associate-service-role-to-account.

AWS CLI

Associar o perfil de serviço Greengrass à sua AWS conta

O exemplo associate-service-role-to-account a seguir associa um perfil de serviço ao AWS IoT Greengrass para sua conta da AWS.

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

Saída:

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

Para obter mais informações, consulte Perfil de serviço do Greengrass no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar batch-associate-client-device-with-core-device.

AWS CLI

Associar dispositivos-clientes a um dispositivo principal

O exemplo batch-associate-client-device-with-core-device a seguir associa dois dispositivos-clientes a um dispositivo principal.

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

Saída:

{ "errorEntries": [] }

Para obter mais informações, consulte Interagindo com dispositivos IoT locais no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar batch-disassociate-client-device-from-core-device.

AWS CLI

Desassociar dispositivos-clientes de um dispositivo principal

O exemplo batch-disassociate-client-device-from-core-device a seguir desassocia dois dispositivos-clientes de um dispositivo principal.

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

Saída:

{ "errorEntries": [] }

Para obter mais informações, consulte Interagindo com dispositivos IoT locais no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar cancel-deployment.

AWS CLI

Cancelar uma implantação

O exemplo cancel-deployment a seguir interrompe uma implantação contínua em um grupo de itens.

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

Saída:

{ "message": "SUCCESS" }

Para obter mais informações, consulte Cancelar implantações no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte CancelDeployment na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar create-component-version.

AWS CLI

Exemplo 1: criar uma versão de componente a partir de uma fórmula

O exemplo create-component-version a seguir cria uma versão de um componente Hello World a partir de um arquivo de fórmula.

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

Conteúdo de 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}'" } } ] }

Saída:

{ "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": {} } }

Para obter mais informações, consulte Criar componentes personalizados e Fazer upload de componentes para implantar no Guia do Desenvolvedor do AWS IoT Greengrass V2.

Exemplo 2: criar uma versão de componente a partir de uma AWS função do Lambda

O exemplo create-component-version a seguir cria uma versão de um componente Hello World a partir de uma AWS função do Lambda.

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

Conteúdo de 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" } ] } } }

Saída:

{ "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": {} } }

Para obter mais informações, consulte Executar AWS funções do Lambda no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar create-deployment.

AWS CLI

Exemplo 1: criar uma implantação

O exemplo create-deployment a seguir implanta a Interface AWS IoT Greengrass Command Line Interface em um dispositivo principal.

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

Conteúdo de 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": {} }

Saída:

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

Para obter mais informações, consulte Criar implantações no Guia do Desenvolvedor do AWS IoT Greengrass V2.

Exemplo 2: criar uma implantação que atualize as configurações dos componentes

O exemplo create-deployment a seguir implanta o componente do núcleo do AWS IoT Greengrass em um grupo de dispositivos principais. Esta implantação aplica as seguintes atualizações de configuração para o componente do núcleo:

Redefine as configurações de proxy dos dispositivos de destino para suas configurações padrão sem proxy.Redefine as configurações de MQTT dos dispositivos de destino para suas configurações padrão.Define as opções de JVM para a JVM do núcleo.Define o nível de logging para o núcleo.

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

Conteúdo de 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": {} }

Saída:

{ "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" }

Para obter mais informações, consulte Criar implantações e Atualizar configurações de componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para obter detalhes da API, consulte CreateDeployment na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-component.

AWS CLI

Excluir uma versão do componente

O exemplo delete-component a seguir exclui um componente do Hello World.

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

Este comando não produz saída.

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte DeleteComponent na Referência do comando da AWS CLI.

O código de exemplo a seguir mostra como usar delete-core-device.

AWS CLI

Excluir dispositivo principal

O exemplo delete-core-device a seguir exclui um dispositivo principal do AWS IoT Greengrass.

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

Este comando não produz saída.

Para obter mais informações, consulte Desinstalar o software principal do AWS IoT Greengrass no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte DeleteCoreDevice na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-component.

AWS CLI

Descrever a versão de um componente

O exemplo describe-component a seguir descreve um componente do Hello World.

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

Saída:

{ "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" } } ] }

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte DescribeComponent na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar disassociate-service-role-from-account.

AWS CLI

Desassociar o perfil de serviço do Greengrass de sua AWS conta

O exemplo disassociate-service-role-from-account a seguir desassocia o perfil de serviço Greengrass do AWS IoT Greengrass da sua conta da AWS.

aws greengrassv2 disassociate-service-role-from-account

Saída:

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

Para obter mais informações, consulte Perfil de serviço do Greengrass no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar get-component-version-artifact.

AWS CLI

Obter uma URL para baixar um artefato de componente

O exemplo get-component-version-artifact a seguir obtém uma URL para baixar o arquivo JAR do componente do console de depuração local.

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"

Saída:

{ "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..." }

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar get-component.

AWS CLI

Exemplo 1: baixar a fórmula de um componente no formato YAML (Linux, macOS ou Unix)

O exemplo get-component a seguir baixa a fórmula de um componente Hello World em um arquivo no formato YAML. Esse comando faz o seguinte:

Usa os parâmetros --output e --query para controlar a saída do comando. Esses parâmetros extraem o blob da fórmula da saída do comando. Para obter mais informações, consulte Controlar a saída do comando no Guia do Usuário do AWS Command Line Interface. Usa o base64 utilitário. Este utilitário decodifica o blob extraído para o texto original. O blob devolvido por um comando get-component bem-sucedido é um texto codificado em base64. É necessário decodificar esse blob para obter o texto original. Salva o texto decodificado em um arquivo. A seção final do comando (> com.example.HelloWorld-1.0.0.json) salva o texto decodificado em um arquivo.

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

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

Exemplo 2: baixar a fórmula de um componente no formato YAML (Windows CMD)

O exemplo get-component a seguir baixa a fórmula de um componente Hello World em um arquivo no formato YAML. Este comando usa o certutil utilitário.

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

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

Exemplo 3: baixar a fórmula de um componente no formato YAML (Windows PowerShell)

O exemplo get-component a seguir baixa a fórmula de um componente Hello World em um arquivo no formato YAML. Este comando usa o certutil utilitário.

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

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte GetComponent na Referência do comando da AWS CLI.

O código de exemplo a seguir mostra como usar get-connectivity-info.

AWS CLI

Obter informações de conectividade para um dispositivo principal do Greengrass

O exemplo get-connectivity-info a seguir obtém informações de conectividade para um dispositivo principal do Greengrass. Os dispositivos-clientes usam essas informações para se conectar ao agente MQTT, executado nesse dispositivo principal.

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

Saída:

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

Para obter mais informações, consulte Gerenciar endpoints de dispositivos principais no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para receber detalhes da API, consulte GetConnectivityInfo na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-core-device.

AWS CLI

Obter um dispositivo principal

O exemplo get-core-device a seguir obtém informações sobre um dispositivo principal do AWS IoT Greengrass.

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

Saída:

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

Para obter mais informações, consulte Verificar status do dispositivo principal no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte GetCoreDevice na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-deployment.

AWS CLI

Obter uma implantação

O exemplo get-deployment a seguir obtém informações sobre a implantação do componente de núcleo do AWS IoT Greengrass em um grupo de dispositivos principais.

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

Saída:

{ "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": {} }

Para obter mais informações, consulte Implantar componentes em dispositivos no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte GetDeployment na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar get-service-role-for-account.

AWS CLI

Obter o perfil de serviço do Greengrass para sua AWS conta

O exemplo get-service-role-for-account a seguir obtém o perfil de serviço associado ao AWS IoT Greengrass para sua conta da AWS.

aws greengrassv2 get-service-role-for-account

Saída:

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

Para obter mais informações, consulte Perfil de serviço do Greengrass no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar list-client-devices-associated-with-core-device.

AWS CLI

Listar os dispositivos-clientes associados a um dispositivo principal

O exemplo list-client-devices-associated-with-core-device a seguir lista todos os dispositivos-clientes associados a um dispositivo principal.

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

Saída:

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

Para obter mais informações, consulte Interagindo com dispositivos IoT locais no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar list-component-versions.

AWS CLI

Listar versões de um componente

O exemplo list-component-versions a seguir lista todas as versões de um componente do Hello World.

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

Saída:

{ "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" } ] }

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar list-components.

AWS CLI

Listar componentes

O exemplo list-components a seguir lista cada componente e sua versão mais recente definida em sua conta AWS na Região atual.

aws greengrassv2 list-components

Saída:

{ "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" } } ] } } ] }

Para obter mais informações, consulte o Gerenciar componentes no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte ListComponents na Referência do comando da AWS CLI.

O código de exemplo a seguir mostra como usar list-core-devices.

AWS CLI

Listar dispositivos principais

O exemplo list-core-devices a seguir lista os principais dispositivos AWS IoT Greengrass em sua conta da AWS na região atual.

aws greengrassv2 list-core-devices

Saída:

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

Para obter mais informações, consulte Verificar status do dispositivo principal no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte ListCoreDevices na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-deployments.

AWS CLI

Listar implantações

O exemplo list-deployments a seguir lista a revisão mais recente de cada implantação definida em sua conta AWS na Região atual.

aws greengrassv2 list-deployments

Saída:

{ "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 } ] }

Para obter mais informações, consulte Implantar componentes em dispositivos no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes da API, consulte ListDeployments na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-effective-deployments.

AWS CLI

Listar tarefas de implantação

O exemplo list-effective-deployments a seguir lista as implantações que se aplicam a um dispositivo principal do AWS IoT Greengrass.

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

Saída:

{ "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" } ] }

Para obter mais informações, consulte Verificar status do dispositivo principal no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar list-installed-components.

AWS CLI

Listar os componentes instalados em um dispositivo principal

O exemplo list-installed-components a seguir lista os componentes instalados em um dispositivo principal do AWS IoT Greengrass.

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

Saída:

{ "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 } ] }

Para obter mais informações, consulte Verificar status do dispositivo principal no Guia do Desenvolvedor do AWS IoT Greengrass V2.

O código de exemplo a seguir mostra como usar list-tags-for-resource.

AWS CLI

Para listar as tags para um recurso

O exemplo list-tags-for-resource a seguir lista todas as marcações de um dispositivo principal do AWS IoT Greengrass.

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

Saída:

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

Para obter mais informações, consulte Marcar seus recursos no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para ver detalhes sobre a API, consulte ListTagsForResource na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar tag-resource.

AWS CLI

Para adicionar uma tag a um recurso

O exemplo tag-resource a seguir adiciona uma marca de proprietário a um dispositivo principal do AWS IoT Greengrass. É possível usar essa marca para controlar o acesso ao dispositivo principal com base em quem o possui.

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

Este comando não produz saída.

Para obter mais informações, consulte Marcar seus recursos no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para obter detalhes da API, consulte TagResource na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar untag-resource.

AWS CLI

Para remover uma tag de um recurso

O exemplo untag-resource a seguir remove uma marca de proprietário de um dispositivo principal do AWS IoT Greengrass.

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

Este comando não produz saída.

Para obter mais informações, consulte Marcar seus recursos no Guia do Desenvolvedor do AWS IoT Greengrass V2.

  • Para obter detalhes sobre a API, consulte UntagResource na AWS CLI Command Reference.

O código de exemplo a seguir mostra como usar update-connectivity-info.

AWS CLI

Atualizar as informações de conectividade de um dispositivo principal do Greengrass

O exemplo update-connectivity-info a seguir obtém informações de conectividade para um dispositivo principal do Greengrass. Os dispositivos-clientes usam essas informações para se conectar ao agente MQTT, executado nesse dispositivo principal.

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

Conteúdo de core-device-connectivity-info.json:

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

Saída:

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

Para obter mais informações, consulte Gerenciar endpoints de dispositivos principais no Guia do Desenvolvedor do AWS IoT Greengrass V2.