AWS IoT Greengrass:核心软件的 OTA 更新

AWS IoT Greengrass:核心软件的 OTA 更新

AWS IoT Greengrass 核心软件打包了一个代理,此代理可以将核心的软件或代理本身更新到最新版本。这些更新通过无线 (OTA) 方式发送。

在对 Greengrass 核心软件启动 OTA 更新之前,要注意该操作对 Greengrass 组中设备的影响,不仅影响核心设备,还会影响在本地连接至该核心的客户端设备:

  • 核心在更新期间会关闭。
  • 在核心上运行的任何 Lambda 函数都将关闭。如果这些函数写入到本地资源,除非正常关闭,否则它们可能会导致这些资源的状态不正确。
  • 在核心的停机时间内,与 AWS 云的所有连接都将丢失。客户端设备通过核心路由的消息将丢失。
  • 凭证缓存会丢失。
  • 容纳 Lambda 函数的待处理工作的队列将丢失。
  • 长时间生存的 Lambda 函数将丢失其动态状态信息,并且将丢弃所有待处理工作。

OTA 更新期间保留以下状态信息:

  • 本地影子
  • Greengrass 日志
  • OTA 更新代理日志

创建角色

  1. 从控制面板选择IAM。

  1. 选择面板左边中(角色),并(创建角色)

  2. AWS产品中选择IoT,然后点击(下一步:权限)

  3. 默认,直接点击(下一步:标签)

  4. 标签选项可以为空,直接点击(下一步:审核)

  5. 添加角色名称TestRole,然后点击(创建角色)

  6. 点击刚刚创建的角色,进入设置界面,选择附加策略。

  7. 在附加策略中选择管理员策略,然后点击右下角按钮(附加策略)

创建OTA更新

  1. 在控制台界面选择(管理)下面的(任务),选择(创建)

  2. 选择(创建核心更新作业)

  3. 配置OTA更新:

    • 选择更新的设备:选择自己创建的核心。
    • S3 URL签署人角色:选择刚刚创建的角色。
    • 更新代理日志:选择无
    • 架构类型:根据操作系统选择。
      • ubuntu/x86_64
      • ubuntu/aarch64
      • amazon_linux/x86_64
      • raspbian/armv7l
      • raspbian/armv6l
      • openwrt/aarch64
      • openwrt/armv7l

  4. 选择(创建)

posted @ 2020-01-08 20:12  Hi,Simon  阅读(346)  评论(0编辑  收藏  举报