修改部署 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

修改部署

每个目标事物或事物组一次可以有一个活动部署。当您为已有部署的目标创建部署时,新部署中的软件组件将替换之前部署中的软件组件。如果新部署没有定义之前的部署定义的组件,则Amazon IoT Greengrass核心软件将该组件从目标核心设备中移除。您可以修改现有部署,这样就不会将核心设备上运行的组件从之前的部署移除到目标部署。

要修订部署,您可以创建一个部署,该部署从之前的部署中存在的相同组件和配置开始。您会使用CreateDeployment操作,这与你用来的操作相同创建部署.

修改部署(Amazon CLI)
  1. 运行以下命令以列出部署目标的部署。ReplacetargetArn使用目标的 ARNAmazon IoT事物或事物组。

    aws greengrassv2 list-deployments --target-arn targetArn

    响应包含目标的最新部署的列表。将复制到deploymentId将响应到下一步中使用。

    注意

    您还可以修订目标的最新修订版以外的部署。指定--history-filter ALL参数来列出目标的所有部署。然后,复制您要修改的部署的 ID。

  2. 运行以下命令以获取部署的详细信息。这些详细信息包括元数据、组件和作业配置。ReplacedeploymentId将使用上一步中的 ID。

    aws greengrassv2 get-deployment --deployment-id deploymentId

    响应包含部署的详细信息。

  3. 创建一个名为 deployment.json 的文件,并将上一命令的响应复制到该文件中。

  4. deployment.json 中的 JSON 对象中删除以下键/值对:

    • deploymentId

    • revisionId

    • iotJobId

    • iotJobArn

    • creationTimestamp

    • isLatestForTarget

    • deploymentStatus

    这些区域有:CreateDeployment操作需要具有以下结构的负载。

    { "targetArn": "String", "components": Map of components, "deploymentPolicies": DeploymentPolicies, "iotJobConfiguration": DeploymentIoTJobConfiguration, "tags": Map of tags }
  5. deployment.json 中,执行以下任何操作:

    • 更改部署的名称 (deploymentName)。

    • 更改部署的组件 (components)。

    • 更改部署的策略 (deploymentPolicies)。

    • 更改部署的作业配置 (iotJobConfiguration)。

    • 更改部署的标签 (tags)。

    有关如何定义这些部署详细信息的更多信息,请参阅创建部署.

  6. 运行以下命令以创建部署deployment.json.

    aws greengrassv2 create-deployment --cli-input-json file://deployment.json

    响应包括以下内容:deploymentId标识了此部署。您可使用部署 ID 查看部署的状态。有关更多信息,请参阅检查部署状态