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.
Conceptos clave de trabajos
Los siguientes conceptos proporcionan detalles sobre los AWS IoT trabajos y sobre cómo crear e implementar trabajos para ejecutar operaciones remotas en sus dispositivos.
Conceptos básicos
Los siguientes son conceptos básicos que debe conocer al usar AWS IoT Jobs.
- Trabajo
-
Un trabajo es una operación remota que se envía a uno o varios dispositivos conectados al AWS IoT y que se ejecuta en ellos. Por ejemplo, puede definir un trabajo que indique a un conjunto de dispositivos descargar e instalar una aplicación o ejecutar actualizaciones de firmware, reiniciar, rotar certificados o realizar operaciones remotas de solución de problemas.
- Documento de trabajo
-
Para crear un trabajo, primero debe crear un documento de trabajo, que es una descripción de las operaciones remotas que deben realizar los dispositivos.
Los documentos de trabajo son documentos JSON con codificación UTF-8 y contienen la información que necesitan los dispositivos para realizar un trabajo. Un documento de trabajo contendrá una o varias URL en las que el dispositivo puede descargar una actualización u otros datos. El documento de trabajo puede almacenarse en un bucket de Amazon S3 o insertarse con el comando que crea el trabajo.
sugerencia
Para ver ejemplos de documentos de trabajo, consulte el ejemplo de jobs-agent.js
en el AWS IoT SDK de JavaScript. - Destino
-
Cuando cree un trabajo, debe especificar una lista de destinos que son los dispositivos que deben realizar las operaciones. Los destinos pueden ser objetos, grupos de objetos o ambos. El servicio AWS IoT Jobs envía un mensaje a cada destino para informarle de que hay un trabajo disponible.
- Implementación
-
Tras crear un trabajo proporcionando el documento de trabajo y especificando la lista de destinos, el documento de trabajo se implementa en los dispositivos de destino remotos para los que desee realizar la actualización. En el caso de los trabajos instantáneos, el trabajo se completará después de implementarlo en los dispositivos de destino. En el caso de los trabajos continuos, un trabajo se implementa en un grupo de dispositivos a medida que se agregan a los grupos.
- Ejecución de trabajo
-
Una ejecución de trabajo es una instancia de un trabajo en un dispositivo de destino. El destino inicia una ejecución de trabajo descargando el documento de trabajo. A continuación, realiza las operaciones especificadas en el documento e informa de su progreso a AWS IoT. Un número de ejecución es un identificador único de una ejecución de trabajo en un destino específico. El servicio AWS IoT Jobs proporciona comandos para realizar un seguimiento del progreso de la ejecución de un trabajo en un objetivo y del progreso de un trabajo en todos los objetivos.
Conceptos de tipos de trabajo
Los siguientes conceptos pueden ayudarle a comprender mejor los distintos tipos de trabajos que puede crear con AWS IoT Jobs.
- Trabajo de instantánea
-
De forma predeterminada, un trabajo se envía a todos los destinos especificados al crearlo. Después de que esos destinos finalicen el trabajo (o informen de que no pueden hacerlo), el trabajo se completa.
- Trabajo continuo
-
Un trabajo continuo se envía a todos los destinos especificados al crearlo. Sigue ejecutándose y se envía a todos los nuevos dispositivos (objetos) que se añaden al grupo de destino. Por ejemplo, puede usarse un trabajo continuo para incorporar o actualizar dispositivos a medida que se añaden a un grupo. Puede hacer que un trabajo sea continuo estableciendo un parámetro opcional al crearlo.
nota
Cuando se dirija a su flota de IoT mediante grupos de objetos dinámicos, recomendamos que utilice trabajos continuos en lugar de trabajos instantáneos. Al utilizar trabajos continuos, los dispositivos que se unen al grupo reciben la ejecución del trabajo incluso después de que este se haya creado.
URL prefirmadas
Para acceder de forma segura y por tiempo limitado a los datos que no están incluidos en el documento de trabajo, puede utilizar las URL prefirmadas de Amazon S3. Coloque los datos en un bucket de Amazon S3 y añadir un enlace de marcador de posición para los datos en el documento de trabajo. Cuando AWS IoT Jobs recibe una solicitud para el documento de trabajo, analiza el documento de trabajo buscando los enlaces de los marcadores de posición y, a continuación, los reemplaza por direcciones URL prefirmadas de Amazon S3.
El enlace de marcador de posición tiene el formato siguiente:
${aws:iot:s3-presigned-url:https://s3.amazonaws.com/
bucket
/key
}
donde bucket
es el nombre del bucket y clave
es el objeto en el bucket para el que se está realizando la vinculación.
En las regiones de Pekín y Ningxia, las URL prefirmadas solo funcionan si el propietario del recurso tiene una licencia de ICP (proveedor de contenido de Internet). Para obtener más información, consulte Amazon Simple Storage Service
Conceptos de configuración de trabajo
Los siguientes conceptos pueden ayudarlo a comprender cómo configurar los trabajos.
- Despliegues
-
Puede especificar la rapidez con la que se notifica a los destinos la ejecución de un trabajo pendiente. Esto le permite crear un despliegue por etapas para administrar mejor las actualizaciones, los reinicios y otras operaciones. Puede crear una configuración de despliegue mediante una tasa de despliegue estática o una tasa de despliegue exponencial. Para especificar el número máximo de destinos de trabajo de los que se informará por minuto, utilice una velocidad de despliegue estática.
Para ver ejemplos de cómo establecer las velocidades de despliegue y obtener más información sobre la configuración de los despliegues de trabajos, consulte Configuraciones de despliegue, programación y cancelación de trabajos.
- Programación
-
La programación de trabajos le permite programar el plazo de despliegue de un documento de trabajo en todos los dispositivos del grupo de destino para trabajos continuos e instantáneos. Además, puede crear un periodo de mantenimiento opcional que contenga fechas y horas específicas en las que un trabajo distribuirá el documento de trabajo a todos los dispositivos del grupo de destino. Un periodo de mantenimiento es una instancia recurrente con una frecuencia de fechas y horas diarias, semanales, mensuales o personalizadas seleccionadas durante la creación inicial del trabajo o de la plantilla de trabajo. Solo los trabajos continuos se pueden programar para que se desplieguen durante un periodo de mantenimiento.
La programación de trabajos es específica para su trabajo. No se pueden programar ejecuciones de trabajos individuales. Para obtener más información, consulte Configuraciones de despliegue, programación y cancelación de trabajos.
- Anular
-
Puede crear un conjunto de condiciones para cancelar despliegues una vez se cumplan los criterios que especifique. Para obtener más información, consulte Configuraciones de despliegue, programación y cancelación de trabajos.
- Tiempos de espera
-
Los tiempos espera de trabajos lo notifican cada vez que la implementación de un trabajo se bloquea en el estado
IN_PROGRESS
durante un periodo de tiempo más largo de lo previsto. Existen dos tipos de temporizadores: temporizadores en curso y temporizadores de pasos. Una vez el trabajo estáIN_PROGRESS
, puede monitorizar y realizar un seguimiento del progreso de la implementación del trabajo.Las configuraciones de implementación y anulación son específicas de su trabajo, mientras que la configuración del tiempo de espera es específica de la implementación de un trabajo. Para obtener más información, consulte Configuraciones de tiempo de espera y reintento de ejecución de trabajos.
- Reintentos
-
Los reintentos de trabajo permiten reintentar la ejecución del trabajo cuando se produce un error en un trabajo, se agota el tiempo de espera o ambos. Puede disponer de hasta 10 reintentos para ejecutar el trabajo. Puede monitorizar y realizar un seguimiento del progreso del reintento y comprobar si la ejecución del trabajo se ha realizado correctamente.
Las configuraciones de implementación y anulación son específicas de su trabajo, mientras que las configuraciones del tiempo de espera y de reintento son específicas de la ejecución de un trabajo. Para obtener más información, consulte Configuraciones de tiempo de espera y reintento de ejecución de trabajos.