Uso de plantillas administradas por AWS para implementar operaciones remotas habituales - 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.

Uso de plantillas administradas por AWS para implementar operaciones remotas habituales

Las plantillas administradas por AWS 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 administrada por AWS 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 controladores de trabajos de su propio dispositivo, o bien utilice el cliente de dispositivo de AWS IoT. 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 controladores de trabajos en el repositorio de GitHub de cliente de dispositivo de AWS IoT.

    • Uso del cliente de dispositivo de AWS IoT

      También puede instalar y ejecutar el cliente de dispositivo de AWS IoT en los 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 con AWS IoT mediante el protocolo MQTT y puede conectarse con las diferentes características 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 cliente de dispositivo de AWS IoT para ejecutar las acciones remotas de la plantilla administrada, 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 administradas por AWS para Jobs de AWS IoT 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.

Las plantillas administradas por AWS 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 consola de AWS IoT o la AWS Command Line Interface (AWS CLI) para crear un trabajo que utilice una plantilla administrada. 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 administrada 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 Prefirmado URLs.

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 administrada proporcionada por AWS para instalar una o varias 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 administrada 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 administrada proporcionada por AWS para desinstalar una o varias 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

Una plantilla administrada proporcionada por AWS para detener y reiniciar uno o varios 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

Una plantilla administrada proporcionada por AWS para iniciar uno o varios 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 administrada proporcionada por AWS para detener uno o varios 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 administrada 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}" } } ] }