Use plantillas AWS administradas para implementar operaciones remotas comunes - AWS IoT Core

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Use plantillas AWS administradas para implementar operaciones remotas comunes

AWS Las plantillas gestionadas son plantillas de trabajo proporcionadas por AWS. Se utilizan para realizar acciones remotas frecuentes, como reiniciar, descargar un archivo o instalar una aplicación en los dispositivos. Estas plantillas tienen un documento de trabajo predefinido para cada acción remota, por lo que no tiene que crear su propio documento de trabajo.

Puede elegir entre un conjunto de configuraciones predefinidas y crear trabajos con estas plantillas sin necesidad de escribir ningún código adicional. Con las plantillas administradas, puede ver el documento de trabajo implementado en sus flotas. Puede crear un trabajo con estas plantillas y crear una plantilla de trabajo personalizada, que puede reutilizar para sus operaciones remotas.

¿Qué contienen las plantillas administradas?

Cada plantilla AWS gestionada contiene:

  • El entorno para ejecutar los comandos del documento de trabajo.

  • Un documento de trabajo que especifica el nombre de la operación y sus parámetros. Por ejemplo, si utiliza una plantilla Descargar archivo, el nombre de la operación es Descargar archivo y los parámetros pueden ser:

    • La URL del archivo que desea descargar a su dispositivo. Puede ser un recurso de Internet o una URL pública o prefirmada de Amazon Simple Storage Service (Amazon S3).

    • Una ruta de archivo local en el dispositivo para almacenar el archivo descargado.

    Para obtener más información sobre los documentos de trabajo y sus parámetros, consulte Acciones remotas y documentos de trabajo de plantillas administradas.

Requisitos previos

Para que los dispositivos ejecuten las acciones remotas especificadas en el documento de trabajo de la plantilla administrada, debe:

  • Instalar el software específico en el dispositivo

    Utilice el software y los gestores de tareas de su propio dispositivo, o bien utilice el cliente del AWS IoT dispositivo. Según el caso empresarial, también puede ejecutar ambos para que desempeñen funciones diferentes.

    • Uso del software y los controladores de trabajos de su propio dispositivo

      Puede escribir su propio código para los dispositivos utilizando el SDK para dispositivos con AWS IoT y su biblioteca de controladores que admiten las operaciones remotas. Para implementar y ejecutar trabajos, compruebe que las bibliotecas de agentes de dispositivo se hayan instalado correctamente y se estén ejecutando en los dispositivos.

      También puede optar por utilizar sus propios controladores que admitan las operaciones remotas. Para obtener más información, consulte Ejemplos de gestores de tareas en el repositorio de AWS IoT Device Client GitHub.

    • Utilice el cliente de AWS IoT dispositivos

      O bien, puede instalar y ejecutar el AWS IoT Device Client en sus dispositivos, ya que, de forma predeterminada, admite el uso de todas las plantillas administradas directamente desde la consola.

      El cliente de dispositivo es un software de código abierto escrito en C++ que puede compilar e instalar en los dispositivos de IoT integrados basados en Linux. El cliente de dispositivo tiene un cliente base y características discretas en el lado del cliente. El cliente base establece la conectividad a AWS IoT través del protocolo MQTT y puede conectarse con las diferentes funciones del lado del cliente.

      Para realizar operaciones remotas en los dispositivos, utilice la característica de Jobs del lado del cliente del cliente de dispositivo. Esta característica contiene un analizador para recibir el documento de trabajo y controladores de trabajos que implementan las acciones remotas especificadas en el documento de trabajo. Para obtener más información sobre el cliente de dispositivo y sus características, consulte AWS IoT Cliente de dispositivo de .

      Cuando se ejecuta en dispositivos, el cliente de dispositivo recibe el documento de trabajo y tiene una implementación específica de la plataforma que utiliza para ejecutar los comandos del documento. Para obtener más información acerca de la configuración del dispositivo de cliente y el uso de la característica Jobs, consulte los Tutoriales de AWS IoT.

  • Uso de un entorno compatible

    Para cada plantilla administrada, encontrará información sobre el entorno que puede utilizar para ejecutar las acciones remotas. Le recomendamos que use la plantilla con un entorno Linux compatible, tal y como se especifica en la plantilla. Utilice el AWS IoT Device Client para ejecutar las acciones remotas de la plantilla gestionada, ya que es compatible con los microprocesadores y entornos Linux más comunes, como Debian y Ubuntu.

Acciones remotas y documentos de trabajo de plantillas administradas

En la siguiente sección se enumeran las diferentes plantillas AWS gestionadas para AWS IoT Jobs y se describen las acciones remotas que se pueden realizar en los dispositivos. La siguiente sección contiene información sobre el documento de trabajo y una descripción de los parámetros del documento de trabajo para cada acción remota. El software del dispositivo utiliza el nombre de la plantilla y sus parámetros para realizar la acción remota.

AWS Las plantillas gestionadas aceptan parámetros de entrada para los que se especifica un valor al crear un trabajo con la plantilla. Todas las plantillas administradas tienen dos parámetros de entrada opcionales en común: runAsUser y pathToHandler. A excepción de la plantilla AWS-Reboot, las plantillas requieren parámetros de entrada adicionales para los que debe especificar un valor al crear un trabajo con la plantilla. Estos parámetros de entrada obligatorios varían en función de la plantilla que elija. Por ejemplo, si elige la plantilla AWS-Download-File, debe especificar una lista de paquetes para instalar y una URL de la que descargar los archivos.

Especifique un valor para los parámetros de entrada cuando utilice la AWS IoT consola o el AWS Command Line Interface (AWS CLI) para crear un trabajo que utilice una plantilla gestionada. Cuando utilice la CLI, proporcione estos valores mediante el objeto document-parameters. Para obtener más información, consulte documentParameters.

nota

Use document-parameters solo al crear trabajos a partir de plantillas administradas por AWS . Este parámetro no se puede usar con plantillas de trabajos personalizadas ni para crear trabajos a partir de ellas.

A continuación se muestra una descripción de los parámetros de entrada opcionales más comunes. Verá una descripción de los demás parámetros de entrada que requiere cada plantilla administrada en la siguiente sección.

runAsUser

Este parámetro especifica si se debe ejecutar el controlador de trabajos como otro usuario. Si no se especifica durante la creación del trabajo, el controlador de trabajos se ejecuta con el mismo usuario que el cliente de dispositivo. Cuando ejecute el controlador de trabajos como otro usuario, especifique un valor de cadena que no supere los 256 caracteres.

pathToHandler

La ruta al controlador de trabajos que se ejecuta en el dispositivo. Si no se especifica durante la creación del trabajo, el cliente de dispositivo utiliza el directorio de trabajo actual.

A continuación se muestran las distintas acciones remotas, sus documentos de trabajo y los parámetros que aceptan. Todas estas plantillas son compatibles con el entorno Linux para ejecutar la operación remota en el dispositivo.

Nombre de la plantilla

AWS–Download–File

Descripción de la plantilla

Una plantilla gestionada proporcionada por AWS para descargar un archivo.

Parámetros de entrada

Esta plantilla tiene los siguientes parámetros obligatorios. También puede especificar los parámetros opcionales runAsUser y pathToHandler.

downloadUrl

La URL de la que descargar el archivo. Puede ser un recurso de Internet, un objeto de Amazon S3 al que se pueda acceder públicamente o un objeto de Amazon S3 al que solo pueda acceder su dispositivo mediante una URL prefirmada. Para obtener más información sobre el uso de las URL prefirmadas y la concesión de permisos, consulte URL prefirmadas.

filePath

Una ruta de archivo local que muestra la ubicación en el dispositivo para almacenar el archivo descargado.

Comportamiento del dispositivo

El dispositivo descarga el archivo desde la ubicación especificada, comprueba que la descarga se ha completado y lo almacena localmente.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, download-file.sh, que el controlador de trabajos debe ejecutar para descargar el archivo. También muestra los parámetros obligatorios downloadUrl y filePath.

{ "version": "1.0", "steps": [ { "action": { "name": "Download-File", "type": "runHandler", "input": { "handler": "download-file.sh", "args": [ "${aws:iot:parameter:downloadUrl}", "${aws:iot:parameter:filePath}" ], "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS–Install–Application

Descripción de la plantilla

Una plantilla gestionada que se proporciona AWS para instalar una o más aplicaciones.

Parámetros de entrada

Esta plantilla tiene el siguiente parámetro obligatorio, packages. También puede especificar los parámetros opcionales runAsUser y pathToHandler.

packages

Una lista separada por espacios de una o varias aplicaciones que se van a instalar.

Comportamiento del dispositivo

El dispositivo instala las aplicaciones tal y como se especifica en el documento de trabajo.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, install-packages.sh, que el controlador de trabajos debe ejecutar para descargar el archivo. También muestra el parámetro obligatorio packages.

{ "version": "1.0", "steps": [ { "action": { "name": "Install-Application", "type": "runHandler", "input": { "handler": "install-packages.sh", "args": [ "${aws:iot:parameter:packages}" ], "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS–Reboot

Descripción de la plantilla

Una plantilla gestionada proporcionada por AWS para reiniciar el dispositivo.

Parámetros de entrada

Esta plantilla no tiene parámetros obligatorios. Puede especificar los parámetros opcionales runAsUser y pathToHandler.

Comportamiento del dispositivo

El dispositivo se reinicia correctamente.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, reboot.sh, que el controlador de trabajos debe ejecutar para reiniciar el dispositivo.

{ "version": "1.0", "steps": [ { "action": { "name": "Reboot", "type": "runHandler", "input": { "handler": "reboot.sh", "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS–Remove–Application

Descripción de la plantilla

Una plantilla gestionada proporcionada por AWS para desinstalar una o más aplicaciones.

Parámetros de entrada

Esta plantilla tiene el siguiente parámetro obligatorio, packages. También puede especificar los parámetros opcionales runAsUser y pathToHandler.

packages

Una lista separada por espacios de una o varias aplicaciones que se van a desinstalar.

Comportamiento del dispositivo

El dispositivo desinstala las aplicaciones tal y como se especifica en el documento de trabajo.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, remove-packages.sh, que el controlador de trabajos debe ejecutar para descargar el archivo. También muestra el parámetro obligatorio packages.

{ "version": "1.0", "steps": [ { "action": { "name": "Remove-Application", "type": "runHandler", "input": { "handler": "remove-packages.sh", "args": [ "${aws:iot:parameter:packages}" ], "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS–Restart–Application

Descripción de la plantilla

Plantilla administrada proporcionada por AWS para detener y reiniciar uno o más servicios.

Parámetros de entrada

Esta plantilla tiene el siguiente parámetro obligatorio, services. También puede especificar los parámetros opcionales runAsUser y pathToHandler.

Servicios

Una lista separada por espacios de una o varias aplicaciones que se van a reiniciar.

Comportamiento del dispositivo

Las aplicaciones especificadas se detienen y, a continuación, se reinician en el dispositivo.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, restart-services.sh, que el controlador de trabajos debe ejecutar para reiniciar los servicios del sistema. También muestra el parámetro obligatorio services.

{ "version": "1.0", "steps": [ { "action": { "name": "Restart-Application", "type": "runHandler", "input": { "handler": "restart-services.sh", "args": [ "${aws:iot:parameter:services}" ], "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS-Start-Application

Descripción de la plantilla

Plantilla gestionada proporcionada por AWS para iniciar uno o más servicios.

Parámetros de entrada

Esta plantilla tiene el siguiente parámetro obligatorio, services. También puede especificar los parámetros opcionales runAsUser y pathToHandler.

services

Una lista separada por espacios de una o varias aplicaciones que se van a iniciar.

Comportamiento del dispositivo

Las aplicaciones especificadas comienzan a ejecutarse en el dispositivo.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, start-services.sh, que el controlador de trabajos debe ejecutar para iniciar los servicios del sistema. También muestra el parámetro obligatorio services.

{ "version": "1.0", "steps": [ { "action": { "name": "Start-Application", "type": "runHandler", "input": { "handler": "start-services.sh", "args": [ "${aws:iot:parameter:services}" ], "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS–Stop–Application

Descripción de la plantilla

Una plantilla gestionada proporcionada por AWS para detener uno o más servicios.

Parámetros de entrada

Esta plantilla tiene el siguiente parámetro obligatorio, services. También puede especificar los parámetros opcionales runAsUser y pathToHandler.

services

Una lista separada por espacios de una o varias aplicaciones que se van a detener.

Comportamiento del dispositivo

Las aplicaciones especificadas dejan de ejecutarse en el dispositivo.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al controlador de tareas y al script de shell, stop-services.sh, que el controlador de trabajos debe ejecutar para detener los servicios del sistema. También muestra el parámetro obligatorio services.

{ "version": "1.0", "steps": [ { "action": { "name": "Stop-Application", "type": "runHandler", "input": { "handler": "stop-services.sh", "args": [ "${aws:iot:parameter:services}" ], "path": "${aws:iot:parameter:pathToHandler}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }
Nombre de la plantilla

AWS–Run–Command

Descripción de la plantilla

Una plantilla gestionada proporcionada por AWS para ejecutar un comando de shell.

Parámetros de entrada

Esta plantilla tiene el siguiente parámetro obligatorio, command. También puede especificar el parámetro opcional runAsUser.

command

Una cadena de comandos separados por comas. Todas las comas contenidas en el propio comando deben ir con una secuencia de escape.

Comportamiento del dispositivo

El dispositivo ejecuta el comando shell tal y como se especifica en el documento de trabajo.

Documento de trabajo

A continuación se muestra el documento de trabajo y su versión más reciente. La plantilla muestra la ruta al comando de trabajo y el comando proporcionado, que ejecutará el dispositivo.

{ "version": "1.0", "steps": [ { "action": { "name": "Run-Command", "type": "runCommand", "input": { "command": "${aws:iot:parameter:command}" }, "runAsUser": "${aws:iot:parameter:runAsUser}" } } ] }