

# AWS IoT Greengrass V2 Ejemplos de usando AWS CLI
<a name="cli_greengrassv2_code_examples"></a>

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 V2.

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.

**Topics**
+ [Acciones](#actions)

## Acciones
<a name="actions"></a>

### `associate-service-role-to-account`
<a name="greengrassv2_AssociateServiceRoleToAccount_cli_topic"></a>

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

**AWS CLI**  
**Para asociar el rol de servicio de Greengrass a su cuenta de AWS**  
En el siguiente ejemplo de `associate-service-role-to-account`, se asocia un rol de servicio a AWS IoT Greengrass para su cuenta de AWS.  

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

```
{
    "associatedAt": "2022-01-19T19:21:53Z"
}
```
Para obtener más información, consulte [Greengrass service role](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [AssociateServiceRoleToAccount](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/associate-service-role-to-account.html) en la *Referencia de comandos de la AWS CLI*. 

### `batch-associate-client-device-with-core-device`
<a name="greengrassv2_BatchAssociateClientDeviceWithCoreDevice_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `batch-associate-client-device-with-core-device`.

**AWS CLI**  
**Para asociar los dispositivos de cliente a un dispositivo de núcleo**  
En el siguiente ejemplo de `batch-associate-client-device-with-core-device`, se asocian dos dispositivos de cliente a un dispositivo de núcleo.  

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

```
{
    "errorEntries": []
}
```
Para obtener más información, consulte [Interact with local IoT devices](https://docs.aws.amazon.com/greengrass/v2/developerguide/interact-with-local-iot-devices.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [BatchAssociateClientDeviceWithCoreDevice](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/batch-associate-client-device-with-core-device.html) en la *Referencia de comandos de la AWS CLI*. 

### `batch-disassociate-client-device-from-core-device`
<a name="greengrassv2_BatchDisassociateClientDeviceFromCoreDevice_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `batch-disassociate-client-device-from-core-device`.

**AWS CLI**  
**Para desasociar los dispositivos de cliente de un dispositivo de núcleo**  
En el siguiente ejemplo de `batch-disassociate-client-device-from-core-device`, se desasocian dos dispositivos de cliente de un dispositivo de núcleo.  

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

```
{
    "errorEntries": []
}
```
Para obtener más información, consulte [Interact with local IoT devices](https://docs.aws.amazon.com/greengrass/v2/developerguide/interact-with-local-iot-devices.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [BatchDisassociateClientDeviceFromCoreDevice](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/batch-disassociate-client-device-from-core-device.html) en la *Referencia de comandos de la AWS CLI*. 

### `cancel-deployment`
<a name="greengrassv2_CancelDeployment_cli_topic"></a>

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

**AWS CLI**  
**Para cancelar una implementación**  
En el siguiente ejemplo de `cancel-deployment`, se detiene una implementación continua en un grupo de objetos.  

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

```
{
    "message": "SUCCESS"
}
```
Para obtener más información, consulte [Cancel deployments](https://docs.aws.amazon.com/greengrass/v2/developerguide/cancel-deployments.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [CancelDeployment](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/cancel-deployment.html) en la *Referencia de comandos de la AWS CLI*. 

### `create-component-version`
<a name="greengrassv2_CreateComponentVersion_cli_topic"></a>

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

**AWS CLI**  
**Ejemplo 1: creación de una versión de componente a partir de una receta**  
En el siguiente ejemplo de `create-component-version`, se crea una versión de un componente de Hola, mundo a partir de un archivo de recetas.  

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

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

```
{
    "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0",
    "componentName": "com.example.HelloWorld",
    "componentVersion": "1.0.0",
    "creationTimestamp": "2021-01-07T16:24:33.650000-08:00",
    "status": {
        "componentState": "REQUESTED",
        "message": "NONE",
        "errors": {}
    }
}
```
Para obtener más información, consulte [Create custom components](https://docs.aws.amazon.com/greengrass/v2/developerguide/create-components.html) y [Upload components to deploy](https://docs.aws.amazon.com/greengrass/v2/developerguide/upload-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
**Ejemplo 2: creación de una versión de componente a partir de una función de AWS Lambda**  
En el siguiente ejemplo de `create-component-version`, se crea una versión de un componente de Hola, mundo a partir de una función de AWS Lambda.  

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

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

```
{
    "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0",
    "componentName": "com.example.HelloWorld",
    "componentVersion": "1.0.0",
    "creationTimestamp": "2021-01-07T17:05:27.347000-08:00",
    "status": {
        "componentState": "REQUESTED",
        "message": "NONE",
        "errors": {}
    }
}
```
Para obtener más información, consulte [Run AWS Lambda functions](https://docs.aws.amazon.com/greengrass/v2/developerguide/run-lambda-functions.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [CreateComponentVersion](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/create-component-version.html) en la *Referencia de comandos de la AWS CLI*. 

### `create-deployment`
<a name="greengrassv2_CreateDeployment_cli_topic"></a>

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

**AWS CLI**  
**Ejemplo 1: creación de una implementación**  
En el siguiente ejemplo de `create-deployment`, se implementa la interfaz de la línea de comandos de AWS IoT Greengrass en un dispositivo de núcleo.  

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

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

```
{
    "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}
```
Para obtener más información, consulte [Create deployments](https://docs.aws.amazon.com/greengrass/v2/developerguide/create-deployments.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
**Ejemplo 2: creación de una implementación que actualice las configuraciones de los componentes**  
En el siguiente ejemplo de `create-deployment`, se implementa el componente del núcleo de AWS IoT Greengrass en un grupo de dispositivos de núcleo. Esta implementación aplica las siguientes actualizaciones de configuración para el componente del núcleo:  
Restablezca la configuración de proxy de los dispositivos de destino en su configuración predeterminada sin proxy. Restablezca la configuración de MQTT de los dispositivos de destino a sus valores predeterminados. Establece las opciones de JVM para la JVM del núcleo. Establece el nivel de registro del núcleo.  

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

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

```
{
    "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
    "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222"
}
```
Para obtener más información, consulte [Create deployments](https://docs.aws.amazon.com/greengrass/v2/developerguide/create-deployments.html) y [Update component configurations](https://docs.aws.amazon.com/greengrass/v2/developerguide/update-component-configurations.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [CreateDeployment](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/create-deployment.html) en la *Referencia de comandos de la AWS CLI*. 

### `delete-component`
<a name="greengrassv2_DeleteComponent_cli_topic"></a>

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

**AWS CLI**  
**Para eliminar la versión de un componente**  
En el siguiente ejemplo de `delete-component`, se elimina un componente de Hola, mundo.  

```
aws greengrassv2 delete-component \
    --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0
```
Este comando no genera ninguna salida.  
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [DeleteComponent](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/delete-component.html) en la *Referencia de comandos de la AWS CLI*. 

### `delete-core-device`
<a name="greengrassv2_DeleteCoreDevice_cli_topic"></a>

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

**AWS CLI**  
**Para eliminar un dispositivo de núcleo**  
En el siguiente ejemplo de `delete-core-device`, se elimina un dispositivo de núcleo de AWS IoT Greengrass.  

```
aws greengrassv2 delete-core-device \
    --core-device-thing-name MyGreengrassCore
```
Este comando no genera ninguna salida.  
Para obtener más información, consulte [Uninstall the AWS IoT Greengrass Core software](https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-greengrass-core-v2.html#uninstall-greengrass-core-v2) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [DeleteCoreDevice](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/delete-core-device.html) en la *Referencia de comandos de la AWS CLI*. 

### `describe-component`
<a name="greengrassv2_DescribeComponent_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `describe-component`.

**AWS CLI**  
**Para describir la versión de un componente**  
En el siguiente ejemplo de `describe-component`, se describe un componente de Hola, mundo.  

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

```
{
    "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0",
    "componentName": "com.example.HelloWorld",
    "componentVersion": "1.0.0",
    "creationTimestamp": "2021-01-07T17:12:11.133000-08:00",
    "publisher": "Amazon",
    "description": "My first AWS IoT Greengrass component.",
    "status": {
        "componentState": "DEPLOYABLE",
        "message": "NONE",
        "errors": {}
    },
    "platforms": [
        {
            "attributes": {
                "os": "linux"
            }
        }
    ]
}
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [DescribeComponent](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/describe-component.html) en la *Referencia de comandos de la AWS CLI*. 

### `disassociate-service-role-from-account`
<a name="greengrassv2_DisassociateServiceRoleFromAccount_cli_topic"></a>

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

**AWS CLI**  
**Para desasociar el rol de servicio de Greengrass de su cuenta de AWS**  
En el siguiente ejemplo de `disassociate-service-role-from-account`, se desvincula el rol de servicio de Greengrass de AWS IoT Greengrass para su cuenta de AWS.  

```
aws greengrassv2 disassociate-service-role-from-account
```
Salida:  

```
{
    "disassociatedAt": "2022-01-19T19:26:09Z"
}
```
Para obtener más información, consulte [Greengrass service role](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [DisassociateServiceRoleFromAccount](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/disassociate-service-role-from-account.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-component-version-artifact`
<a name="greengrassv2_GetComponentVersionArtifact_cli_topic"></a>

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

**AWS CLI**  
**Para obtener una URL con el fin de descargar un artefacto de componente**  
En el siguiente ejemplo de `get-component-version-artifact`, se obtiene una URL para descargar el archivo JAR del componente de la consola de depuración local.  

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

```
{
    "preSignedUrl": "https://evergreencomponentmanageme-artifactbucket7410c9ef-g18n1iya8kwr.s3.us-west-2.amazonaws.com/public/aws.greengrass.LocalDebugConsole/2.0.3/s3/ggv2-component-releases-prod-pdx/EvergreenHttpDebugView/2ffc496ba41b39568968b22c582b4714a937193ee7687a45527238e696672521/aws.greengrass.LocalDebugConsole/aws.greengrass.LocalDebugConsole.jar?X-Amz-Security-Token=KwfLKSdEXAMPLE..."
}
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [GetComponentVersionArtifact](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/get-component-version-artifact.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-component`
<a name="greengrassv2_GetComponent_cli_topic"></a>

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

**AWS CLI**  
**Ejemplo 1: descarga de la receta de un componente en formato YAML (Linux, macOS o Unix)**  
En el siguiente ejemplo de `get-component`, se descarga la receta de un componente de Hola, mundo a un archivo en formato YAML. Este comando hace lo siguiente:  
Utiliza los parámetros`--output` y `--query` para controlar la salida del comando. Estos parámetros extraen el blob de recetas de la salida del comando. Para obtener más información sobre la salida del comando, consulte [Controlling Command Output](https://docs.aws.amazon.com/cli/latest/userguide/controlling-output.html) en la *Guía del usuario de la interfaz de línea de comandos de AWS*. Utiliza la utilidad de `base64`. Esta utilidad descodifica el blob extraído en el texto original. El blob que devuelve un comando `get-component` correcto es texto codificado en base64. Debe descodificar este blob para obtener el texto original. Guarda el texto decodificado en un archivo. La sección final del comando (`> com.example.HelloWorld-1.0.0.json`) guarda el texto decodificado en un archivo.  

```
aws greengrassv2 get-component \
    --arn arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0 \
    --recipe-output-format YAML \
    --query recipe \
    --output text | base64 --decode > com.example.HelloWorld-1.0.0.json
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
**Ejemplo 2: descarga de la receta de un componente en formato YAML (CMD de Windows)**  
En el siguiente ejemplo de `get-component`, se descarga la receta de un componente de Hola, mundo a un archivo en formato YAML. Este comando usa la utilidad `certutil`.  

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

certutil -decode com.example.HelloWorld-1.0.0.yaml.b64 com.example.HelloWorld-1.0.0.yaml
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
**Ejemplo 3: descarga de la receta de un componente en formato YAML (Windows PowerShell)**  
En el siguiente ejemplo de `get-component`, se descarga la receta de un componente de Hola, mundo a un archivo en formato YAML. Este comando usa la utilidad `certutil`.  

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

certutil -decode com.example.HelloWorld-1.0.0.yaml.b64 com.example.HelloWorld-1.0.0.yaml
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [GetComponent](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/get-component.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-connectivity-info`
<a name="greengrassv2_GetConnectivityInfo_cli_topic"></a>

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

**AWS CLI**  
**Para obtener información de conectividad para un dispositivo de núcleo de Greengrass**  
En el siguiente ejemplo de `get-connectivity-info`, se obtiene información de conectividad para un dispositivo de núcleo de Greengrass. Los dispositivos de cliente utilizan esta información para conectarse al intermediario MQTT que se ejecuta en este dispositivo de núcleo.  

```
aws greengrassv2 get-connectivity-info \
    --thing-name MyGreengrassCore
```
Salida:  

```
{
    "connectivityInfo": [
        {
            "id": "localIP_192.0.2.0",
            "hostAddress": "192.0.2.0",
            "portNumber": 8883
        }
    ]
}
```
Para obtener más información, consulte [Manage core device endpoints](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-core-device-endpoints.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [GetConnectivityInfo](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/get-connectivity-info.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-core-device`
<a name="greengrassv2_GetCoreDevice_cli_topic"></a>

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

**AWS CLI**  
**Para obtener un dispositivo de núcleo**  
En el siguiente ejemplo de `get-core-device`, se obtiene información sobre un dispositivo de núcleo de AWS IoT Greengrass.  

```
aws greengrassv2 get-core-device \
    --core-device-thing-name MyGreengrassCore
```
Salida:  

```
{
    "coreDeviceThingName": "MyGreengrassCore",
    "coreVersion": "2.0.3",
    "platform": "linux",
    "architecture": "amd64",
    "status": "HEALTHY",
    "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00",
    "tags": {}
}
```
Para obtener más información, consulte [Check core device status](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-status.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [GetCoreDevice](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/get-core-device.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-deployment`
<a name="greengrassv2_GetDeployment_cli_topic"></a>

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

**AWS CLI**  
**Para obtener una implementación**  
En el siguiente ejemplo de `get-deployment`, se obtiene información sobre la implementación del componente del núcleo de AWS IoT Greengrass en un grupo de dispositivos de núcleo.  

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

```
{
    "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup",
    "revisionId": "14",
    "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "deploymentName": "Deployment for MyGreengrassCoreGroup",
    "deploymentStatus": "ACTIVE",
    "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
    "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
    "components": {
        "aws.greengrass.Nucleus": {
            "componentVersion": "2.0.3",
            "configurationUpdate": {
                "merge": "{\"jvmOptions\":\"-Xmx64m\",\"logging\":{\"level\":\"WARN\"}}",
                "reset": [
                    "/networkProxy",
                    "/mqtt"
                ]
            }
        }
    },
    "deploymentPolicies": {
        "failureHandlingPolicy": "ROLLBACK",
        "componentUpdatePolicy": {
            "timeoutInSeconds": 60,
            "action": "NOTIFY_COMPONENTS"
        },
        "configurationValidationPolicy": {
            "timeoutInSeconds": 60
        }
    },
    "iotJobConfiguration": {},
    "creationTimestamp": "2021-01-07T17:21:20.691000-08:00",
    "isLatestForTarget": false,
    "tags": {}
}
```
Para obtener más información, consulte [Deploy components to devices](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-deployments.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [GetDeployment](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/get-deployment.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-service-role-for-account`
<a name="greengrassv2_GetServiceRoleForAccount_cli_topic"></a>

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

**AWS CLI**  
**Para obtener el rol de servicio de Greengrass para su cuenta de AWS**  
En el siguiente ejemplo de `get-service-role-for-account`, se obtiene el rol de servicio asociado a AWS IoT Greengrass para su cuenta de AWS.  

```
aws greengrassv2 get-service-role-for-account
```
Salida:  

```
{
    "associatedAt": "2022-01-19T19:21:53Z",
    "roleArn": "arn:aws:iam::123456789012:role/service-role/Greengrass_ServiceRole"
}
```
Para obtener más información, consulte [Greengrass service role](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-service-role.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [GetServiceRoleForAccount](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/get-service-role-for-account.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-client-devices-associated-with-core-device`
<a name="greengrassv2_ListClientDevicesAssociatedWithCoreDevice_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `list-client-devices-associated-with-core-device`.

**AWS CLI**  
**Para enumerar los dispositivos cliente asociados a un dispositivo de núcleo**  
En el siguiente ejemplo de `list-client-devices-associated-with-core-device`, se enumeran todos los dispositivos de cliente asociados a un dispositivo de núcleo.  

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

```
{
    "associatedClientDevices": [
        {
            "thingName": "MyClientDevice2",
            "associationTimestamp": "2021-07-12T16:33:55.843000-07:00"
        },
        {
            "thingName": "MyClientDevice1",
            "associationTimestamp": "2021-07-12T16:33:55.843000-07:00"
        }
    ]
}
```
Para obtener más información, consulte [Interact with local IoT devices](https://docs.aws.amazon.com/greengrass/v2/developerguide/interact-with-local-iot-devices.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [ListClientDevicesAssociatedWithCoreDevice](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-client-devices-associated-with-core-device.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-component-versions`
<a name="greengrassv2_ListComponentVersions_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar las versiones disponibles del componente**  
En el siguiente ejemplo de `list-component-versions`, se enumeran todas las versiones de un componente de Hola, mundo.  

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

```
{
    "componentVersions": [
        {
            "componentName": "com.example.HelloWorld",
            "componentVersion": "1.0.1",
            "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1"
        },
        {
            "componentName": "com.example.HelloWorld",
            "componentVersion": "1.0.0",
            "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.0"
        }
    ]
}
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [ListComponentVersions](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-component-versions.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-components`
<a name="greengrassv2_ListComponents_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar componentes**  
En el siguiente ejemplo de `list-components`, se muestra cada componente y su versión más reciente definida en su cuenta de AWS en la región actual.  

```
aws greengrassv2 list-components
```
Salida:  

```
{
    "components": [
        {
            "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld",
            "componentName": "com.example.HelloWorld",
            "latestVersion": {
                "arn": "arn:aws:greengrass:us-west-2:123456789012:components:com.example.HelloWorld:versions:1.0.1",
                "componentVersion": "1.0.1",
                "creationTimestamp": "2021-01-08T16:51:07.352000-08:00",
                "description": "My first AWS IoT Greengrass component.",
                "publisher": "Amazon",
                "platforms": [
                    {
                        "attributes": {
                            "os": "linux"
                        }
                    }
                ]
            }
        }
    ]
}
```
Para obtener más información, consulte [Manage components](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-components.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener detalles de la API, consulte [ListComponents](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-components.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-core-devices`
<a name="greengrassv2_ListCoreDevices_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar los dispositivos de núcleo**  
En el siguiente ejemplo de `list-core-devices`, se muestran los dispositivos de núcleo de AWS IoT Greengrass de su cuenta de AWS en la región actual.  

```
aws greengrassv2 list-core-devices
```
Salida:  

```
{
    "coreDevices": [
        {
            "coreDeviceThingName": "MyGreengrassCore",
            "status": "HEALTHY",
            "lastStatusUpdateTimestamp": "2021-01-08T04:57:58.838000-08:00"
        }
    ]
}
```
Para obtener más información, consulte [Check core device status](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-status.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [ListCoreDevices](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-core-devices.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-deployments`
<a name="greengrassv2_ListDeployments_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar implementaciones**  
En el siguiente ejemplo de `list-deployments`, se muestra la versión más reciente de cada implementación definida en su cuenta de AWS en la región actual.  

```
aws greengrassv2 list-deployments
```
Salida:  

```
{
    "deployments": [
        {
            "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup",
            "revisionId": "14",
            "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
            "deploymentName": "Deployment for MyGreengrassCoreGroup",
            "creationTimestamp": "2021-01-07T17:21:20.691000-08:00",
            "deploymentStatus": "ACTIVE",
            "isLatestForTarget": false
        },
        {
            "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore",
            "revisionId": "1",
            "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
            "deploymentName": "Deployment for MyGreengrassCore",
            "creationTimestamp": "2021-01-06T16:10:42.407000-08:00",
            "deploymentStatus": "COMPLETED",
            "isLatestForTarget": false
        }
    ]
}
```
Para obtener más información, consulte [Deploy components to devices](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-deployments.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener más información sobre la API, consulte [ListDeployments](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-deployments.html) en *Referencia de comandos de la AWS CLI*. 

### `list-effective-deployments`
<a name="greengrassv2_ListEffectiveDeployments_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar los trabajos de implementación**  
En el siguiente ejemplo de `list-effective-deployments`, se enumeran las implementaciones que se aplican a un dispositivo de núcleo de AWS IoT Greengrass.  

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

```
{
    "effectiveDeployments": [
        {
            "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
            "deploymentName": "Deployment for MyGreengrassCore",
            "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333",
            "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore",
            "coreDeviceExecutionStatus": "COMPLETED",
            "reason": "SUCCESSFUL",
            "creationTimestamp": "2021-01-06T16:10:42.442000-08:00",
            "modifiedTimestamp": "2021-01-08T17:21:27.830000-08:00"
        },
        {
            "deploymentId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
            "deploymentName": "Deployment for MyGreengrassCoreGroup",
            "iotJobId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE44444",
            "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/a1b2c3d4-5678-90ab-cdef-EXAMPLE44444",
            "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup",
            "coreDeviceExecutionStatus": "SUCCEEDED",
            "reason": "SUCCESSFUL",
            "creationTimestamp": "2021-01-07T17:19:20.394000-08:00",
            "modifiedTimestamp": "2021-01-07T17:21:20.721000-08:00"
        }
    ]
}
```
Para obtener más información, consulte [Check core device status](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-status.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [ListEffectiveDeployments](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-effective-deployments.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-installed-components`
<a name="greengrassv2_ListInstalledComponents_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar los componentes instalados en un dispositivo de núcleo**  
En el siguiente ejemplo de `list-installed-components`, se muestran los componentes que están instalados en un dispositivo de núcleo de AWS IoT Greengrass.  

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

```
{
    "installedComponents": [
        {
            "componentName": "aws.greengrass.Cli",
            "componentVersion": "2.0.3",
            "lifecycleState": "RUNNING",
            "isRoot": true
        },
        {
            "componentName": "aws.greengrass.Nucleus",
            "componentVersion": "2.0.3",
            "lifecycleState": "FINISHED",
            "isRoot": true
        }
    ]
}
```
Para obtener más información, consulte [Check core device status](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-status.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [ListInstalledComponents](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-installed-components.html) en la *Referencia de comandos de la AWS CLI*. 

### `list-tags-for-resource`
<a name="greengrassv2_ListTagsForResource_cli_topic"></a>

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

**AWS CLI**  
**Para enumerar las etiquetas de un recurso**  
En el siguiente ejemplo de `list-tags-for-resource`, se muestran todas las etiquetas de un dispositivo de núcleo de AWS IoT Greengrass.  

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

```
{
    "tags": {
        "Owner": "richard-roe"
    }
}
```
Para obtener más información, consulte [Tag your resources](https://docs.aws.amazon.com/greengrass/v2/developerguide/tag-resources.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para ver los detalles de la API, consulte [ListTagsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/list-tags-for-resource.html) en la *Referencia de comandos de la AWS CLI*. 

### `tag-resource`
<a name="greengrassv2_TagResource_cli_topic"></a>

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

**AWS CLI**  
**Cómo añadir una etiqueta a un recurso**  
En el siguiente ejemplo de `tag-resource`, se agrega una etiqueta de propietario a un dispositivo de núcleo de AWS IoT Greengrass. Puede usar esta etiqueta para controlar el acceso al dispositivo de núcleo en función de quién sea su propietario.  

```
aws greengrassv2 tag-resource \
    --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore \
    --tags Owner=richard-roe
```
Este comando no genera ninguna salida.  
Para obtener más información, consulte [Tag your resources](https://docs.aws.amazon.com/greengrass/v2/developerguide/tag-resources.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para ver los detalles de la API, consulte [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/tag-resource.html) en la *Referencia de comandos de la AWS CLI*. 

### `untag-resource`
<a name="greengrassv2_UntagResource_cli_topic"></a>

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

**AWS CLI**  
**Para eliminar una etiqueta de un recurso**  
En el siguiente ejemplo de `untag-resource`, se elimina una etiqueta de propietario de un dispositivo de núcleo de AWS IoT Greengrass.  

```
aws iotsitewise untag-resource \
    --resource-arn arn:aws:greengrass:us-west-2:123456789012:coreDevices:MyGreengrassCore \
    --tag-keys Owner
```
Este comando no genera ninguna salida.  
Para obtener más información, consulte [Tag your resources](https://docs.aws.amazon.com/greengrass/v2/developerguide/tag-resources.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para ver los detalles de la API, consulte [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/untag-resource.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-connectivity-info`
<a name="greengrassv2_UpdateConnectivityInfo_cli_topic"></a>

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 dispositivo de núcleo de Greengrass**  
En el siguiente ejemplo de `update-connectivity-info`, se obtiene información de conectividad para un dispositivo de núcleo de Greengrass. Los dispositivos de cliente utilizan esta información para conectarse al intermediario MQTT que se ejecuta en este dispositivo de núcleo.  

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

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

```
{
    "version": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}
```
Para obtener más información, consulte [Manage core device endpoints](https://docs.aws.amazon.com/greengrass/v2/developerguide/manage-core-device-endpoints.html) en la *Guía para desarrolladores de AWS IoT Greengrass, versión 2*.  
+  Para obtener información sobre la API, consulte [UpdateConnectivityInfo](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/greengrassv2/update-connectivity-info.html) en la *Referencia de comandos de la AWS CLI*. 