任务关键概念 - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

任务关键概念

以下概念可以帮助您更多地了解 Amazon IoT Jobs,以及如何创建和部署任务以在设备上运行远程操作。

基本概念

以下是使用 Amazon IoT Jobs 时需要了解的基本概念。

任务

任务是被发送到一台或多台连接到 Amazon IoT 的设备并在这些设备上运行的远程操作。例如,您可以定义一个任务,该任务指示一组设备下载并安装应用程序或运行固件更新、重启、轮换证书或执行远程故障排除操作。

任务文档

要创建任务,您必须先创建一个任务文档,该文档是要由设备执行的远程操作的描述。

任务文档是 UTF-8 编码的 JSON 文档,其中包含您的设备执行任务所需的信息。任务文档包含一个或多个 URL,设备可从这些 URL 下载更新或其它数据。任务文档可存储在 Amazon S3 存储桶中,或者随用于创建任务的命令内联包含。

提示

有关任务文档示例,请参阅 Amazon IoT SDK for JavaScript 中的 jobs-agent.js 示例。

目标

在创建任务时,您需要指定一系列目标,它们是应执行操作的设备。目标可以是事物和/或事物组。Amazon IoT Jobs 会向每个目标发送一条消息以向该目标告知任务可用。

部署

通过提供任务文档并指定目标列表创建任务之后,系统会将任务文档部署到要为其执行更新的远程目标设备上。对于快照任务,任务会在部署到目标设备后完成。对于持续任务,任务会在设备添加到组时部署到该组设备。

任务 执行

任务执行是目标设备上的任务的实例。目标通过下载任务文档来开始执行任务。目标随后会执行在文档中指定的操作并将其进度报告给 Amazon IoT。执行编号是特定目标上的任务执行的唯一标识符。Amazon IoT Jobs 服务提供的命令可跟踪目标上任务执行的进度以及某个任务跨所有目标的进度。

任务类型概念

以下概念可帮助您更多地了解可以使用 Amazon IoT Jobs 创建的不同类型的任务。

快照任务

预设情况下,任务将发送到您在创建该任务时指定的所有目标。在这些目标完成任务 (或报告它们无法执行此操作) 后,任务即完成。

持续 任务

持续的任务将发送到您在创建该任务时指定的所有目标。它继续运行并发送到添加到目标组的任何新设备(事物)。例如,在将设备添加到组时,可使用持续任务加入或升级设备。您可以通过在创建作业时设置可选参数,来使作业成为持续作业。

注意

当使用动态事物组确定目标 IoT 机群时,我们建议您使用连续任务而不是快照任务。通过使用连续任务,加入组的设备即使在任务创建之后也会收到任务执行。

预签名 URL

为了安全、有时间限制地访问任务文档中未包含的数据,可以使用预签名的Amazon S3 URL。将数据放置在 Amazon S3 存储桶中,并添加一个指向任务文档中的数据的占位符链接。当 Amazon IoT Jobs 收到任务文档的请求时,它会解析任务文档以查找占位符链接并将其替换为预签名 Amazon S3 URL。

占位符链接采用以下格式:

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

其中 bucket 是您的存储桶名称,key 是您链接到的存储桶中的对象。

在北京和宁夏区域中,仅当资源拥有者具有 ICP (互联网内容提供商)许可证时,预签名 URL 才起作用。有关更多信息,请参阅在中国的Amazon服务入门文档中的 Amazon Simple Storage Service

任务配置概念

以下概念可以帮助您了解如何配置任务。

推出

您可以指定向目标发送待处理任务执行通知的速度。这样,您就可以创建一个分段推出以更好地管理更新、重启和其它操作。您可以使用静态推出率或指数级推出率来创建部署配置。您可以使用静态推出速率来指定每分钟可通知的最大任务目标数。

有关配置任务推出率的更多信息,请参阅任务推出和中止配置

中止

您可以创建一组条件在满足您指定的特定条件时中止推出。有关更多信息,请参阅任务推出和中止配置

超时

只要任务部署卡在 IN_PROGRESS 状态的时间超出预期,您就会收到任务超时通知。有两种类型的计时器:进行中计时器和步骤计时器。当任务为 IN_PROGRESS 时,您可以监控和跟踪任务部署的进度。

推出和中止配置特定于您的任务,而超时配置特定于任务部署。有关更多信息,请参阅任务执行超时和重试配置

重试

通过任务重试,可以在任务失败和/或超时时重试任务执行。您最多可以重试 10 次任务执行。您可以监控和跟踪重试的进度以及任务执行是否成功。

推出和中止配置特定于您的任务,而超时和重试配置特定于任务执行。有关更多信息,请参阅任务执行超时和重试配置