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

Amazon IoT Greengrass Version 1 2023 年 6 月 30 日进入延长寿命阶段。有关更多信息,请参阅 Amazon IoT Greengrass V1 维护策略。在此日期之后,将 Amazon IoT Greengrass V1 不会发布提供功能、增强功能、错误修复或安全补丁的更新。在上面运行的设备 Amazon IoT Greengrass V1 不会中断,将继续运行并连接到云端。我们强烈建议您迁移到 Amazon IoT Greengrass Version 2,这样可以添加重要的新功能支持其他平台

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

配置设备和订阅

当 Amazon IoT Greengrass 核心连接到 Internet 时,影子可以同步到 Amazon IoT。在此模块中,您首先使用本地影子而不同步到云。然后,您启用云同步。

每个客户端设备都有自己的影子。有关更多信息,请参阅 Amazon IoT 开发人员指南中的适用于 Amazon IoT 的 Device Shadow 服务

  1. 在组配置页面上,选择客户端设备选项卡。

  2. 客户端设备选项卡中,在 Amazon IoT Greengrass 组中添加两台新的客户端设备。有关此过程的详细步骤,请参阅在 Amazon IoT Greengrass 组中创建客户端设备

    • 将客户端设备命名为 GG_SwitchGG_TrafficLight

    • 生成并下载两个客户端设备的安全资源。

    • 记下客户端设备的安全资源的文件名中的证书 ID。稍后会用到这些值。

  3. 在您的计算机上创建一个文件夹来保存这些客户端设备的安全凭证。将证书和密钥复制到此文件夹。

  4. 确保客户端设备设置为使用本地影子,而不与 Amazon Web Services 云 同步。如果不是,请选择客户端设备,选择同步影子,然后选择禁用与云端的影子同步

  5. 将下表中的订阅添加到您的组中。例如,要创建第一个订阅,请执行以下操作:

    1. 在组配置页面中,选择 订阅选项卡,然后选择 添加

    2. 对于来源类型,选择客户端设备,然后选择 GG_Switch

    3. 对于目标类型,选择服务,然后选择本地影子服务

    4. 对于 Topic filter (主题筛选条件),输入 $aws/things/GG_TrafficLight/shadow/update

    5. 选择 Create subscription(创建订阅)。

    主题的输入方式必须与表中所示完全相同。尽管可以使用通配符来整合一些订阅,但我们不建议这种做法。有关更多信息,请参阅 Amazon IoT 开发人员指南中的影子 MQTT 主题

    目标 主题 注意

    GG_Switch

    本地影子服务

    $aws/things/GG_TrafficLight/shadow/update

    GG_Switch 发送更新请求来更新主题。

    本地影子服务

    GG_Switch

    $aws/things/GG_TrafficLight/shadow/update/accepted

    GG_Switch 需要知道更新请求是否被接受。

    本地影子服务

    GG_Switch

    $aws/things/GG_TrafficLight/shadow/update/rejected

    GG_Switch 需要知道更新请求是否被拒绝。

    GG_TrafficLight

    本地影子服务

    $aws/things/GG_TrafficLight/shadow/update

    GG_TrafficLight 将其状态的更新发送到更新主题。

    本地影子服务

    GG_TrafficLight

    $aws/things/GG_TrafficLight/shadow/update/delta

    本地影子服务通过增量主题将收到的更新发送到 GG_TrafficLight。

    本地影子服务

    GG_TrafficLight

    $aws/things/GG_TrafficLight/shadow/update/accepted

    GG_TrafficLight 需要知道其状态更新是否被接受。

    本地影子服务

    GG_TrafficLight

    $aws/things/GG_TrafficLight/shadow/update/rejected

    GG_TrafficLight 需要知道其状态更新是否被拒绝。

    新订阅会显示在 订阅 选项卡上。

    注意

    有关 $ 符号的信息,请参阅保留主题

  6. 确保启用了自动检测,以便 Greengrass 核心可以发布其 IP 地址的列表。客户端设备使用此信息来发现核心。执行以下操作:

    1. 在组配置页面上,选择Lambda 函数选项卡。

    2. 系统 Lambda 函数下,选择 IP 检测器,然后选择编辑

    3. 编辑 IP 检测器设置中,选择自动检测和覆盖 MQTT 代理端点,然后选择保存

  7. 确保 Greengrass 进程守护程序正在运行,如 将云配置部署到核心设备 中所述。

  8. 在组配置页面上,选择部署