Concepts clés relatifs aux tâches - AWS IoT Core

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Concepts clés relatifs aux tâches

Les concepts suivants fournissent des détails sur les AWS IoT tâches et sur la façon de créer et de déployer des tâches pour exécuter des opérations à distance sur vos appareils.

Concepts de base

Les concepts de base que vous devez connaître lorsque vous utilisez AWS IoT Jobs sont les suivants.

Job

Une tâche est une opération distante qui est envoyée vers un ou plusieurs appareils connectés à et exécutée par ceux-ci. AWS IoT Par exemple, vous pouvez définir une tâche qui ordonne à un ensemble d'appareils de télécharger et d'installer une application ou de lancer la mise à jour d'un microprogramme, de redémarrer, de procéder à une rotation des certificats ou d'exécuter des opérations de dépannage à distance.

Document de tâche

Pour créer une tâche, vous devez d'abord créer un document de tâche qui est une description des opérations distantes devant être effectuées par les appareils.

Les documents de tâche sont des documents JSON codés en UTF-8 et ils contiennent l’informations dont vos appareils ont besoin pour effectuer une tâche. Un document de tâche contient une ou plusieurs URLs où l'appareil peut télécharger une mise à jour ou d'autres données. Le document de tâche peut être stocké dans un compartiment Amazon S3 ou être inclus en ligne avec la commande de création de la tâche.

Astuce

Pour des exemples de documents de travail, consultez l'exemple jobs-agent.js dans le AWS IoT SDK pour JavaScript.

Cible

Lorsque vous créez une tâche, vous spécifiez une liste de cibles qui correspondent aux appareils qui doivent effectuer les opérations. Les cibles peuvent être des objets ou des groupes d'objets, ou les deux. Le service AWS IoT Jobs envoie un message à chaque cible pour l'informer qu'une offre d'emploi est disponible.

Déploiement

Une fois que vous avez créé une tâche en fournissant le document de tâche et en spécifiant votre liste de cibles, le document de tâche est ensuite déployé sur les machines cibles distantes pour lesquelles vous souhaitez effectuer la mise à jour. Pour les tâches de capture instantanée, la tâche sera terminée après le déploiement sur les machines cibles. Pour les tâches continues, une tâche est déployée sur un groupe d'appareils au fur et à mesure qu'ils sont ajoutés aux groupes.

Exécution de tâche

Une exécution de tâche est une instance d'une tâche sur un appareil cible. La cible commence une exécution d'une tâche en téléchargeant le document de tâche. Il exécute ensuite les opérations spécifiées dans le document et rend compte de sa progression à AWS IoT. Un numéro d'exécution est un identifiant unique d'une exécution de tâche sur une cible spécifique. Le service AWS IoT Jobs fournit des commandes permettant de suivre la progression de l'exécution d'une tâche sur une cible et la progression d'une tâche sur toutes les cibles.

Concepts de types de tâche

Les concepts suivants peuvent vous aider à mieux comprendre les différents types de tâches que vous pouvez créer avec AWS IoT Jobs.

Tâche d'instantané

Par défaut, une tâche est envoyée à toutes les cibles que vous spécifiez lorsque vous créez la tâche. Une fois que ces cibles ont terminé la tâche (ou indiqué qu'elles sont dans l'impossibilité de l'exécuter), la tâche est achevée.

Tâche continue

Une tâche continue est envoyée à toutes les cibles que vous spécifiez lorsque vous créez la tâche. Elle continue de s'exécuter et est envoyée à tous les nouveaux appareils (objets) qui sont ajoutées au groupe cible. Par exemple, une tâche continue peut être utilisée pour intégrer ou mettre à niveau des appareils au fur et à mesure qu’ils sont ajoutés à un groupe. Vous pouvez rendre une tâche continue en définissant un paramètre facultatif lors de la création de la tâche.

Note

Lorsque vous ciblez votre parc IoT à l'aide de groupes d'objets dynamiques, nous vous recommandons d'utiliser des tâches continues plutôt que des tâches instantanées. En utilisant des tâches continues, les appareils qui rejoignent le groupe reçoivent l'exécution de la tâche même après la création de la tâche.

URL présignées

Pour un accès aux données sécurisé et limité dans le temps qui n’est pas inclus dans le document de travail, vous pouvez utiliser des URL Amazon S3 présignées. Placez vos données dans un compartiment et ajouter un lien d’espace réservé aux données du document de tâche. Lorsque AWS IoT Jobs reçoit une demande pour le document de travail, il analyse le document de travail en recherchant les liens réservés, puis remplace les liens par des URL Amazon S3 présignées.

Le lien d'espace réservé a le format suivant :

${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}

bucket correspond au nom de votre compartiment et key à l'objet du compartiment vers lequel vous établissez le lien.

Dans les régions de Beijing et de Ningxia, les URL présignées ne fonctionnent que si le propriétaire de la ressource possède une licence ICP (fournisseur de contenu Internet). Pour plus d'informations, consultez Amazon Simple Storage Service dans la documentation Getting Started with AWS Services in China.

Concepts de configuration de tâche

Les concepts suivants peuvent vous aider à comprendre comment configurer les tâches.

Déploiements

Vous pouvez spécifier la vitesse à laquelle les cibles sont averties d'une exécution de tâche en attente. Vous pouvez ainsi créer un déploiement étalé afin de mieux gérer les mises à jour, les redémarrages et autres opérations. Vous pouvez créer une configuration de déploiement en utilisant un taux de déploiement statique ou un taux de déploiement exponentiel. Pour spécifier le nombre maximum d'objectifs de travail à informer par minute, utilisez un taux de déploiement statique.

Pour des exemples de définition des taux de déploiement et pour plus d'informations sur la configuration des déploiements de tâches, consultez Configurations du déploiement, de la planification et de l’annulation des tâches.

Planification

La planification des tâches vous permet de planifier le délai de déploiement d'un document de travail sur tous les appareils du groupe cible pour des tâches continues et instantanées. En outre, vous pouvez créer une fenêtre de maintenance facultative contenant les dates et heures spécifiques auxquelles une tâche déploiera le document de tâche sur tous les appareils du groupe cible. Une fenêtre de maintenance enregistre des cas ayant fréquence quotidiennes, hebdomadaires, mensuelles ou une fréquence de dates et d'heures personnalisées sélectionnées lors de la création initiale de la tâche ou du modèle de tâche. Seules les tâches continues peuvent être planifiées pour effectuer un déploiement pendant une fenêtre de maintenance.

La planification des tâches est spécifique à votre travail. Les Exécutions de Tâches Individuelles ne peuvent pas être planifiées. Pour de plus amples informations, veuillez consulter Configurations du déploiement, de la planification et de l’annulation des tâches.

Interruption

Vous pouvez créer un ensemble de conditions pour interrompre les déploiements lorsque les critères que vous spécifiez sont satisfaits. Pour de plus amples informations, veuillez consulter Configurations du déploiement, de la planification et de l’annulation des tâches.

Délais

Les délais d'expiration de tâche vous permettent de recevoir une notification chaque fois qu'une exécution de tâche se retrouve bloquée dansIN_PROGRESS l'état pendant une période étonnamment longue. Il existe deux types de minuteurs : minuteurs d'avancement et minuteurs d'étape. Lorsque la tâche est IN_PROGRESS, vous pouvez surveiller et suivre la progression du déploiement de votre tâche.

Les configurations de déploiement et d'interruption sont spécifiques à votre tâche, tandis que la configuration du délai d'expiration est spécifique à un déploiement de tâche. Pour de plus amples informations, veuillez consulter Configurations du délai d’exécution des tâches et des nouvelles tentatives.

Nouvelle tentative

Les nouvelles tentatives permettent de retenter l'exécution d'une tâche lorsqu'une tâche échoue, expire, ou les deux. Vous pouvez avoir jusqu'à 10 tentatives d'exécution de la tâche. Vous pouvez surveiller et suivre la progression de votre nouvelle tentative et déterminer si l'exécution de la tâche a réussi.

Les configurations de déploiement et d'abandon sont spécifiques à votre tâche, tandis que les configurations de délai d'expiration et de nouvelle tentative sont spécifiques à l'exécution d'une tâche. Pour de plus amples informations, veuillez consulter Configurations du délai d’exécution des tâches et des nouvelles tentatives.