Ejemplos de AWS IoT Greengrass usando AWS CLI - AWS Command Line Interface

Ejemplos de AWS IoT Greengrass usando AWS CLI

En los siguientes ejemplos de código se muestra cómo realizar acciones e implementar escenarios comunes usando AWS Command Line Interface con AWS IoT Greengrass.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

Acciones

En el siguiente ejemplo de código, se muestra cómo utilizar associate-role-to-group.

AWS CLI

Para asociar un rol con un grupo de Greengrass

En el siguiente ejemplo de associate-role-to-group, se asocia el rol de IAM especificado a un grupo de Greengrass. Las funciones y conectores de Lambda locales utilizan el rol de grupo para acceder a los servicios de AWS. Por ejemplo, su rol de grupo puede conceder los permisos necesarios para la integración de Registros de CloudWatch.

aws greengrass associate-role-to-group \ --group-id 2494ee3f-7f8a-4e92-a78b-d205f808b84b \ --role-arn arn:aws:iam::123456789012:role/GG-Group-Role

Salida:

{ "AssociatedAt": "2019-09-10T20:03:30Z" }

Para obtener más información, consulte Configuración del rol del grupo en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte AssociateRoleToGroup en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar associate-service-role-to-account.

AWS CLI

Para asociar un rol de servicio a su cuenta de AWS

En el siguiente ejemplo de associate-service-role-to-account, se asocia un rol de servicio de IAM, especificado por su ARN, con AWS IoT Greengrass en su cuenta de AWS. Debe haber creado previamente el rol de servicio en IAM y debe asociarle un documento de política que permita a AWS IoT Greengrass asumir este rol.

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

Salida:

{ "AssociatedAt": "2019-06-25T18:12:45Z" }

Para obtener más información, consulte Greengrass service role en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-connector-definition-version.

AWS CLI

Para crear una versión de definición de conector

En el siguiente ejemplo de create-connector-definition-version, se crea una versión de definición de conector y se asocia a la definición de conector especificada. Todos los conectores de una versión definen valores para sus parámetros.

aws greengrass create-connector-definition-version \ --connector-definition-id "55d0052b-0d7d-44d6-b56f-21867215e118" \ --connectors "[{\"Id\": \"MyTwilioNotificationsConnector\", \"ConnectorArn\": \"arn:aws:greengrass:us-west-2::/connectors/TwilioNotifications/versions/2\", \"Parameters\": {\"TWILIO_ACCOUNT_SID\": \"AC1a8d4204890840d7fc482aab38090d57\", \"TwilioAuthTokenSecretArn\": \"arn:aws:secretsmanager:us-west-2:123456789012:secret:greengrass-TwilioAuthToken-ntSlp6\", \"TwilioAuthTokenSecretArn-ResourceId\": \"TwilioAuthToken\", \"DefaultFromPhoneNumber\": \"4254492999\"}}]"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/55d0052b-0d7d-44d6-b56f-21867215e118/versions/33f709a0-c825-49cb-9eea-dc8964fbd635", "CreationTimestamp": "2019-06-24T20:46:30.134Z", "Id": "55d0052b-0d7d-44d6-b56f-21867215e118", "Version": "33f709a0-c825-49cb-9eea-dc8964fbd635" }

En el siguiente ejemplo de código, se muestra cómo utilizar create-connector-definition.

AWS CLI

Para crear una definición de conector

En el siguiente ejemplo de create-connector-definition, se crea una definición de conector y una versión inicial de la definición de conector. La versión inicial contiene un conector. Todos los conectores de una versión definen valores para sus parámetros.

aws greengrass create-connector-definition \ --name MySNSConnector \ --initial-version "{\"Connectors\": [{\"Id\":\"MySNSConnector\",\"ConnectorArn\":\"arn:aws:greengrass:us-west-2::/connectors/SNS/versions/1\",\"Parameters\": {\"DefaultSNSArn\":\"arn:aws:sns:us-west-2:123456789012:GGConnectorTopic\"}}]}"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "CreationTimestamp": "2019-06-19T19:30:01.300Z", "Id": "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "LastUpdatedTimestamp": "2019-06-19T19:30:01.300Z", "LatestVersion": "63c57963-c7c2-4a26-a7e2-7bf478ea2623", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8/versions/63c57963-c7c2-4a26-a7e2-7bf478ea2623", "Name": "MySNSConnector" }

Para obtener más información, consulte Introducción a los conectores de Greengrass (CLI) en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-core-definition-version.

AWS CLI

Para crear una versión de definición de núcleo

En el siguiente ejemplo de create-core-definition-version, se crea una versión de definición de núcleo y se asocia a la definición de núcleo especificada. La versión solo puede contener un núcleo. Para poder crear un núcleo, debe crear y aprovisionar el elemento de AWS IoT correspondiente. Este proceso incluye los siguientes comandos de iot, que devuelven los valores de ThingArn y CertificateArn necesarios para el comando create-core-definition-version.

Cree el elemento de AWS IoT que corresponda al dispositivo de núcleo:

aws iot create-thing \ --thing-name "MyCoreDevice"

Salida:

{ "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyCoreDevice", "thingName": "MyCoreDevice", "thingId": "cb419a19-9099-4515-9cec-e9b0e760608a" }

Cree las claves públicas y privadas, así como el certificado del dispositivo de núcleo para el elemento. En este ejemplo, se usa el comando create-keys-and-certificate y se requieren permisos de escritura para el directorio actual. También puede utilizar el comando create-certificate-from-csr.

aws iot create-keys-and-certificate \ --set-as-active \ --certificate-pem-outfile "myCore.cert.pem" \ --public-key-outfile "myCore.public.key" \ --private-key-outfile "myCore.private.key"

Salida:

{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz", "certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDWTCAkGgAwIBATgIUCgq6EGqou6zFqWgIZRndgQEFW+gwDQYJKoZIhvc...KdGewQS\n-----END CERTIFICATE-----\n", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBzrqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqKpRgnn6yq26U3y...wIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIABAKCAQEAqKpRgnn6yq26U3yt5YFZquyukfRjbMXDcNOK4rMCxDR...fvY4+te\n-----END RSA PRIVATE KEY-----\n" }, "certificateId": "123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz" }

Cree una política de AWS IoT que permita las acciones de iot y greengrass. Para simplificar, la siguiente política permite acciones en todos los recursos, pero su política debería ser más restrictiva.

aws iot create-policy \ --policy-name "Core_Devices" \ --policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}"

Salida:

{ "policyName": "Core_Devices", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/Core_Devices", "policyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}", "policyVersionId": "1" }

Asocie la política al certificado:

aws iot attach-policy \ --policy-name "Core_Devices" \ --target "arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz"

Este comando no genera ninguna salida.

Asocie el elemento al certificado:

aws iot attach-thing-principal \ --thing-name "MyCoreDevice" \ --principal "arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz"

Este comando no genera ninguna salida.

Cree la versión de la definición de núcleo:

aws greengrass create-core-definition-version \ --core-definition-id "582efe12-b05a-409e-9a24-a2ba1bcc4a12" \ --cores "[{\"Id\":\"MyCoreDevice\",\"ThingArn\":\"arn:aws:iot:us-west-2:123456789012:thing/MyCoreDevice\",\"CertificateArn\":\"arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz\",\"SyncShadow\":true}]"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/582efe12-b05a-409e-9a24-a2ba1bcc4a12/versions/3fdc1190-2ce5-44de-b98b-eec8f9571014", "Version": "3fdc1190-2ce5-44de-b98b-eec8f9571014", "CreationTimestamp": "2019-09-18T00:15:09.838Z", "Id": "582efe12-b05a-409e-9a24-a2ba1bcc4a12" }

Para obtener más información, consulte Configuración del software AWS IoT Greengrass Core en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-core-definition.

AWS CLI

Ejemplo 1: creación de una definición de núcleo vacía

En el siguiente ejemplo de create-core-definition, se crea una definición de núcleo de Greengrass vacía (sin versión inicial). Para poder utilizar el núcleo, debe utilizar el comando create-core-definition-version para proporcionar los demás parámetros del núcleo.

aws greengrass create-core-definition \ --name cliGroup_Core

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/b5c08008-54cb-44bd-9eec-c121b04283b5", "CreationTimestamp": "2019-06-25T18:23:22.106Z", "Id": "b5c08008-54cb-44bd-9eec-c121b04283b5", "LastUpdatedTimestamp": "2019-06-25T18:23:22.106Z", "Name": "cliGroup_Core" }

Ejemplo 2: creación de una definición de núcleo con una versión inicial

En el siguiente ejemplo de create-core-definition, se crea una definición de núcleo que especifica una versión de definición de núcleo inicial. La versión solo puede contener un núcleo. Para poder crear un núcleo, debe crear y aprovisionar el elemento de AWS IoT correspondiente. Este proceso incluye los siguientes comandos de iot, que devuelven los valores de ThingArn y CertificateArn necesarios para el comando create-core-definition.

Cree el elemento de AWS IoT que corresponda al dispositivo de núcleo:

aws iot create-thing \ --thing-name "MyCoreDevice"

Salida:

{ "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyCoreDevice", "thingName": "MyCoreDevice", "thingId": "cb419a19-9099-4515-9cec-e9b0e760608a" }

Cree las claves públicas y privadas, así como el certificado del dispositivo de núcleo para el elemento. En este ejemplo, se usa el comando create-keys-and-certificate y se requieren permisos de escritura para el directorio actual. También puede utilizar el comando create-certificate-from-csr.

aws iot create-keys-and-certificate \ --set-as-active \ --certificate-pem-outfile "myCore.cert.pem" \ --public-key-outfile "myCore.public.key" \ --private-key-outfile "myCore.private.key"

Salida:

{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz", "certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDWTCAkGgAwIBATgIUCgq6EGqou6zFqWgIZRndgQEFW+gwDQYJKoZIhvc...KdGewQS\n-----END CERTIFICATE-----\n", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBzrqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqKpRgnn6yq26U3y...wIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIABAKCAQEAqKpRgnn6yq26U3yt5YFZquyukfRjbMXDcNOK4rMCxDR...fvY4+te\n-----END RSA PRIVATE KEY-----\n" }, "certificateId": "123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz" }

Cree una política de AWS IoT que permita las acciones de iot y greengrass. Para simplificar, la siguiente política permite acciones en todos los recursos, pero su política debería ser más restrictiva.

aws iot create-policy \ --policy-name "Core_Devices" \ --policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}"

Salida:

{ "policyName": "Core_Devices", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/Core_Devices", "policyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}", "policyVersionId": "1" }

Asocie la política al certificado:

aws iot attach-policy \ --policy-name "Core_Devices" \ --target "arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz"

Este comando no genera ninguna salida.

Asocie el elemento al certificado:

aws iot attach-thing-principal \ --thing-name "MyCoreDevice" \ --principal "arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz"

Este comando no genera ninguna salida.

Cree la definición del núcleo:

aws greengrass create-core-definition \ --name "MyCores" \ --initial-version "{\"Cores\":[{\"Id\":\"MyCoreDevice\",\"ThingArn\":\"arn:aws:iot:us-west-2:123456789012:thing/MyCoreDevice\",\"CertificateArn\":\"arn:aws:iot:us-west-2:123456789012:cert/123a15ec415668c2349a76170b64ac0878231c1e21ec83c10e92a1EXAMPLExyz\",\"SyncShadow\":true}]}"

Salida:

{ "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/582efe12-b05a-409e-9a24-a2ba1bcc4a12/versions/cc87b5b3-8f4b-465d-944c-1d6de5dbfcdb", "Name": "MyCores", "LastUpdatedTimestamp": "2019-09-18T00:11:06.197Z", "LatestVersion": "cc87b5b3-8f4b-465d-944c-1d6de5dbfcdb", "CreationTimestamp": "2019-09-18T00:11:06.197Z", "Id": "582efe12-b05a-409e-9a24-a2ba1bcc4a12", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/582efe12-b05a-409e-9a24-a2ba1bcc4a12" }

Para obtener más información, consulte Configuración del software AWS IoT Greengrass Core en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte CreateCoreDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-deployment.

AWS CLI

Para crear una implementación para una versión de un grupo de Greengrass

En el siguiente ejemplo de create-deployment, se implementa la versión especificada de un grupo de Greengrass.

aws greengrass create-deployment \ --deployment-type NewDeployment \ --group-id "ce2e7d01-3240-4c24-b8e6-f6f6e7a9eeca" \ --group-version-id "dc40c1e9-e8c8-4d28-a84d-a9cad5f599c9"

Salida:

{ "DeploymentArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/ce2e7d01-3240-4c24-b8e6-f6f6e7a9eeca/deployments/bfceb608-4e97-45bc-af5c-460144270308", "DeploymentId": "bfceb608-4e97-45bc-af5c-460144270308" }

Para obtener más información, consulte Introducción a los conectores (CLI) en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte CreateDeployment en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-device-definition-version.

AWS CLI

Para crear una versión de definición de dispositivos

En el siguiente ejemplo de create-device-definition-version, se crea una versión de definición de dispositivo y se asocia a la definición de dispositivo especificada. La versión define dos dispositivos. Para poder crear un dispositivo de Greengrass, debe crear y aprovisionar primero el elemento de AWS IoT correspondiente. Este proceso incluye los siguientes comandos de iot que debe ejecutar para obtener la información necesaria para el comando de Greengrass:

Cree el elemento de AWS IoT que corresponda al dispositivo:

aws iot create-thing \ --thing-name "InteriorTherm"

Salida:

{ "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/InteriorTherm", "thingName": "InteriorTherm", "thingId": "01d4763c-78a6-46c6-92be-7add080394bf" }

Cree las claves públicas y privadas, así como el certificado del dispositivo para el elemento. En este ejemplo, se usa el comando create-keys-and-certificate y se requieren permisos de escritura para el directorio actual. También puede utilizar el comando create-certificate-from-csr.

aws iot create-keys-and-certificate \ --set-as-active \ --certificate-pem-outfile "myDevice.cert.pem" \ --public-key-outfile "myDevice.public.key" \ --private-key-outfile "myDevice.private.key"

Salida:

{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92", "certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDWTCAkGgAwIBATgIUCgq6EGqou6zFqWgIZRndgQEFW+gwDQYJKoZIhvc...KdGewQS\n-----END CERTIFICATE-----\n", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBzrqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqKpRgnn6yq26U3y...wIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIABAKCAQEAqKpRgnn6yq26U3yt5YFZquyukfRjbMXDcNOK4rMCxDR...fvY4+te\n-----END RSA PRIVATE KEY-----\n" }, "certificateId": "66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92" }

Cree una política de AWS IoT que permita las acciones de iot y greengrass. Para simplificar, la siguiente política permite realizar acciones en todos los recursos, pero su política puede ser más restrictiva:

aws iot create-policy \ --policy-name "GG_Devices" \ --policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}"

Salida:

{ "policyName": "GG_Devices", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GG_Devices", "policyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}", "policyVersionId": "1" }

Asocie la política al certificado:

aws iot attach-policy \ --policy-name "GG_Devices" \ --target "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92"

Asociación del elemento al certificado

aws iot attach-thing-principal \ --thing-name "InteriorTherm" \ --principal "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92"

Después de crear y configurar el elemento de IoT como se muestra arriba, use los valores de ThingArn y CertificateArn de los primeros dos comandos del siguiente ejemplo.

aws greengrass create-device-definition-version \ --device-definition-id "f9ba083d-5ad4-4534-9f86-026a45df1ccd" \ --devices "[{\"Id\":\"InteriorTherm\",\"ThingArn\":\"arn:aws:iot:us-west-2:123456789012:thing/InteriorTherm\",\"CertificateArn\":\"arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92\",\"SyncShadow\":true},{\"Id\":\"ExteriorTherm\",\"ThingArn\":\"arn:aws:iot:us-west-2:123456789012:thing/ExteriorTherm\",\"CertificateArn\":\"arn:aws:iot:us-west-2:123456789012:cert/6c52ce1b47bde88a637e9ccdd45fe4e4c2c0a75a6866f8f63d980ee22fa51e02\",\"SyncShadow\":true}]"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/83c13984-6fed-447e-84d5-5b8aa45d5f71", "Version": "83c13984-6fed-447e-84d5-5b8aa45d5f71", "CreationTimestamp": "2019-09-11T00:15:09.838Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd" }

En el siguiente ejemplo de código, se muestra cómo utilizar create-device-definition.

AWS CLI

Para crear una definición de dispositivo

En el siguiente ejemplo de create-device-definition, se crea una definición de dispositivo que especifica una versión de definición de dispositivo inicial. La versión inicial define dos dispositivos. Para poder crear un dispositivo de Greengrass, debe crear y aprovisionar primero el elemento de AWS IoT correspondiente. Este proceso incluye los siguientes comandos de iot que debe ejecutar para obtener la información necesaria para el comando de Greengrass:

Cree el elemento de AWS IoT que corresponda al dispositivo:

aws iot create-thing \ --thing-name "InteriorTherm"

Salida:

{ "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/InteriorTherm", "thingName": "InteriorTherm", "thingId": "01d4763c-78a6-46c6-92be-7add080394bf" }

Cree las claves públicas y privadas, así como el certificado del dispositivo para el elemento. En este ejemplo, se usa el comando create-keys-and-certificate y se requieren permisos de escritura para el directorio actual. También puede utilizar el comando create-certificate-from-csr.

aws iot create-keys-and-certificate \ --set-as-active \ --certificate-pem-outfile "myDevice.cert.pem" \ --public-key-outfile "myDevice.public.key" \ --private-key-outfile "myDevice.private.key"

Salida:

{ "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92", "certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDWTCAkGgAwIBATgIUCgq6EGqou6zFqWgIZRndgQEFW+gwDQYJKoZIhvc...KdGewQS\n-----END CERTIFICATE-----\n", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBzrqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqKpRgnn6yq26U3y...wIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIABAKCAQEAqKpRgnn6yq26U3yt5YFZquyukfRjbMXDcNOK4rMCxDR...fvY4+te\n-----END RSA PRIVATE KEY-----\n" }, "certificateId": "66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92" }

Cree una política de AWS IoT que permita las acciones de iot y greengrass. Para simplificar, la siguiente política permite realizar acciones en todos los recursos, pero su política puede ser más restrictiva:

aws iot create-policy \ --policy-name "GG_Devices" \ --policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}"

Salida:

{ "policyName": "GG_Devices", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GG_Devices", "policyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"iot:Publish\",\"iot:Subscribe\",\"iot:Connect\",\"iot:Receive\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"iot:GetThingShadow\",\"iot:UpdateThingShadow\",\"iot:DeleteThingShadow\"],\"Resource\":[\"*\"]},{\"Effect\":\"Allow\",\"Action\":[\"greengrass:*\"],\"Resource\":[\"*\"]}]}", "policyVersionId": "1" }

Asocie la política al certificado:

aws iot attach-policy \ --policy-name "GG_Devices" \ --target "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92"

Asociación del elemento al certificado

aws iot attach-thing-principal \ --thing-name "InteriorTherm" \ --principal "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92"

Después de crear y configurar el elemento de IoT como se muestra arriba, use los valores de ThingArn y CertificateArn de los primeros dos comandos del siguiente ejemplo.

aws greengrass create-device-definition \ --name "Sensors" \ --initial-version "{\"Devices\":[{\"Id\":\"InteriorTherm\",\"ThingArn\":\"arn:aws:iot:us-west-2:123456789012:thing/InteriorTherm\",\"CertificateArn\":\"arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92\",\"SyncShadow\":true},{\"Id\":\"ExteriorTherm\",\"ThingArn\":\"arn:aws:iot:us-west-2:123456789012:thing/ExteriorTherm\",\"CertificateArn\":\"arn:aws:iot:us-west-2:123456789012:cert/6c52ce1b47bde88a637e9ccdd45fe4e4c2c0a75a6866f8f63d980ee22fa51e02\",\"SyncShadow\":true}]}"

Salida:

{ "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/3b5cc510-58c1-44b5-9d98-4ad858ffa795", "Name": "Sensors", "LastUpdatedTimestamp": "2019-09-11T00:11:06.197Z", "LatestVersion": "3b5cc510-58c1-44b5-9d98-4ad858ffa795", "CreationTimestamp": "2019-09-11T00:11:06.197Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd" }
  • Para obtener información sobre la API, consulte CreateDeviceDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-function-definition-version.

AWS CLI

Para crear una versión de la definición de función

En el siguiente ejemplo de create-function-definition-version, se crea una nueva versión de la definición de función especificada. Esta versión especifica una única función cuyo ID es Hello-World-function, permite el acceso al sistema de archivos y especifica un tamaño máximo de memoria y un período de tiempo de espera.

aws greengrass create-function-definition-version \ --cli-input-json "{\"FunctionDefinitionId\": \"e626e8c9-3b8f-4bf3-9cdc-d26ecdeb9fa3\",\"Functions\": [{\"Id\": \"Hello-World-function\", \"FunctionArn\": \""arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld_Counter:gghw-alias"\",\"FunctionConfiguration\": {\"Environment\": {\"AccessSysfs\": true},\"Executable\": \"greengrassHelloWorldCounter.function_handler\",\"MemorySize\": 16000,\"Pinned\": false,\"Timeout\": 25}}]}"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/e626e8c9-3b8f-4bf3-9cdc-d26ecdeb9fa3/versions/74abd1cc-637e-4abe-8684-9a67890f4043", "CreationTimestamp": "2019-06-25T22:03:43.376Z", "Id": "e626e8c9-3b8f-4bf3-9cdc-d26ecdeb9fa3", "Version": "74abd1cc-637e-4abe-8684-9a67890f4043" }

En el siguiente ejemplo de código, se muestra cómo utilizar create-function-definition.

AWS CLI

Para crear una definición de función de Lambda

En el siguiente ejemplo de create-function-definition, se crea una definición de función de Lambda y una versión inicial al proporcionar una lista de funciones de Lambda (en este caso, una lista con solo una función llamada TempMonitorFunction) y sus configuraciones. Para poder crear la definición de función, necesita el ARN de la función de Lambda. Para crear la función y su alias, utilice los comandos create-function y publish-version de Lambda. El comando create-function de Lambda requiere el ARN del rol de ejecución, aunque AWS IoT Greengrass no utilice ese rol porque los permisos se especifican en el rol de grupo de Greengrass. Puede usar el comando create-role de IAM para crear un rol vacío y obtener un ARN para usarlo con create-function de Lambda, o usar un rol de ejecución existente.

aws greengrass create-function-definition \ --name MyGreengrassFunctions \ --initial-version "{\"Functions\": [{\"Id\": \"TempMonitorFunction\", \"FunctionArn\": \"arn:aws:lambda:us-west-2:123456789012:function:TempMonitor:GG_TempMonitor\", \"FunctionConfiguration\": {\"Executable\": \"temp_monitor.function_handler\", \"MemorySize\": 16000,\"Timeout\": 5}}]}"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/3b0d0080-87e7-48c6-b182-503ec743a08b", "CreationTimestamp": "2019-06-19T22:24:44.585Z", "Id": "3b0d0080-87e7-48c6-b182-503ec743a08b", "LastUpdatedTimestamp": "2019-06-19T22:24:44.585Z", "LatestVersion": "67f918b9-efb4-40b0-b87c-de8c9faf085b", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/3b0d0080-87e7-48c6-b182-503ec743a08b/versions/67f918b9-efb4-40b0-b87c-de8c9faf085b", "Name": "MyGreengrassFunctions" }

Para obtener más información, consulte Cómo configurar el acceso a recursos locales mediante la interfaz de la línea de comando de AWS en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-group-certificate-authority.

AWS CLI

Para crear una entidad de certificación (CA) para un grupo

En el siguiente ejemplo de create-group-certificate-authority, se crea o gira una CA para el grupo especificado.

aws greengrass create-group-certificate-authority \ --group-id "8eaadd72-ce4b-4f15-892a-0cc4f3a343f1"

Salida:

{ "GroupCertificateAuthorityArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/8eaadd72-ce4b-4f15-892a-0cc4f3a343f1/certificateauthorities/d31630d674c4437f6c5dbc0dca56312a902171ce2d086c38e509c8EXAMPLEcc5" }

Para obtener más información, consulte AWS IoT Greengrass Security en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-group-version.

AWS CLI

Para crear una versión de un grupo de Greengrass

En el ejemplo siguiente de create-group-version, se crea una versión de grupo y se asocia al grupo especificado. La versión hace referencia a las versiones del núcleo, recurso, conector, función y suscripción que contienen las entidades que se incluirán en esta versión de grupo. Para poder crear la versión de grupo, debe crear estas entidades.

Para crear una definición de recurso con una versión inicial, utilice el comando create-resource-definition. Para crear una definición de conector con una versión inicial, utilice el comando create-connector-definition. Para crear una definición de función con una versión inicial, utilice el comando create-function-definition. Para crear una definición de suscripción con una versión inicial, utilice el comando create-subscription-definition. Para recuperar el ARN de la última versión de definición de núcleo, utilice el comando get-group-version y especifique el ID de la última versión de grupo.

aws greengrass create-group-version \ --group-id "ce2e7d01-3240-4c24-b8e6-f6f6e7a9eeca" \ --core-definition-version-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/6a630442-8708-4838-ad36-eb98849d975e/versions/6c87151b-1fb4-4cb2-8b31-6ee715d8f8ba" \ --resource-definition-version-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/c8bb9ebc-c3fd-40a4-9c6a-568d75569d38/versions/a5f94d0b-f6bc-40f4-bb78-7a1c5fe13ba1" \ --connector-definition-version-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/55d0052b-0d7d-44d6-b56f-21867215e118/versions/78a3331b-895d-489b-8823-17b4f9f418a0" \ --function-definition-version-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/3b0d0080-87e7-48c6-b182-503ec743a08b/versions/67f918b9-efb4-40b0-b87c-de8c9faf085b" \ --subscription-definition-version-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/9d611d57-5d5d-44bd-a3b4-feccbdd69112/versions/aa645c47-ac90-420d-9091-8c7ffa4f103f"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/ce2e7d01-3240-4c24-b8e6-f6f6e7a9eeca/versions/e10b0459-4345-4a09-88a4-1af1f5d34638", "CreationTimestamp": "2019-06-20T18:42:47.020Z", "Id": "ce2e7d01-3240-4c24-b8e6-f6f6e7a9eeca", "Version": "e10b0459-4345-4a09-88a4-1af1f5d34638" }

Para obtener más información, consulte Información general del modelo de objetos del grupo de Greengrass de IoT de AWS en la Guía para desarrolladores de IoT AWSGreengrass.

  • Para obtener información sobre la API, consulte CreateGroupVersion en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-group.

AWS CLI

Para crear un grupo de Greengrass

En el siguiente ejemplo de create-group, se crea un grupo llamado cli-created-group.

aws greengrass create-group \ --name cli-created-group

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/4e22bd92-898c-436b-ade5-434d883ff749", "CreationTimestamp": "2019-06-25T18:07:17.688Z", "Id": "4e22bd92-898c-436b-ade5-434d883ff749", "LastUpdatedTimestamp": "2019-06-25T18:07:17.688Z", "Name": "cli-created-group" }

Para obtener más información, consulte Información general del modelo de objetos del grupo de Greengrass de IoT de AWS en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte CreateGroup en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-logger-definition-version.

AWS CLI

Para crear una versión de definición de registrador

En el siguiente ejemplo de create-logger-definition-version, se crea una versión de definición de registrador y se asocia a una definición de registrador. La versión define cuatro configuraciones de registro: 1) registros de componentes del sistema en el sistema de archivos del dispositivo de núcleo, 2) registros de funciones de Lambda definidas por el usuario en el sistema de archivos del dispositivo de núcleo, 3) registros de componentes del sistema en Registros de Amazon CloudWatch y 4) registros de funciones Lambda definidas por el usuario en Registros de Amazon CloudWatch. Nota: Para la integración de Registros de CloudWatch, el rol de grupo debe conceder los permisos adecuados.

aws greengrass create-logger-definition-version \ --logger-definition-id "a454b62a-5d56-4ca9-bdc4-8254e1662cb0" \ --loggers "[{\"Id\":\"1\",\"Component\":\"GreengrassSystem\",\"Level\":\"ERROR\",\"Space\":10240,\"Type\":\"FileSystem\"},{\"Id\":\"2\",\"Component\":\"Lambda\",\"Level\":\"INFO\",\"Space\":10240,\"Type\":\"FileSystem\"},{\"Id\":\"3\",\"Component\":\"GreengrassSystem\",\"Level\":\"WARN\",\"Type\":\"AWSCloudWatch\"},{\"Id\":\"4\",\"Component\":\"Lambda\",\"Level\":\"INFO\",\"Type\":\"AWSCloudWatch\"}]"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/a454b62a-5d56-4ca9-bdc4-8254e1662cb0/versions/49aedb1e-01a3-4d39-9871-3a052573f1ea", "Version": "49aedb1e-01a3-4d39-9871-3a052573f1ea", "CreationTimestamp": "2019-07-24T00:04:48.523Z", "Id": "a454b62a-5d56-4ca9-bdc4-8254e1662cb0" }

Para obtener más información, consulte Supervisión de los registros de AWS IoT Greengrass en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-logger-definition.

AWS CLI

Para crear una definición de registrador

En el siguiente ejemplo de create-logger-definition, se crea una definición de registrador que contiene una versión de definición de registrador inicial. La versión inicial define cuatro configuraciones de registro: 1) registros de componentes del sistema en el sistema de archivos del dispositivo de núcleo, 2) registros de funciones de Lambda definidas por el usuario en el sistema de archivos del dispositivo de núcleo y 3) registros de funciones de Lambda definidas por el usuario en Registros de Amazon CloudWatch. Nota: Para la integración de Registros de CloudWatch, el rol de grupo debe conceder los permisos adecuados.

aws greengrass create-logger-definition \ --name "LoggingConfigs" \ --initial-version "{\"Loggers\":[{\"Id\":\"1\",\"Component\":\"GreengrassSystem\",\"Level\":\"ERROR\",\"Space\":10240,\"Type\":\"FileSystem\"},{\"Id\":\"2\",\"Component\":\"Lambda\",\"Level\":\"INFO\",\"Space\":10240,\"Type\":\"FileSystem\"},{\"Id\":\"3\",\"Component\":\"Lambda\",\"Level\":\"INFO\",\"Type\":\"AWSCloudWatch\"}]}"

Salida:

{ "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/a454b62a-5d56-4ca9-bdc4-8254e1662cb0/versions/de1d9854-1588-4525-b25e-b378f60f2322", "Name": "LoggingConfigs", "LastUpdatedTimestamp": "2019-07-23T23:52:17.165Z", "LatestVersion": "de1d9854-1588-4525-b25e-b378f60f2322", "CreationTimestamp": "2019-07-23T23:52:17.165Z", "Id": "a454b62a-5d56-4ca9-bdc4-8254e1662cb0", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/a454b62a-5d56-4ca9-bdc4-8254e1662cb0" }

Para obtener más información, consulte Supervisión de los registros de AWS IoT Greengrass en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte CreateLoggerDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-resource-definition-version.

AWS CLI

Para crear una versión de una definición de recurso

En el siguiente ejemplo de create-resource-definition-version, se crea una nueva versión de un TwilioAuthToken.

aws greengrass create-resource-definition-version \ --resource-definition-id "c8bb9ebc-c3fd-40a4-9c6a-568d75569d38" \ --resources "[{\"Id\": \"TwilioAuthToken\",\"Name\": \"MyTwilioAuthToken\",\"ResourceDataContainer\": {\"SecretsManagerSecretResourceData\": {\"ARN\": \"arn:aws:secretsmanager:us-west-2:123456789012:secret:greengrass-TwilioAuthToken-ntSlp6\"}}}]"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/c8bb9ebc-c3fd-40a4-9c6a-568d75569d38/versions/b3bcada0-5fb6-42df-bf0b-1ee4f15e769e", "CreationTimestamp": "2019-06-24T21:17:25.623Z", "Id": "c8bb9ebc-c3fd-40a4-9c6a-568d75569d38", "Version": "b3bcada0-5fb6-42df-bf0b-1ee4f15e769e" }

En el siguiente ejemplo de código, se muestra cómo utilizar create-resource-definition.

AWS CLI

Para crear una definición de recurso

En el siguiente ejemplo de create-resource-definition, se crea una definición de recurso que contiene una lista de los recursos que se utilizarán en un grupo de Greengrass. En este ejemplo, se incluye una versión inicial de la definición de recurso al proporcionar una lista de recursos. La lista incluye un recurso para un token de autorización de Twilio y el ARN para un secreto almacenado en AWS Secrets Manager. Para poder crear la definición del recurso, debe crear el secreto.

aws greengrass create-resource-definition \ --name MyGreengrassResources \ --initial-version "{\"Resources\": [{\"Id\": \"TwilioAuthToken\",\"Name\": \"MyTwilioAuthToken\",\"ResourceDataContainer\": {\"SecretsManagerSecretResourceData\": {\"ARN\": \"arn:aws:secretsmanager:us-west-2:123456789012:secret:greengrass-TwilioAuthToken-ntSlp6\"}}}]}"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/c8bb9ebc-c3fd-40a4-9c6a-568d75569d38", "CreationTimestamp": "2019-06-19T21:51:28.212Z", "Id": "c8bb9ebc-c3fd-40a4-9c6a-568d75569d38", "LastUpdatedTimestamp": "2019-06-19T21:51:28.212Z", "LatestVersion": "a5f94d0b-f6bc-40f4-bb78-7a1c5fe13ba1", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/c8bb9ebc-c3fd-40a4-9c6a-568d75569d38/versions/a5f94d0b-f6bc-40f4-bb78-7a1c5fe13ba1", "Name": "MyGreengrassResources" }

Para obtener más información, consulte Cómo configurar el acceso a recursos locales mediante la interfaz de la línea de comando de AWS en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar create-software-update-job.

AWS CLI

Para crear un trabajo de actualización para el software de un núcleo

En el siguiente ejemplo de create-software-update-job, se crea un trabajo de actualización por vía inalámbrica (OTA) para actualizar el software de AWS IoT Greengrass Core en el núcleo cuyo nombre es MyFirstGroup_Core. Este comando requiere un rol de IAM que permita el acceso a los paquetes de actualización de software en Amazon S3 y que incluya iot.amazonaws.com como entidad de confianza.

aws greengrass create-software-update-job \ --update-targets-architecture armv7l \ --update-targets [\"arn:aws:iot:us-west-2:123456789012:thing/MyFirstGroup_Core\"] \ --update-targets-operating-system raspbian \ --software-to-update core \ --s3-url-signer-role arn:aws:iam::123456789012:role/OTA_signer_role \ --update-agent-log-level WARN

Salida:

{ "IotJobId": "GreengrassUpdateJob_30b353e3-3af7-4786-be25-4c446663c09e", "IotJobArn": "arn:aws:iot:us-west-2:123456789012:job/GreengrassUpdateJob_30b353e3-3af7-4786-be25-4c446663c09e", "PlatformSoftwareVersion": "1.9.3" }

Para obtener más información, consulte Actualizaciones de OTA del software de AWS IoT Greengrass Core en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte CreateSoftwareUpdateJob en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-subscription-definition-version.

AWS CLI

Para crear una versión nueva de una definición de suscripción

En el siguiente ejemplo de create-subscription-definition-version, se crea una versión nueva de una definición de suscripción que contiene tres suscripciones: una notificación de desencadenador, una entrada de temperatura y un estado de salida.

aws greengrass create-subscription-definition-version \ --subscription-definition-id "9d611d57-5d5d-44bd-a3b4-feccbdd69112" \ --subscriptions "[{\"Id\": \"TriggerNotification\", \"Source\": \"arn:aws:lambda:us-west-2:123456789012:function:TempMonitor:GG_TempMonitor\", \"Subject\": \"twilio/txt\", \"Target\": \"arn:aws:greengrass:us-west-2::/connectors/TwilioNotifications/versions/1\"},{\"Id\": \"TemperatureInput\", \"Source\": \"cloud\", \"Subject\": \"temperature/input\", \"Target\": \"arn:aws:lambda:us-west-2:123456789012:function:TempMonitor:GG_TempMonitor\"},{\"Id\": \"OutputStatus\", \"Source\": \"arn:aws:greengrass:us-west-2::/connectors/TwilioNotifications/versions/1\", \"Subject\": \"twilio/message/status\", \"Target\": \"cloud\"}]"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/9d611d57-5d5d-44bd-a3b4-feccbdd69112/versions/7b65dfae-50b6-4d0f-b3e0-27728bfb0620", "CreationTimestamp": "2019-06-24T21:21:33.837Z", "Id": "9d611d57-5d5d-44bd-a3b4-feccbdd69112", "Version": "7b65dfae-50b6-4d0f-b3e0-27728bfb0620" }

En el siguiente ejemplo de código, se muestra cómo utilizar create-subscription-definition.

AWS CLI

Para crear una definición de suscripción

En el siguiente ejemplo de create-subscription-definition, se crea una definición de suscripción y se especifica su versión inicial. La versión inicial contiene tres suscripciones: una para el tema de MQTT al que está suscrito el conector, otra para permitir que una función reciba lecturas de temperatura de AWS IoT y otra para permitir que AWS IoT reciba información de estado del conector. El ejemplo proporciona el ARN para el alias de la función de Lambda que se creó anteriormente mediante el comando create-alias de Lambda.

aws greengrass create-subscription-definition \ --initial-version "{\"Subscriptions\": [{\"Id\": \"TriggerNotification\", \"Source\": \"arn:aws:lambda:us-west-2:123456789012:function:TempMonitor:GG_TempMonitor\", \"Subject\": \"twilio/txt\", \"Target\": \"arn:aws:greengrass:us-west-2::/connectors/TwilioNotifications/versions/1\"},{\"Id\": \"TemperatureInput\", \"Source\": \"cloud\", \"Subject\": \"temperature/input\", \"Target\": \"arn:aws:lambda:us-west-2:123456789012:function:TempMonitor:GG_TempMonitor\"},{\"Id\": \"OutputStatus\", \"Source\": \"arn:aws:greengrass:us-west-2::/connectors/TwilioNotifications/versions/1\", \"Subject\": \"twilio/message/status\", \"Target\": \"cloud\"}]}"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/9d611d57-5d5d-44bd-a3b4-feccbdd69112", "CreationTimestamp": "2019-06-19T22:34:26.677Z", "Id": "9d611d57-5d5d-44bd-a3b4-feccbdd69112", "LastUpdatedTimestamp": "2019-06-19T22:34:26.677Z", "LatestVersion": "aa645c47-ac90-420d-9091-8c7ffa4f103f", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/9d611d57-5d5d-44bd-a3b4-feccbdd69112/versions/aa645c47-ac90-420d-9091-8c7ffa4f103f" }

Para obtener más información, consulte Introducción a los conectores (CLI) en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-connector-definition.

AWS CLI

Para eliminar una definición de conector

En el siguiente ejemplo de delete-connector-definition, se elimina la definición de conector de Greengrass especificada. Si elimina una definición de conector utilizada por un grupo, ese grupo no se podrá implementar correctamente.

aws greengrass delete-connector-definition \ --connector-definition-id "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8"

Este comando no genera ninguna salida.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-core-definition.

AWS CLI

Para eliminar una definición de núcleo

En el siguiente ejemplo de delete-core-definition, se elimina la definición de núcleo de Greengrass especificada, incluidas todas las versiones. Si elimina un núcleo que está asociado a un grupo de Greengrass, ese grupo no se podrá implementar correctamente.

aws greengrass delete-core-definition \ --core-definition-id "ff36cc5f-9f98-4994-b468-9d9b6dc52abd"

Este comando no genera ninguna salida.

  • Para obtener información sobre la API, consulte DeleteCoreDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-device-definition.

AWS CLI

Para eliminar una definición de dispositivo

En el siguiente ejemplo de delete-device-definition, se elimina la definición de dispositivo especificada, incluidas todas sus versiones. Si elimina una versión de definición de dispositivo utilizada por una versión de grupo, la versión de grupo no se podrá implementar correctamente.

aws greengrass delete-device-definition \ --device-definition-id "f9ba083d-5ad4-4534-9f86-026a45df1ccd"

Este comando no genera ninguna salida.

  • Para obtener información sobre la API, consulte DeleteDeviceDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-function-definition.

AWS CLI

Para eliminar una definición de función

En el siguiente ejemplo de delete-function-definition, se elimina la definición de función de Greengrass especificada. Si elimina una definición de función utilizada por un grupo, ese grupo no se podrá implementar correctamente.

aws greengrass delete-function-definition \ --function-definition-id "fd4b906a-dff3-4c1b-96eb-52ebfcfac06a"

Este comando no genera ninguna salida.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-group.

AWS CLI

Para eliminar un grupo

En el siguiente ejemplo de delete-group, se elimina el grupo de Greengrass especificado.

aws greengrass delete-group \ --group-id "4e22bd92-898c-436b-ade5-434d883ff749"

Este comando no genera ninguna salida.

  • Para obtener información sobre la API, consulte DeleteGroup en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-logger-definition.

AWS CLI

Para eliminar una definición de registrador

En el siguiente ejemplo de delete-logger-definition, se elimina la definición de registrador especificada, incluidas todas sus versiones. Si elimina una versión de definición de registrador utilizada por una versión de grupo, la versión de grupo no se podrá implementar correctamente.

aws greengrass delete-logger-definition \ --logger-definition-id "a454b62a-5d56-4ca9-bdc4-8254e1662cb0"

Este comando no genera ninguna salida.

Para obtener más información, consulte Supervisión de los registros de AWS IoT Greengrass en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte DeleteLoggerDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-resource-definition.

AWS CLI

Para eliminar una definición de recurso

En el siguiente ejemplo de delete-resource-definition, se elimina la definición de recurso especificada, incluidas todas las versiones de recursos. Si elimina una definición de recurso utilizada por un grupo, ese grupo no se podrá implementar correctamente.

aws greengrass delete-resource-definition \ --resource-definition-id "ad8c101d-8109-4b0e-b97d-9cc5802ab658"

Este comando no genera ninguna salida.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-subscription-definition.

AWS CLI

Para eliminar una definición de suscripción

En el siguiente ejemplo de delete-subscription-definition, se elimina la definición de suscripción de Greengrass especificada. Si elimina una suscripción utilizada por un grupo, ese grupo no se podrá implementar correctamente.

aws greengrass delete-subscription-definition \ --subscription-definition-id "cd6f1c37-d9a4-4e90-be94-01a7404f5967"

Este comando no genera ninguna salida.

En el siguiente ejemplo de código, se muestra cómo utilizar disassociate-role-from-group.

AWS CLI

Para desasociar el rol de un grupo de Greengrass

En el siguiente ejemplo de disassociate-role-from-group, se desasocia el rol de IAM de un grupo de Greengrass especificado.

aws greengrass disassociate-role-from-group \ --group-id 2494ee3f-7f8a-4e92-a78b-d205f808b84b

Salida:

{ "DisassociatedAt": "2019-09-10T20:05:49Z" }

Para obtener más información, consulte Configuración del rol del grupo en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar disassociate-service-role-from-account.

AWS CLI

Para desasociar un rol de servicio de su cuenta de AWS

En el siguiente ejemplo de disassociate-service-role-from-account, se elimina el rol de servicio asociado a su cuenta de AWS. Si no utiliza el rol de servicio en ninguna región de AWS, utilice el comando delete-role-policy para separar la política administrada de AWSGreengrassResourceAccessRolePolicy del rol y, a continuación, utilice el comando delete-role para eliminar el rol.

aws greengrass disassociate-service-role-from-account

Salida:

{ "DisassociatedAt": "2019-06-25T22:12:55Z" }

Para obtener más información, consulte Greengrass service role en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar get-associated-role.

AWS CLI

Para obtener el rol asociado a un grupo de Greengrass

En el siguiente ejemplo de get-associated-role, se obtiene el rol de IAM asociado al grupo de Greengrass especificado. Las funciones y conectores de Lambda locales utilizan el rol de grupo para acceder a los servicios de AWS.

aws greengrass get-associated-role \ --group-id 2494ee3f-7f8a-4e92-a78b-d205f808b84b

Salida:

{ "RoleArn": "arn:aws:iam::123456789012:role/GG-Group-Role", "AssociatedAt": "2019-09-10T20:03:30Z" }

Para obtener más información, consulte Configuración del rol del grupo en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte GetAssociatedRole en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-bulk-deployment-status.

AWS CLI

Para comprobar el estado de la implementación por lotes

En el siguiente ejemplo de get-bulk-deployment-status, se recupera la información de estado para la operación de implementación por lotes especificada. En este ejemplo, el archivo que especifica los grupos que se implementarán tiene un registro de entrada no válido.

aws greengrass get-bulk-deployment-status \ --bulk-deployment-id "870fb41b-6288-4e0c-bc76-a7ba4b4d3267"

Salida:

{ "BulkDeploymentMetrics": { "InvalidInputRecords": 1, "RecordsProcessed": 1, "RetryAttempts": 0 }, "BulkDeploymentStatus": "Completed", "CreatedAt": "2019-06-25T16:11:33.265Z", "tags": {} }

Para obtener más información, consulte Create Bulk Deployments for Groups en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte GetBulkDeploymentStatus en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-connectivity-info.

AWS CLI

Para obtener la información de conectividad para un núcleo de Greengrass

En el siguiente ejemplo de get-connectivity-info, se muestran los puntos de conexión que los dispositivos pueden usar para conectarse al núcleo de Greengrass especificado. La información de conectividad es una lista de direcciones IP o nombres de dominio, con los números de puerto correspondientes y los metadatos opcionales definidos por el cliente.

aws greengrass get-connectivity-info \ --thing-name "MyGroup_Core"

Salida:

{ "ConnectivityInfo": [ { "Metadata": "", "PortNumber": 8883, "HostAddress": "127.0.0.1", "Id": "AUTOIP_127.0.0.1_0" }, { "Metadata": "", "PortNumber": 8883, "HostAddress": "192.168.1.3", "Id": "AUTOIP_192.168.1.3_1" }, { "Metadata": "", "PortNumber": 8883, "HostAddress": "::1", "Id": "AUTOIP_::1_2" }, { "Metadata": "", "PortNumber": 8883, "HostAddress": "fe80::1e69:ed93:f5b:f6d", "Id": "AUTOIP_fe80::1e69:ed93:f5b:f6d_3" } ] }
  • Para obtener información sobre la API, consulte GetConnectivityInfo en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-connector-definition-version.

AWS CLI

Para recuperar información sobre una versión específica de una definición de conector

En el siguiente ejemplo de get-connector-definition-version, se recupera información sobre la versión especificada de la definición de conector especificada. Para recuperar los ID de todas las versiones de la definición de conector, utilice el comando list-connector-definition-versions. Para recuperar el ID de la última versión agregada a la definición del conector, utilice el comando get-connector-definition y compruebe la propiedad LatestVersion.

aws greengrass get-connector-definition-version \ --connector-definition-id "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8" \ --connector-definition-version-id "63c57963-c7c2-4a26-a7e2-7bf478ea2623"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8/versions/63c57963-c7c2-4a26-a7e2-7bf478ea2623", "CreationTimestamp": "2019-06-19T19:30:01.300Z", "Definition": { "Connectors": [ { "ConnectorArn": "arn:aws:greengrass:us-west-2::/connectors/SNS/versions/1", "Id": "MySNSConnector", "Parameters": { "DefaultSNSArn": "arn:aws:sns:us-west-2:123456789012:GGConnectorTopic" } } ] }, "Id": "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "Version": "63c57963-c7c2-4a26-a7e2-7bf478ea2623" }

Para obtener más información, consulte Integrate with Services and Protocols Using Greengrass Connectors en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar get-connector-definition.

AWS CLI

Para recuperar información sobre una definición de conector

En el siguiente ejemplo de get-connector-definition, se recupera información sobre la definición del conector especificada. Para recuperar los ID de las definiciones de conector, utilice el comando list-connector-definitions.

aws greengrass get-connector-definition \ --connector-definition-id "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "CreationTimestamp": "2019-06-19T19:30:01.300Z", "Id": "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "LastUpdatedTimestamp": "2019-06-19T19:30:01.300Z", "LatestVersion": "63c57963-c7c2-4a26-a7e2-7bf478ea2623", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8/versions/63c57963-c7c2-4a26-a7e2-7bf478ea2623", "Name": "MySNSConnector", "tags": {} }

Para obtener más información, consulte Integrate with Services and Protocols Using Greengrass Connectors en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte GetConnectorDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-core-definition-version.

AWS CLI

Para recuperar detalles sobre una versión específica de la definición de núcleo de Greengrass

En el siguiente ejemplo de get-core-definition-version, se recupera información sobre la versión especificada de la definición de núcleo especificada. Para recuperar los ID de todas las versiones de la definición de núcleo, utilice el comando list-core-definition-versions. Para recuperar el ID de la última versión agregada a la definición de núcleo, utilice el comando get-core-definition y compruebe la propiedad LatestVersion.

aws greengrass get-core-definition-version \ --core-definition-id "c906ed39-a1e3-4822-a981-7b9bd57b4b46" \ --core-definition-version-id "42aeeac3-fd9d-4312-a8fd-ffa9404a20e0"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/c906ed39-a1e3-4822-a981-7b9bd57b4b46/versions/42aeeac3-fd9d-4312-a8fd-ffa9404a20e0", "CreationTimestamp": "2019-06-18T16:21:21.351Z", "Definition": { "Cores": [ { "CertificateArn": "arn:aws:iot:us-west-2:123456789012:cert/928dea7b82331b47c3ff77b0e763fc5e64e2f7c884e6ef391baed9b6b8e21b45", "Id": "1a39aac7-0885-4417-91f6-23e4cea6c511", "SyncShadow": false, "ThingArn": "arn:aws:iot:us-west-2:123456789012:thing/GGGroup4Pi3_Core" } ] }, "Id": "c906ed39-a1e3-4822-a981-7b9bd57b4b46", "Version": "42aeeac3-fd9d-4312-a8fd-ffa9404a20e0" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-core-definition.

AWS CLI

Para recuperar los detalles de una definición de núcleo de Greengrass

En el siguiente ejemplo de get-core-definition, se recupera información sobre la definición de núcleo especificada. Para recuperar los ID de sus definiciones de núcleo, utilice el comando list-core-definitions.

aws greengrass get-core-definition \ --core-definition-id "c906ed39-a1e3-4822-a981-7b9bd57b4b46"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/237d6916-27cf-457f-ba0c-e86cfb5d25cd", "CreationTimestamp": "2018-10-18T04:47:06.721Z", "Id": "237d6916-27cf-457f-ba0c-e86cfb5d25cd", "LastUpdatedTimestamp": "2018-10-18T04:47:06.721Z", "LatestVersion": "bd2cd6d4-2bc5-468a-8962-39e071e34b68", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/237d6916-27cf-457f-ba0c-e86cfb5d25cd/versions/bd2cd6d4-2bc5-468a-8962-39e071e34b68", "tags": {} }
  • Para obtener información sobre la API, consulte GetCoreDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-deployment-status.

AWS CLI

Para recuperar el estado de una implementación

En el siguiente ejemplo de get-deployment-status, se recupera el estado de la implementación especificada del grupo de Greengrass especificado. Para obtener el ID de implementación, utilice el comando list-deployments y especifique el ID del grupo.

aws greengrass get-deployment-status \ --group-id "1013db12-8b58-45ff-acc7-704248f66731" \ --deployment-id "1065b8a0-812b-4f21-9d5d-e89b232a530f"

Salida:

{ "DeploymentStatus": "Success", "DeploymentType": "NewDeployment", "UpdatedAt": "2019-06-18T17:04:44.761Z" }
  • Para obtener información sobre la API, consulte GetDeploymentStatus en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-device-definition-version.

AWS CLI

Para obtener una versión de definición de dispositivo

En el siguiente ejemplo de get-device-definition-version, se recupera información sobre la versión especificada de la definición de dispositivo especificada. Para recuperar los ID de todas las versiones de la definición de dispositivo, utilice el comando list-device-definition-versions. Para recuperar el ID de la última versión agregada a la definición de dispositivo, utilice el comando get-device-definition y compruebe la propiedad LatestVersion.

aws greengrass get-device-definition-version \ --device-definition-id "f9ba083d-5ad4-4534-9f86-026a45df1ccd" \ --device-definition-version-id "83c13984-6fed-447e-84d5-5b8aa45d5f71"

Salida:

{ "Definition": { "Devices": [ { "CertificateArn": "arn:aws:iot:us-west-2:123456789012:cert/6c52ce1b47bde88a637e9ccdd45fe4e4c2c0a75a6866f8f63d980ee22fa51e02", "ThingArn": "arn:aws:iot:us-west-2:123456789012:thing/ExteriorTherm", "SyncShadow": true, "Id": "ExteriorTherm" }, { "CertificateArn": "arn:aws:iot:us-west-2:123456789012:cert/66a415ec415668c2349a76170b64ac0878231c1e21ec83c10e92a18bd568eb92", "ThingArn": "arn:aws:iot:us-west-2:123456789012:thing/InteriorTherm", "SyncShadow": true, "Id": "InteriorTherm" } ] }, "Version": "83c13984-6fed-447e-84d5-5b8aa45d5f71", "CreationTimestamp": "2019-09-11T00:15:09.838Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/83c13984-6fed-447e-84d5-5b8aa45d5f71" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-device-definition.

AWS CLI

Para obtener una definición de dispositivo

En el siguiente ejemplo de get-device-definition, se recupera información sobre la definición de dispositivo especificada. Para recuperar los ID de las definiciones de dispositivos, utilice el comando list-device-definitions.

aws greengrass get-device-definition \ --device-definition-id "f9ba083d-5ad4-4534-9f86-026a45df1ccd"

Salida:

{ "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/83c13984-6fed-447e-84d5-5b8aa45d5f71", "Name": "TemperatureSensors", "tags": {}, "LastUpdatedTimestamp": "2019-09-11T00:19:03.698Z", "LatestVersion": "83c13984-6fed-447e-84d5-5b8aa45d5f71", "CreationTimestamp": "2019-09-11T00:11:06.197Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd" }
  • Para obtener información sobre la API, consulte GetDeviceDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-function-definition-version.

AWS CLI

Para recuperar detalles sobre una versión específica de una función de Lambda

En el siguiente get-function-definition-version, se recupera información sobre la versión especificada de la definición de función especificada. Para recuperar los ID de todas las versiones de la definición de función, utilice el comando list-function-definition-versions. Para recuperar el ID de la última versión agregada a la definición de función, utilice el comando get-function-definition y compruebe la propiedad LatestVersion.

aws greengrass get-function-definition-version \ --function-definition-id "063f5d1a-1dd1-40b4-9b51-56f8993d0f85" \ --function-definition-version-id "9748fda7-1589-4fcc-ac94-f5559e88678b"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/9748fda7-1589-4fcc-ac94-f5559e88678b", "CreationTimestamp": "2019-06-18T17:04:30.776Z", "Definition": { "Functions": [ { "FunctionArn": "arn:aws:lambda:::function:GGIPDetector:1", "FunctionConfiguration": { "Environment": {}, "MemorySize": 32768, "Pinned": true, "Timeout": 3 }, "Id": "26b69bdb-e547-46bc-9812-84ec04b6cc8c" }, { "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:GG_HelloWorld", "FunctionConfiguration": { "EncodingType": "json", "Environment": { "Variables": {} }, "MemorySize": 16384, "Pinned": true, "Timeout": 25 }, "Id": "384465a8-eedf-48c6-b793-4c35f7bfae9b" } ] }, "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "Version": "9748fda7-1589-4fcc-ac94-f5559e88678b" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-function-definition.

AWS CLI

Para recuperar una definición de función

En el ejemplo siguiente de get-function-definition, se muestran los detalles para la definición de función especificada. Para recuperar los ID de las definiciones de función, utilice el comando list-function-definitions.

aws greengrass get-function-definition \ --function-definition-id "063f5d1a-1dd1-40b4-9b51-56f8993d0f85"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "CreationTimestamp": "2019-06-18T16:21:21.431Z", "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "LastUpdatedTimestamp": "2019-06-18T16:21:21.431Z", "LatestVersion": "9748fda7-1589-4fcc-ac94-f5559e88678b", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/9748fda7-1589-4fcc-ac94-f5559e88678b", "tags": {} }
  • Para obtener información sobre la API, consulte GetFunctionDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-group-certificate-authority.

AWS CLI

Para recuperar la CA asociada a un grupo de Greengrass

En el siguiente ejemplo de get-group-certificate-authority, se recupera la entidad de certificación (CA) asociada al grupo de Greengrass especificado. Para obtener el ID de la entidad de certificación, utilice el comando list-group-certificate-authorities y especifique el ID del grupo.

aws greengrass get-group-certificate-authority \ --group-id "1013db12-8b58-45ff-acc7-704248f66731" \ --certificate-authority-id "f0430e1736ea8ed30cc5d5de9af67a7e3586bad9ae4d89c2a44163f65fdd8cf6"

Salida:

{ "GroupCertificateAuthorityArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/certificateauthorities/f0430e1736ea8ed30cc5d5de9af67a7e3586bad9ae4d89c2a44163f65fdd8cf6", "GroupCertificateAuthorityId": "f0430e1736ea8ed30cc5d5de9af67a7e3586bad9ae4d89c2a44163f65fdd8cf6", "PemEncodedCertificate": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBWEXAMPLEGA1UEBhMC VVMxCzAJBgNVBAgTAldBMRAwDEXAMPLEEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6 b24xFDASBgNVBAEXAMPLESBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAd BgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jEXAMPLENMTEwNDI1MjA0NTIxWhcN MTIwNDI0MjA0EXAMPLEBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYD VQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWEXAMPLEDASBgNVBAsTC0lBTSBDb25z b2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWEXAMPLEgkqhkiG9w0BCQEWEG5vb25lQGFt YXpvbi5EXAMPLE8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ 21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CEXAMPLE93vUEIO3IyNoH/f0wYK8m9T rDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswYEXAMPLEgpE Ibb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKEXAMPLEAQEFBQADgYEAtCu4 nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0Fkb FFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTb NYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE= -----END CERTIFICATE-----\n" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-group-certificate-configuration.

AWS CLI

Para recuperar la configuración de la entidad de certificación utilizada por el grupo de Greengrass

En el siguiente ejemplo de get-group-certificate-configuration, se recupera la configuración de la entidad de certificación (CA) usada por el grupo de Greengrass especificado.

aws greengrass get-group-certificate-configuration \ --group-id "1013db12-8b58-45ff-acc7-704248f66731"

Salida:

{ "CertificateAuthorityExpiryInMilliseconds": 2524607999000, "CertificateExpiryInMilliseconds": 604800000, "GroupId": "1013db12-8b58-45ff-acc7-704248f66731" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-group-version.

AWS CLI

Para recuperar información sobre una versión de un grupo de Greengrass

En el siguiente ejemplo de get-group-version, se recupera información sobre la versión especificada del grupo especificado. Para recuperar los ID de todas las versiones del grupo, utilice el comando list-group-versions. Para recuperar el ID de la última versión agregada al grupo, utilice el comando get-group y compruebe la propiedad LatestVersion.

aws greengrass get-group-version \ --group-id "1013db12-8b58-45ff-acc7-704248f66731" \ --group-version-id "115136b3-cfd7-4462-b77f-8741a4b00e5e"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/115136b3-cfd7-4462-b77f-8741a4b00e5e", "CreationTimestamp": "2019-06-18T17:04:30.915Z", "Definition": { "CoreDefinitionVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/c906ed39-a1e3-4822-a981-7b9bd57b4b46/versions/42aeeac3-fd9d-4312-a8fd-ffa9404a20e0", "FunctionDefinitionVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/9748fda7-1589-4fcc-ac94-f5559e88678b", "SubscriptionDefinitionVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152/versions/88ae8699-12ac-4663-ba3f-4d7f0519140b" }, "Id": "1013db12-8b58-45ff-acc7-704248f66731", "Version": "115136b3-cfd7-4462-b77f-8741a4b00e5e" }
  • Para obtener información sobre la API, consulte GetGroupVersion en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-group.

AWS CLI

Para recuperar información sobre un grupo de Greengrass

En el siguiente ejemplo de get-group, se recupera información sobre el grupo de Greengrass especificado. Para recuperar los ID de sus grupos, utilice el comando list-groups.

aws greengrass get-group \ --group-id "1013db12-8b58-45ff-acc7-704248f66731"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731", "CreationTimestamp": "2019-06-18T16:21:21.457Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "LastUpdatedTimestamp": "2019-06-18T16:21:21.457Z", "LatestVersion": "115136b3-cfd7-4462-b77f-8741a4b00e5e", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/115136b3-cfd7-4462-b77f-8741a4b00e5e", "Name": "GGGroup4Pi3", "tags": {} }
  • Para obtener información sobre la API, consulte GetGroup en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-logger-definition-version.

AWS CLI

Para recuperar información sobre una versión de una definición de registrador

En el siguiente ejemplo de get-logger-definition-version, se recupera información sobre la versión especificada de la definición de registrador especificada. Para recuperar los ID de todas las versiones de la definición de registrador, utilice el comando list-logger-definition-versions. Para recuperar el ID de la última versión agregada a la definición de registrador, utilice el comando get-logger-definition y compruebe la propiedad LatestVersion.

aws greengrass get-logger-definition-version \ --logger-definition-id "49eeeb66-f1d3-4e34-86e3-3617262abf23" \ --logger-definition-version-id "5e3f6f64-a565-491e-8de0-3c0d8e0f2073"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23/versions/5e3f6f64-a565-491e-8de0-3c0d8e0f2073", "CreationTimestamp": "2019-05-08T16:10:13.866Z", "Definition": { "Loggers": [] }, "Id": "49eeeb66-f1d3-4e34-86e3-3617262abf23", "Version": "5e3f6f64-a565-491e-8de0-3c0d8e0f2073" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-logger-definition.

AWS CLI

Para recuperar información sobre una definición de registrador

En el siguiente ejemplo de get-logger-definition, se recupera información sobre la definición de registrador especificada. Para recuperar los ID de sus definiciones de registrador, utilice el comando list-logger-definitions.

aws greengrass get-logger-definition \ --logger-definition-id "49eeeb66-f1d3-4e34-86e3-3617262abf23"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23", "CreationTimestamp": "2019-05-08T16:10:13.809Z", "Id": "49eeeb66-f1d3-4e34-86e3-3617262abf23", "LastUpdatedTimestamp": "2019-05-08T16:10:13.809Z", "LatestVersion": "5e3f6f64-a565-491e-8de0-3c0d8e0f2073", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23/versions/5e3f6f64-a565-491e-8de0-3c0d8e0f2073", "tags": {} }
  • Para obtener información sobre la API, consulte GetLoggerDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-resource-definition-version.

AWS CLI

Para recuperar información sobre una versión específica de una definición de recurso

En el siguiente ejemplo de get-resource-definition-version, se recupera información sobre la versión especificada de la definición de recurso especificada. Para recuperar los ID de todas las versiones de la definición de recurso, utilice el comando list-resource-definition-versions. Para recuperar el ID de la última versión agregada a la definición de recurso, utilice el comando get-resource-definition y compruebe la propiedad LatestVersion.

aws greengrass get-resource-definition-version \ --resource-definition-id "ad8c101d-8109-4b0e-b97d-9cc5802ab658" \ --resource-definition-version-id "26e8829a-491a-464d-9c87-664bf6f6f2be"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658/versions/26e8829a-491a-464d-9c87-664bf6f6f2be", "CreationTimestamp": "2019-06-19T16:40:59.392Z", "Definition": { "Resources": [ { "Id": "26ff3f7b-839a-4217-9fdc-a218308b3963", "Name": "usb-port", "ResourceDataContainer": { "LocalDeviceResourceData": { "GroupOwnerSetting": { "AutoAddGroupOwner": false }, "SourcePath": "/dev/bus/usb" } } } ] }, "Id": "ad8c101d-8109-4b0e-b97d-9cc5802ab658", "Version": "26e8829a-491a-464d-9c87-664bf6f6f2be" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-resource-definition.

AWS CLI

Para recuperar información sobre una definición de recurso

En el siguiente ejemplo de get-resource-definition, se recupera información sobre la definición de recurso especificada. Para recuperar los ID de sus definiciones de recurso, utilice el comando list-resource-definitions.

aws greengrass get-resource-definition \ --resource-definition-id "ad8c101d-8109-4b0e-b97d-9cc5802ab658"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658", "CreationTimestamp": "2019-06-19T16:40:59.261Z", "Id": "ad8c101d-8109-4b0e-b97d-9cc5802ab658", "LastUpdatedTimestamp": "2019-06-19T16:40:59.261Z", "LatestVersion": "26e8829a-491a-464d-9c87-664bf6f6f2be", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658/versions/26e8829a-491a-464d-9c87-664bf6f6f2be", "tags": {} }
  • Para obtener información sobre la API, consulte GetResourceDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-service-role-for-account.

AWS CLI

Para recuperar los detalles del rol de servicio asociado a su cuenta

En el siguiente ejemplo de get-service-role-for-account, se recupera información sobre el rol de servicio asociado a su cuenta de AWS.

aws greengrass get-service-role-for-account

Salida:

{ "AssociatedAt": "2018-10-18T15:59:20Z", "RoleArn": "arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole" }

Para obtener más información, consulte Greengrass service role en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar get-subscription-definition-version.

AWS CLI

Para recuperar información sobre una versión específica de una definición de suscripción

En el siguiente ejemplo de get-subscription-definition-version, se recupera información sobre la versión especificada de la definición de suscripción especificada. Para recuperar los ID de todas las versiones de la definición de suscripción, utilice el comando list-subscription-definition-versions. Para recuperar el ID de la última versión agregada a la definición de suscripción, utilice el comando get-subscription-definition y compruebe la propiedad LatestVersion.

aws greengrass get-subscription-definition-version \ --subscription-definition-id "70e49321-83d5-45d2-bc09-81f4917ae152" \ --subscription-definition-version-id "88ae8699-12ac-4663-ba3f-4d7f0519140b"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152/versions/88ae8699-12ac-4663-ba3f-4d7f0519140b", "CreationTimestamp": "2019-06-18T17:03:52.499Z", "Definition": { "Subscriptions": [ { "Id": "692c4484-d89f-4f64-8edd-1a041a65e5b6", "Source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:GG_HelloWorld", "Subject": "hello/world", "Target": "cloud" } ] }, "Id": "70e49321-83d5-45d2-bc09-81f4917ae152", "Version": "88ae8699-12ac-4663-ba3f-4d7f0519140b" }

En el siguiente ejemplo de código, se muestra cómo utilizar get-subscription-definition.

AWS CLI

Para recuperar información sobre una definición de suscripción

En el siguiente ejemplo de get-subscription-definition, se recupera información sobre la definición de suscripción especificada. Para recuperar los ID de sus definiciones de suscripción, utilice el comando list-subscription-definitions.

aws greengrass get-subscription-definition \ --subscription-definition-id "70e49321-83d5-45d2-bc09-81f4917ae152"

Salida:

{ "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152", "CreationTimestamp": "2019-06-18T17:03:52.392Z", "Id": "70e49321-83d5-45d2-bc09-81f4917ae152", "LastUpdatedTimestamp": "2019-06-18T17:03:52.392Z", "LatestVersion": "88ae8699-12ac-4663-ba3f-4d7f0519140b", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152/versions/88ae8699-12ac-4663-ba3f-4d7f0519140b", "tags": {} }

En el siguiente ejemplo de código, se muestra cómo utilizar get-thing-runtime-configuration.

AWS CLI

Para recuperar la configuración de tiempo de ejecución de un núcleo de Greengrass

En el siguiente ejemplo de get-thing-runtime-configuration, se recupera la configuración del tiempo de ejecución de un núcleo de Greengrass. Para poder recuperar la configuración del tiempo de ejecución, debe usar el comando update-thing-runtime-configuration para crear una configuración de tiempo de ejecución para el núcleo.

aws greengrass get-thing-runtime-configuration \ --thing-name SampleGreengrassCore

Salida:

{ "RuntimeConfiguration": { "TelemetryConfiguration": { "ConfigurationSyncStatus": "OutOfSync", "Telemetry": "On" } } }

Para obtener más información, consulte Configuring telemetry settings en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar list-bulk-deployment-detailed-reports.

AWS CLI

Para obtener información sobre las implementaciones individuales en una implementación por lotes

En el siguiente ejemplo de list-bulk-deployment-detailed-reports, se muestra información sobre las implementaciones individuales de una operación de implementación por lotes, incluido su estado.

aws greengrass list-bulk-deployment-detailed-reports \ --bulk-deployment-id 42ce9c42-489b-4ed4-b905-8996aa50ef9d

Salida:

{ "Deployments": [ { "DeploymentType": "NewDeployment", "DeploymentStatus": "Success", "DeploymentId": "123456789012:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "DeploymentArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/a1b2c3d4-5678-90ab-cdef-EXAMPLE33333/deployments/123456789012:123456789012:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "GroupArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/a1b2c3d4-5678-90ab-cdef-EXAMPLE33333/versions/123456789012:a1b2c3d4-5678-90ab-cdef-EXAMPLE44444", "CreatedAt": "2020-01-21T21:34:16.501Z" }, { "DeploymentType": "NewDeployment", "DeploymentStatus": "InProgress", "DeploymentId": "123456789012:a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "DeploymentArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/a1b2c3d4-5678-90ab-cdef-EXAMPLE55555/deployments/123456789012:123456789012:a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "GroupArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/a1b2c3d4-5678-90ab-cdef-EXAMPLE55555/versions/a1b2c3d4-5678-90ab-cdef-EXAMPLE66666", "CreatedAt": "2020-01-21T21:34:16.486Z" }, ... ] }

Para obtener más información, consulte Create Bulk Deployments for Groups en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar list-bulk-deployments.

AWS CLI

Para enumerar las implementaciones por lotes

En el siguiente ejemplo de list-bulk-deployments, se enumeran todos las implementaciones por lotes.

aws greengrass list-bulk-deployments

Salida:

{ "BulkDeployments": [ { "BulkDeploymentArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/bulk/deployments/870fb41b-6288-4e0c-bc76-a7ba4b4d3267", "BulkDeploymentId": "870fb41b-6288-4e0c-bc76-a7ba4b4d3267", "CreatedAt": "2019-06-25T16:11:33.265Z" } ] }

Para obtener más información, consulte Create Bulk Deployments for Groups en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte ListBulkDeployments en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-connector-definition-versions.

AWS CLI

Para enumerar las versiones disponibles para una definición de conector

En el siguiente ejemplo de list-connector-definition-versions, se enumeran las versiones disponibles para la definición de conector especificada. Utilice el comando list-connector-definitions para obtener el ID de definición de conector.

aws greengrass list-connector-definition-versions \ --connector-definition-id "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8/versions/63c57963-c7c2-4a26-a7e2-7bf478ea2623", "CreationTimestamp": "2019-06-19T19:30:01.300Z", "Id": "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "Version": "63c57963-c7c2-4a26-a7e2-7bf478ea2623" } ] }

Para obtener más información, consulte Integrate with Services and Protocols Using Greengrass Connectors en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar list-connector-definitions.

AWS CLI

Para enumerar los conectores de Greengrass que están definidos

En el siguiente ejemplo de list-connector-definitions, se enumeran todos los conectores de Greengrass que están definidos para su cuenta de AWS.

aws greengrass list-connector-definitions

Salida:

{ "Definitions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "CreationTimestamp": "2019-06-19T19:30:01.300Z", "Id": "b5c4ebfd-f672-49a3-83cd-31c7216a7bb8", "LastUpdatedTimestamp": "2019-06-19T19:30:01.300Z", "LatestVersion": "63c57963-c7c2-4a26-a7e2-7bf478ea2623", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/connectors/b5c4ebfd-f672-49a3-83cd-31c7216a7bb8/versions/63c57963-c7c2-4a26-a7e2-7bf478ea2623", "Name": "MySNSConnector" } ] }

Para obtener más información, consulte Integrate with Services and Protocols Using Greengrass Connectors en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar list-core-definition-versions.

AWS CLI

Para enumerar las versiones de una definición de núcleo de Greengrass

En el siguiente ejemplo de list-core-definitions, se enumeran todas las versiones de la definición de núcleo de Greengrass especificada. Puede usar el comando list-core-definitions para obtener el ID de la versión.

aws greengrass list-core-definition-versions \ --core-definition-id "eaf280cb-138c-4d15-af36-6f681a1348f7"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/eaf280cb-138c-4d15-af36-6f681a1348f7/versions/467c36e4-c5da-440c-a97b-084e62593b4c", "CreationTimestamp": "2019-06-18T16:14:17.709Z", "Id": "eaf280cb-138c-4d15-af36-6f681a1348f7", "Version": "467c36e4-c5da-440c-a97b-084e62593b4c" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-core-definitions.

AWS CLI

Para enumerar las definiciones de núcleo de Greengrass

En el siguiente ejemplo de list-core-definitions, se enumeran todas las definiciones de núcleo de Greengrass para su cuenta de AWS.

aws greengrass list-core-definitions

Salida:

{ "Definitions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/0507843c-c1ef-4f06-b051-817030df7e7d", "CreationTimestamp": "2018-10-17T04:30:32.786Z", "Id": "0507843c-c1ef-4f06-b051-817030df7e7d", "LastUpdatedTimestamp": "2018-10-17T04:30:32.786Z", "LatestVersion": "bcdf9e86-3793-491e-93af-3cdfbf4e22b7", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/0507843c-c1ef-4f06-b051-817030df7e7d/versions/bcdf9e86-3793-491e-93af-3cdfbf4e22b7" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/31c22500-3509-4271-bafd-cf0655cda438", "CreationTimestamp": "2019-06-18T16:24:16.064Z", "Id": "31c22500-3509-4271-bafd-cf0655cda438", "LastUpdatedTimestamp": "2019-06-18T16:24:16.064Z", "LatestVersion": "2f350395-6d09-4c8a-8336-9ae5b57ace84", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/31c22500-3509-4271-bafd-cf0655cda438/versions/2f350395-6d09-4c8a-8336-9ae5b57ace84" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/c906ed39-a1e3-4822-a981-7b9bd57b4b46", "CreationTimestamp": "2019-06-18T16:21:21.351Z", "Id": "c906ed39-a1e3-4822-a981-7b9bd57b4b46", "LastUpdatedTimestamp": "2019-06-18T16:21:21.351Z", "LatestVersion": "42aeeac3-fd9d-4312-a8fd-ffa9404a20e0", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/c906ed39-a1e3-4822-a981-7b9bd57b4b46/versions/42aeeac3-fd9d-4312-a8fd-ffa9404a20e0" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/eaf280cb-138c-4d15-af36-6f681a1348f7", "CreationTimestamp": "2019-06-18T16:14:17.709Z", "Id": "eaf280cb-138c-4d15-af36-6f681a1348f7", "LastUpdatedTimestamp": "2019-06-18T16:14:17.709Z", "LatestVersion": "467c36e4-c5da-440c-a97b-084e62593b4c", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/cores/eaf280cb-138c-4d15-af36-6f681a1348f7/versions/467c36e4-c5da-440c-a97b-084e62593b4c" } ] }
  • Para obtener información sobre la API, consulte ListCoreDefinitions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-deployments.

AWS CLI

Para enumerar las implementaciones para un grupo de Greengrass

En el siguiente ejemplo de list-deployments, se enumeran las implementaciones del grupo de Greengrass especificado. Puede utilizar el comando list-groups para buscar el ID de grupo.

aws greengrass list-deployments \ --group-id "1013db12-8b58-45ff-acc7-704248f66731"

Salida:

{ "Deployments": [ { "CreatedAt": "2019-06-18T17:04:32.702Z", "DeploymentId": "1065b8a0-812b-4f21-9d5d-e89b232a530f", "DeploymentType": "NewDeployment", "GroupArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/115136b3-cfd7-4462-b77f-8741a4b00e5e" } ] }
  • Para obtener más información sobre la API, consulte ListDeployments en Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-device-definition-versions.

AWS CLI

Para enumerar las versiones de una definición de dispositivo

En el siguiente ejemplo de list-device-definition-versions, se muestran las versiones de las definiciones de dispositivos asociadas a la definición de dispositivo especificada.

aws greengrass list-device-definition-versions \ --device-definition-id "f9ba083d-5ad4-4534-9f86-026a45df1ccd"

Salida:

{ "Versions": [ { "Version": "83c13984-6fed-447e-84d5-5b8aa45d5f71", "CreationTimestamp": "2019-09-11T00:15:09.838Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/83c13984-6fed-447e-84d5-5b8aa45d5f71" }, { "Version": "3b5cc510-58c1-44b5-9d98-4ad858ffa795", "CreationTimestamp": "2019-09-11T00:11:06.197Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/3b5cc510-58c1-44b5-9d98-4ad858ffa795" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-device-definitions.

AWS CLI

Para enumerar las definiciones de dispositivos

En el siguiente ejemplo de list-device-definitions, se muestran detalles sobre las definiciones de dispositivos en su cuenta de AWS en la región de AWS especificada.

aws greengrass list-device-definitions \ --region us-west-2

Salida:

{ "Definitions": [ { "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/50f3274c-3f0a-4f57-b114-6f46085281ab/versions/c777b0f5-1059-449b-beaa-f003ebc56c34", "LastUpdatedTimestamp": "2019-06-14T15:42:09.059Z", "LatestVersion": "c777b0f5-1059-449b-beaa-f003ebc56c34", "CreationTimestamp": "2019-06-14T15:42:09.059Z", "Id": "50f3274c-3f0a-4f57-b114-6f46085281ab", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/50f3274c-3f0a-4f57-b114-6f46085281ab" }, { "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/e01951c9-6134-479a-969a-1a15cac11c40/versions/514d57aa-4ee6-401c-9fac-938a9f7a51e5", "Name": "TestDeviceDefinition", "LastUpdatedTimestamp": "2019-04-16T23:17:43.245Z", "LatestVersion": "514d57aa-4ee6-401c-9fac-938a9f7a51e5", "CreationTimestamp": "2019-04-16T23:17:43.245Z", "Id": "e01951c9-6134-479a-969a-1a15cac11c40", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/e01951c9-6134-479a-969a-1a15cac11c40" }, { "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd/versions/83c13984-6fed-447e-84d5-5b8aa45d5f71", "Name": "TemperatureSensors", "LastUpdatedTimestamp": "2019-09-10T00:19:03.698Z", "LatestVersion": "83c13984-6fed-447e-84d5-5b8aa45d5f71", "CreationTimestamp": "2019-09-11T00:11:06.197Z", "Id": "f9ba083d-5ad4-4534-9f86-026a45df1ccd", "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/devices/f9ba083d-5ad4-4534-9f86-026a45df1ccd" } ] }
  • Para obtener información sobre la API, consulte ListDeviceDefinitions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-function-definition-versions.

AWS CLI

Para enumerar todas las versiones de una función de Lambda

En el siguiente ejemplo de list-function-definition-versions, se muestran todas las versiones de la función de Lambda especificada. Puede utilizar el comando list-function-definitions para obtener el ID.

aws greengrass list-function-definition-versions \ --function-definition-id "063f5d1a-1dd1-40b4-9b51-56f8993d0f85"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/9748fda7-1589-4fcc-ac94-f5559e88678b", "CreationTimestamp": "2019-06-18T17:04:30.776Z", "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "Version": "9748fda7-1589-4fcc-ac94-f5559e88678b" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/9b08df77-26f2-4c29-93d2-769715edcfec", "CreationTimestamp": "2019-06-18T17:02:44.087Z", "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "Version": "9b08df77-26f2-4c29-93d2-769715edcfec" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/4236239f-94f7-4b90-a2f8-2a24c829d21e", "CreationTimestamp": "2019-06-18T17:01:42.284Z", "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "Version": "4236239f-94f7-4b90-a2f8-2a24c829d21e" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/343408bb-549a-4fbe-b043-853643179a39", "CreationTimestamp": "2019-06-18T16:21:21.431Z", "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "Version": "343408bb-549a-4fbe-b043-853643179a39" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-function-definitions.

AWS CLI

Para enumerar funciones de Lambda

En el siguiente ejemplo de list-function-definitions, se enumeran todas las funciones de Lambda definidas para su cuenta de AWS.

aws greengrass list-function-definitions

Salida:

{ "Definitions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/017970a5-8952-46dd-b1c1-020b3ae8e960", "CreationTimestamp": "2018-10-17T04:30:32.884Z", "Id": "017970a5-8952-46dd-b1c1-020b3ae8e960", "LastUpdatedTimestamp": "2018-10-17T04:30:32.884Z", "LatestVersion": "4380b302-790d-4ed8-92bf-02e88afecb15", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/017970a5-8952-46dd-b1c1-020b3ae8e960/versions/4380b302-790d-4ed8-92bf-02e88afecb15" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "CreationTimestamp": "2019-06-18T16:21:21.431Z", "Id": "063f5d1a-1dd1-40b4-9b51-56f8993d0f85", "LastUpdatedTimestamp": "2019-06-18T16:21:21.431Z", "LatestVersion": "9748fda7-1589-4fcc-ac94-f5559e88678b", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/063f5d1a-1dd1-40b4-9b51-56f8993d0f85/versions/9748fda7-1589-4fcc-ac94-f5559e88678b" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/6598e653-a262-440c-9967-e2697f64da7b", "CreationTimestamp": "2019-06-18T16:24:16.123Z", "Id": "6598e653-a262-440c-9967-e2697f64da7b", "LastUpdatedTimestamp": "2019-06-18T16:24:16.123Z", "LatestVersion": "38bc6ccd-98a2-4ce7-997e-16c84748fae4", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/6598e653-a262-440c-9967-e2697f64da7b/versions/38bc6ccd-98a2-4ce7-997e-16c84748fae4" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/c668df84-fad2-491b-95f4-655d2cad7885", "CreationTimestamp": "2019-06-18T16:14:17.784Z", "Id": "c668df84-fad2-491b-95f4-655d2cad7885", "LastUpdatedTimestamp": "2019-06-18T16:14:17.784Z", "LatestVersion": "37dd68c4-a64f-40ba-aa13-71fecc3ebded", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/functions/c668df84-fad2-491b-95f4-655d2cad7885/versions/37dd68c4-a64f-40ba-aa13-71fecc3ebded" } ] }
  • Para obtener información sobre la API, consulte ListFunctionDefinitions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-group-certificate-authorities.

AWS CLI

Para enumerar las CA actuales para un grupo

En el siguiente ejemplo list-group-certificate-authorities, se enumeran las entidades de certificación (CA) actuales del grupo de Greengrass especificado.

aws greengrass list-group-certificate-authorities \ --group-id "1013db12-8b58-45ff-acc7-704248f66731"

Salida:

{ "GroupCertificateAuthorities": [ { "GroupCertificateAuthorityArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/certificateauthorities/f0430e1736ea8ed30cc5d5de9af67a7e3586bad9ae4d89c2a44163f65fdd8cf6", "GroupCertificateAuthorityId": "f0430e1736ea8ed30cc5d5de9af67a7e3586bad9ae4d89c2a44163f65fdd8cf6" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-group-versions.

AWS CLI

Para enumerar las versiones de un grupo de Greengrass

En el siguiente ejemplo de list-group-versions, se enumeran las versiones del grupo de Greengrass especificado.

aws greengrass list-group-versions \ --group-id "1013db12-8b58-45ff-acc7-704248f66731"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/115136b3-cfd7-4462-b77f-8741a4b00e5e", "CreationTimestamp": "2019-06-18T17:04:30.915Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "Version": "115136b3-cfd7-4462-b77f-8741a4b00e5e" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/4340669d-d14d-44e3-920c-46c928750750", "CreationTimestamp": "2019-06-18T17:03:52.663Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "Version": "4340669d-d14d-44e3-920c-46c928750750" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/1b06e099-2d5b-4f10-91b9-78c4e060f5da", "CreationTimestamp": "2019-06-18T17:02:44.189Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "Version": "1b06e099-2d5b-4f10-91b9-78c4e060f5da" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/2d3f27f1-3b43-4554-ab7a-73ec30477efe", "CreationTimestamp": "2019-06-18T17:01:42.401Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "Version": "2d3f27f1-3b43-4554-ab7a-73ec30477efe" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/d20f7ae9-3444-4c1c-b025-e2ede23cdd31", "CreationTimestamp": "2019-06-18T16:21:21.457Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "Version": "d20f7ae9-3444-4c1c-b025-e2ede23cdd31" } ] }
  • Para obtener información sobre la API, consulte ListGroupVersions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-groups.

AWS CLI

Para enumerar los grupos de Greengrass

En el siguiente ejemplo de list-groups, se enumeran todos los grupos de Greengrass definidos en la cuenta de AWS.

aws greengrass list-groups

Salida:

{ "Groups": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731", "CreationTimestamp": "2019-06-18T16:21:21.457Z", "Id": "1013db12-8b58-45ff-acc7-704248f66731", "LastUpdatedTimestamp": "2019-06-18T16:21:21.457Z", "LatestVersion": "115136b3-cfd7-4462-b77f-8741a4b00e5e", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731/versions/115136b3-cfd7-4462-b77f-8741a4b00e5e", "Name": "GGGroup4Pi3" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1402daf9-71cf-4cfe-8be0-d5e80526d0d8", "CreationTimestamp": "2018-10-31T21:52:46.603Z", "Id": "1402daf9-71cf-4cfe-8be0-d5e80526d0d8", "LastUpdatedTimestamp": "2018-10-31T21:52:46.603Z", "LatestVersion": "749af901-60ab-456f-a096-91b12d983c29", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1402daf9-71cf-4cfe-8be0-d5e80526d0d8/versions/749af901-60ab-456f-a096-91b12d983c29", "Name": "MyTestGroup" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/504b5c8d-bbed-4635-aff1-48ec5b586db5", "CreationTimestamp": "2018-12-31T21:39:36.771Z", "Id": "504b5c8d-bbed-4635-aff1-48ec5b586db5", "LastUpdatedTimestamp": "2018-12-31T21:39:36.771Z", "LatestVersion": "46911e8e-f9bc-4898-8b63-59c7653636ec", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/504b5c8d-bbed-4635-aff1-48ec5b586db5/versions/46911e8e-f9bc-4898-8b63-59c7653636ec", "Name": "smp-ggrass-group" } ] }
  • Para obtener información sobre la API, consulte ListGroups en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-logger-definition-versions.

AWS CLI

Para obtener una lista de versiones de una definición de registrador

En el siguiente ejemplo de list-logger-definition-versions, se obtiene una lista de todas las versiones de la definición de registrador especificada.

aws greengrass list-logger-definition-versions \ --logger-definition-id "49eeeb66-f1d3-4e34-86e3-3617262abf23"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23/versions/5e3f6f64-a565-491e-8de0-3c0d8e0f2073", "CreationTimestamp": "2019-05-08T16:10:13.866Z", "Id": "49eeeb66-f1d3-4e34-86e3-3617262abf23", "Version": "5e3f6f64-a565-491e-8de0-3c0d8e0f2073" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23/versions/3ec6d3af-eb85-48f9-a16d-1c795fe696d7", "CreationTimestamp": "2019-05-08T16:10:13.809Z", "Id": "49eeeb66-f1d3-4e34-86e3-3617262abf23", "Version": "3ec6d3af-eb85-48f9-a16d-1c795fe696d7" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-logger-definitions.

AWS CLI

Para obtener una lista de definiciones de registrador

En el siguiente ejemplo de list-logger-definitions, se enumeran todas las definiciones de registrador para su cuenta de AWS.

aws greengrass list-logger-definitions

Salida:

{ "Definitions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23", "CreationTimestamp": "2019-05-08T16:10:13.809Z", "Id": "49eeeb66-f1d3-4e34-86e3-3617262abf23", "LastUpdatedTimestamp": "2019-05-08T16:10:13.809Z", "LatestVersion": "5e3f6f64-a565-491e-8de0-3c0d8e0f2073", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/loggers/49eeeb66-f1d3-4e34-86e3-3617262abf23/versions/5e3f6f64-a565-491e-8de0-3c0d8e0f2073" } ] }
  • Para obtener información sobre la API, consulte ListLoggerDefinitions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-resource-definition-versions.

AWS CLI

Para enumerar las versiones de una definición de recurso

En el siguiente ejemplo de list-resource-definition-versions, se enumeran las versiones para el recurso de Greengrass especificado.

aws greengrass list-resource-definition-versions \ --resource-definition-id "ad8c101d-8109-4b0e-b97d-9cc5802ab658"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658/versions/26e8829a-491a-464d-9c87-664bf6f6f2be", "CreationTimestamp": "2019-06-19T16:40:59.392Z", "Id": "ad8c101d-8109-4b0e-b97d-9cc5802ab658", "Version": "26e8829a-491a-464d-9c87-664bf6f6f2be" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658/versions/432d92f6-12de-4ec9-a704-619a942a62aa", "CreationTimestamp": "2019-06-19T16:40:59.261Z", "Id": "ad8c101d-8109-4b0e-b97d-9cc5802ab658", "Version": "432d92f6-12de-4ec9-a704-619a942a62aa" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-resource-definitions.

AWS CLI

Para enumerar los recursos que están definidos

En el siguiente ejemplo de list-resource-definitions, se enumeran los recursos que están definidos para que los utilice AWS IoT Greengrass.

aws greengrass list-resource-definitions

Salida:

{ "Definitions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658", "CreationTimestamp": "2019-06-19T16:40:59.261Z", "Id": "ad8c101d-8109-4b0e-b97d-9cc5802ab658", "LastUpdatedTimestamp": "2019-06-19T16:40:59.261Z", "LatestVersion": "26e8829a-491a-464d-9c87-664bf6f6f2be", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658/versions/26e8829a-491a-464d-9c87-664bf6f6f2be" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/c8bb9ebc-c3fd-40a4-9c6a-568d75569d38", "CreationTimestamp": "2019-06-19T21:51:28.212Z", "Id": "c8bb9ebc-c3fd-40a4-9c6a-568d75569d38", "LastUpdatedTimestamp": "2019-06-19T21:51:28.212Z", "LatestVersion": "a5f94d0b-f6bc-40f4-bb78-7a1c5fe13ba1", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/c8bb9ebc-c3fd-40a4-9c6a-568d75569d38/versions/a5f94d0b-f6bc-40f4-bb78-7a1c5fe13ba1", "Name": "MyGreengrassResources" } ] }
  • Para obtener información sobre la API, consulte ListResourceDefinitions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-subscription-definition-versions.

AWS CLI

Para enumerar las versiones de una definición de suscripción

En el siguiente ejemplo de list-subscription-definition-versions se enumeran todas las versiones de la suscripción especificada. Puede usar el comando list-subscription-definitions para buscar el ID de la suscripción.

aws greengrass list-subscription-definition-versions \ --subscription-definition-id "70e49321-83d5-45d2-bc09-81f4917ae152"

Salida:

{ "Versions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152/versions/88ae8699-12ac-4663-ba3f-4d7f0519140b", "CreationTimestamp": "2019-06-18T17:03:52.499Z", "Id": "70e49321-83d5-45d2-bc09-81f4917ae152", "Version": "88ae8699-12ac-4663-ba3f-4d7f0519140b" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152/versions/7e320ba3-c369-4069-a2f0-90acb7f219d6", "CreationTimestamp": "2019-06-18T17:03:52.392Z", "Id": "70e49321-83d5-45d2-bc09-81f4917ae152", "Version": "7e320ba3-c369-4069-a2f0-90acb7f219d6" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-subscription-definitions.

AWS CLI

Para obtener una lista de definiciones de suscripciones

En el siguiente ejemplo de list-subscription-definitions, se enumeran todas las suscripciones de AWS IoT Greengrass definidas en la cuenta de AWS.

aws greengrass list-subscription-definitions

Salida:

{ "Definitions": [ { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152", "CreationTimestamp": "2019-06-18T17:03:52.392Z", "Id": "70e49321-83d5-45d2-bc09-81f4917ae152", "LastUpdatedTimestamp": "2019-06-18T17:03:52.392Z", "LatestVersion": "88ae8699-12ac-4663-ba3f-4d7f0519140b", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/70e49321-83d5-45d2-bc09-81f4917ae152/versions/88ae8699-12ac-4663-ba3f-4d7f0519140b" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/cd6f1c37-d9a4-4e90-be94-01a7404f5967", "CreationTimestamp": "2018-10-18T15:45:34.024Z", "Id": "cd6f1c37-d9a4-4e90-be94-01a7404f5967", "LastUpdatedTimestamp": "2018-10-18T15:45:34.024Z", "LatestVersion": "d1cf8fac-284f-4f6a-98fe-a2d36d089373", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/cd6f1c37-d9a4-4e90-be94-01a7404f5967/versions/d1cf8fac-284f-4f6a-98fe-a2d36d089373" }, { "Arn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/fa81bc84-3f59-4377-a84b-5d0134da359b", "CreationTimestamp": "2018-10-22T17:09:31.429Z", "Id": "fa81bc84-3f59-4377-a84b-5d0134da359b", "LastUpdatedTimestamp": "2018-10-22T17:09:31.429Z", "LatestVersion": "086d1b08-b25a-477c-a16f-6f9b3a9c295a", "LatestVersionArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/subscriptions/fa81bc84-3f59-4377-a84b-5d0134da359b/versions/086d1b08-b25a-477c-a16f-6f9b3a9c295a" } ] }

En el siguiente ejemplo de código, se muestra cómo utilizar list-tags-for-resource.

AWS CLI

Para enumerar las etiquetas asociadas a un recurso

En el siguiente ejemplo de list-tags-for-resource, se enumerar las etiquetas y sus valores asociados al recurso especificado.

aws greengrass list-tags-for-resource \ --resource-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658"

Salida:

{ "tags": { "ResourceSubType": "USB", "ResourceType": "Device" } }

Para obtener más información, consulte Tagging Your Greengrass Resources en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para ver los detalles de la API, consulte ListTagsForResource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar reset-deployments.

AWS CLI

Para limpiar la información de implementación para un grupo de Greengrass

En el siguiente ejemplo de reset-deployments, se limpian las implementaciones del grupo de Greengrass especificado. Al agregar --force option, la información de implementación se restablece sin esperar a que el dispositivo de núcleo responda.

aws greengrass reset-deployments \ --group-id "1402daf9-71cf-4cfe-8be0-d5e80526d0d8" \ --force

Salida:

{ "DeploymentArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1402daf9-71cf-4cfe-8be0-d5e80526d0d8/deployments/7dd4e356-9882-46a3-9e28-6d21900c011a", "DeploymentId": "7dd4e356-9882-46a3-9e28-6d21900c011a" }

Para obtener más información, consulte Reset Deployments en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte ResetDeployments en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar start-bulk-deployment.

AWS CLI

Para iniciar una operación de implementación por lotes

En el siguiente ejemplo start-bulk-deployment, se inicia una operación de implementación por lotes, usando un archivo almacenado en un bucket de S3 para especificar los grupos que se implementarán.

aws greengrass start-bulk-deployment \ --cli-input-json "{\"InputFileUri\":\"https://gg-group-deployment1.s3-us-west-2.amazonaws.com/MyBulkDeploymentInputFile.txt\", \"ExecutionRoleArn\":\"arn:aws:iam::123456789012:role/ggCreateDeploymentRole\",\"AmznClientToken\":\"yourAmazonClientToken\"}"

Salida:

{ "BulkDeploymentArn": "arn:aws:greengrass:us-west-2:123456789012:/greengrass/bulk/deployments/870fb41b-6288-4e0c-bc76-a7ba4b4d3267", "BulkDeploymentId": "870fb41b-6288-4e0c-bc76-a7ba4b4d3267" }

Para obtener más información, consulte Create Bulk Deployments for Groups en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte StartBulkDeployment en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar stop-bulk-deployment.

AWS CLI

Para detener una implementación por lotes

En el siguiente ejemplo de stop-bulk-deployment, se detiene la implementación por lotes especificada. Si intenta detener una implementación por lotes que se ha completado, recibirá un error: InvalidInputException: Cannot change state of finished execution.

aws greengrass stop-bulk-deployment \ --bulk-deployment-id "870fb41b-6288-4e0c-bc76-a7ba4b4d3267"

Este comando no genera ninguna salida.

Para obtener más información, consulte Create Bulk Deployments for Groups en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte StopBulkDeployment en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar tag-resource.

AWS CLI

Para aplicar etiquetas a un recurso

En el siguiente ejemplo de tag-resource, se aplican dos etiquetas, ResourceType y ResourceSubType, al recurso de Greengrass especificado. Esta operación puede agregar tanto etiquetas como valores nuevos, o actualizar el valor de las etiquetas existentes. Para eliminar una etiqueta, utilice el comando untag-resource.

aws greengrass tag-resource \ --resource-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/definition/resources/ad8c101d-8109-4b0e-b97d-9cc5802ab658" \ --tags "ResourceType=Device,ResourceSubType=USB"

Este comando no genera ninguna salida.

Para obtener más información, consulte Tagging Your Greengrass Resources en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para ver los detalles de la API, consulte TagResource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar untag-resource.

AWS CLI

Para eliminar una etiqueta y su valor de un recurso

En el siguiente ejemplo de untag-resource, se quita la etiqueta cuya clave es Category del grupo de Greengrass especificado. Si la clave Category no existe para el recurso especificado, no se devuelve ningún error.

aws greengrass untag-resource \ --resource-arn "arn:aws:greengrass:us-west-2:123456789012:/greengrass/groups/1013db12-8b58-45ff-acc7-704248f66731" \ --tag-keys "Category"

Este comando no genera ninguna salida.

Para obtener más información, consulte Tagging Your Greengrass Resources en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para ver los detalles de la API, consulte UntagResource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-connectivity-info.

AWS CLI

Para actualizar la información de conectividad para un núcleo de Greengrass

En el siguiente ejemplo de update-connectivity-info, se cambian los puntos de conexión que los dispositivos pueden usar para conectarse al núcleo de Greengrass especificado. La información de conectividad es una lista de direcciones IP o nombres de dominio, con los números de puerto correspondientes y los metadatos opcionales definidos por el cliente. Es posible que tenga que actualizar información de conectividad cuando la red local cambie.

aws greengrass update-connectivity-info \ --thing-name "MyGroup_Core" \ --connectivity-info "[{\"Metadata\":\"\",\"PortNumber\":8883,\"HostAddress\":\"127.0.0.1\",\"Id\":\"localhost_127.0.0.1_0\"},{\"Metadata\":\"\",\"PortNumber\":8883,\"HostAddress\":\"192.168.1.3\",\"Id\":\"localIP_192.168.1.3\"}]"

Salida:

{ "Version": "312de337-59af-4cf9-a278-2a23bd39c300" }
  • Para obtener información sobre la API, consulte UpdateConnectivityInfo en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-connector-definition.

AWS CLI

Para actualizar el nombre para una definición de conector

En el siguiente ejemplo de update-connector-definition, se actualiza el nombre para la definición de conector especificada. Si desea actualizar los detalles del conector, utilice el comando create-connector-definition-version para crear una nueva versión.

aws greengrass update-connector-definition \ --connector-definition-id "55d0052b-0d7d-44d6-b56f-21867215e118" \ --name "GreengrassConnectors2019"

Para obtener más información, consulte Integrate with Services and Protocols Using Connectors en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar update-core-definition.

AWS CLI

Para actualizar una definición de núcleo

En el siguiente ejemplo de update-core-definition, se cambia el nombre de la definición de núcleo especificada. Solo puede actualizar la propiedad name de una definición de núcleo.

aws greengrass update-core-definition \ --core-definition-id "582efe12-b05a-409e-9a24-a2ba1bcc4a12" \ --name "MyCoreDevices"

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuración del software AWS IoT Greengrass Core en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte UpdateCoreDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-device-definition.

AWS CLI

Para actualizar una definición de dispositivo

En el siguiente ejemplo de update-device-definition, se cambia el nombre de la definición de dispositivo especificada. Solo puede actualizar la propiedad name de una definición de dispositivo.

aws greengrass update-device-definition \ --device-definition-id "f9ba083d-5ad4-4534-9f86-026a45df1ccd" \ --name "TemperatureSensors"

Este comando no genera ninguna salida.

  • Para obtener información sobre la API, consulte UpdateDeviceDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-function-definition.

AWS CLI

Para actualizar el nombre para una definición de función

En el siguiente ejemplo de update-function-definition, se actualiza el nombre para la definición de función especificada. Si desea actualizar los detalles de la función, utilice el comando create-function-definition-version para crear una versión nueva.

aws greengrass update-function-definition \ --function-definition-id "e47952bd-dea9-4e2c-a7e1-37bbe8807f46" \ --name ObsoleteFunction

Este comando no genera ninguna salida.

Para obtener más información, consulte Run Local Lambda Functions en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar update-group-certificate-configuration.

AWS CLI

Para actualizar la caducidad de los certificados de un grupo

En el siguiente ejemplo de update-group-certificate-configuration, se establece un plazo de 10 días para los certificados generados para el grupo especificado.

aws greengrass update-group-certificate-configuration \ --group-id "8eaadd72-ce4b-4f15-892a-0cc4f3a343f1" \ --certificate-expiry-in-milliseconds 864000000

Salida:

{ "CertificateExpiryInMilliseconds": 864000000, "CertificateAuthorityExpiryInMilliseconds": 2524607999000, "GroupId": "8eaadd72-ce4b-4f15-892a-0cc4f3a343f1" }

Para obtener más información, consulte AWS IoT Greengrass Security en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar update-group.

AWS CLI

Para actualizar el nombre del grupo

En el siguiente ejemplo de update-group, se actualiza el nombre del grupo de Greengrass especificado. Si desea actualizar los detalles del grupo, utilice el comando create-group-version para crear una versión nueva.

aws greengrass update-group \ --group-id "1402daf9-71cf-4cfe-8be0-d5e80526d0d8" \ --name TestGroup4of6

Para obtener más información, consulte Configure AWS IoT Greengrass on AWS IoT en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte UpdateGroup en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-logger-definition.

AWS CLI

Para actualizar una definición de registrador

En el siguiente ejemplo de update-logger-definition, se cambia el nombre de la definición de registrador especificada. Solo puede actualizar la propiedad name de una definición de registrador.

aws greengrass update-logger-definition \ --logger-definition-id "a454b62a-5d56-4ca9-bdc4-8254e1662cb0" \ --name "LoggingConfigsForSensors"

Este comando no genera ninguna salida.

Para obtener más información, consulte Supervisión de los registros de AWS IoT Greengrass en la Guía para desarrolladores de AWS IoT Greengrass.

  • Para obtener información sobre la API, consulte UpdateLoggerDefinition en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-resource-definition.

AWS CLI

Para actualizar el nombre de una definición de recurso

En el siguiente ejemplo de update-resource-definition, se actualiza el nombre para la definición de recurso especificada. Si desea cambiar los detalles del recurso, utilice el comando create-resource-definition-version para crear una versión nueva.

aws greengrass update-resource-definition \ --resource-definition-id "c8bb9ebc-c3fd-40a4-9c6a-568d75569d38" \ --name GreengrassConnectorResources

Este comando no genera ninguna salida.

Para obtener más información, consulte Access Local Resources with Lambda Functions and Connectors en la Guía para desarrolladores de AWS IoT Greengrass.

En el siguiente ejemplo de código, se muestra cómo utilizar update-subscription-definition.

AWS CLI

Para actualizar el nombre de una definición de suscripción

En el siguiente ejemplo de update-subscription-definition, se actualiza el nombre de la definición de suscripción especificada. Si desea cambiar los detalles de la suscripción, utilice el comando create-subscription-definition-version para crear una versión nueva.

aws greengrass update-subscription-definition \ --subscription-definition-id "fa81bc84-3f59-4377-a84b-5d0134da359b" \ --name "ObsoleteSubscription"

Este comando no genera ninguna salida.

Para obtener más información, consulte el título en la guía.

En el siguiente ejemplo de código, se muestra cómo utilizar update-thing-runtime-configuration.

AWS CLI

Para activar la telemetría en la configuración del tiempo de ejecución de un núcleo de Greengrass

En el siguiente ejemplo de update-thing-runtime-configuration, se actualiza la configuración del tiempo de ejecución de un núcleo de Greengrass para activar la telemetría.

aws greengrass update-thing-runtime-configuration \ --thing-name SampleGreengrassCore \ --telemetry-configuration {\"Telemetry\":\"On\"}

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuring telemetry settings en la Guía para desarrolladores de AWS IoT Greengrass.