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

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

管理核心设备端点

当您使用云发现时,您可以将核心设备的MQTT代理端点存储在 Amazon IoT Greengrass 云服务中。客户端设备连接到 Amazon IoT Greengrass 以检索这些端点及其关联核心设备的其他信息。

对于每台核心设备,您可以自动或手动管理端点。

  • 使用 IP 探测器自动管理端点

    如果您的网络设置不复杂,例如客户端设备与核心设备位于同一网络上,则可以部署 IP 检测器组件来自动为您管理核心设备端点。例如,如果核心设备位于将MQTT代理端口转发到核心设备的路由器后面,则无法使用 IP 检测器组件。

    如果您部署到事物组,IP 检测器组件也很有用,因为它可以管理事物组中所有核心设备的端点。有关更多信息,请参阅 使用 IP 探测器自动管理端点

  • 手动管理端点

    如果您无法使用 IP 检测器组件,则必须手动管理核心设备端点。您可以使用控制台或更新这些终端节点API。有关更多信息,请参阅 手动管理端点

使用 IP 探测器自动管理端点

如果您的网络设置很简单,例如客户端设备与核心设备位于同一网络上,则可以部署 IP 检测器组件来执行以下操作:

  • 监控 Greengrass 核心设备的本地网络连接信息。此信息包括核心设备的网络端点和MQTT代理运行的端口。

  • 向 Amazon IoT Greengrass 云服务报告核心设备的连接信息。

IP 检测器组件会覆盖您手动设置的端点。

重要

核心设备的 Amazon IoT 策略必须允许使用 IP 检测器组件的greengrass:UpdateConnectivityInfo权限。有关更多信息,请参阅数据层面操作的 Amazon IoT 策略配置Amazon IoT事物策略

您可以执行以下任一操作来部署 IP 检测器组件:

  • 使用控制台中的配置发现页面。有关更多信息,请参阅 配置云发现(控制台)

  • 创建和修改部署以包括 IP 检测器。您可以使用控制台 Amazon CLI、或 Amazon API来管理部署。有关更多信息,请参阅 创建部署

  1. Amazon IoT Greengrass 控制台导航菜单中,选择组件

  2. 在 “组件” 页上,选择 “公共组件” 选项卡,然后选择aws.greengrass.clientdevices.IPDetector

  3. aws.greengrass.clientdevices.IPDetector 页面上,选择部署

  4. 从 “添加到部署” 中,选择要修改的现有部署,或选择创建新部署,然后选择 “下一步”。

  5. 如果您选择创建新部署,请为部署选择目标核心设备或事物组。在 “指定目标” 页面的 “部署目标” 下,选择核心设备或事物组,然后选择下一步

  6. “选择组件” 页面上,确认已选择该aws.greengrass.clientdevices.IPDetector组件,然后选择 “下一步”。

  7. 在 “配置组件” 页面上 aws.greengrass.clientdevices.IPDetector,选择,然后执行以下操作:

    1. 选择配置组件

    2. 在 “配置” aws.greengrass.clientdevices.IPDetector 模式的 “配置更新” 下,在 “要合并的配置” 中,您可以输入配置更新来配置 IP 检测器组件。您可以指定以下任一配置选项:

      • defaultPort(可选)此组件检测到 IP 地址时要报告的MQTT代理端口。如果将MQTT代理配置为使用与默认端口 8883 不同的端口,则必须指定此参数。

      • includeIPv4LoopbackAddrs(可选)您可以启用此选项来检测和报告IPv4环回地址。这些是 IP 地址,例如localhost,设备可以与自己通信的地方。在核心设备和客户端设备在同一系统上运行的测试环境中使用此选项。

      • includeIPv4LinkLocalAddrs(可选)您可以启用此选项来检测和报告IPv4链路本地地址。如果核心设备的网络没有动态主机配置协议 (DHCP) 或静态分配的 IP 地址,则使用此选项。

      • includeIPv6LoopbackAddrs(可选)您可以启用此选项来检测和报告IPv6环回地址。这些是 IP 地址,例如localhost,设备可以与自己通信的地方。在核心设备和客户端设备在同一系统上运行的测试环境中使用此选项。必须将设置includeIPv4Addrsfalse和设置includeIPv6Addrstrue才能使用此选项。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

      • includeIPv6LinkLocalAddrs(可选)您可以启用此选项来检测和报告IPv6链路本地地址。如果核心设备的网络没有动态主机配置协议 (DHCP) 或静态分配的 IP 地址,则使用此选项。必须将设置includeIPv4Addrsfalse和设置includeIPv6Addrstrue才能使用此选项。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

      • includeIPv4Addrs(可选)默认值设置为 true。您可以启用此选项来发布在核心设备上找到IPv4的地址。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

      • includeIPv6Addrs(可选)您可以启用此选项以发布在核心设备上找到IPv6的地址。设置includeIPv4Addrsfalse可使用此选项。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

      配置更新可能与以下示例类似。

      { "defaultPort": "8883", "includeIPv4LoopbackAddrs": false, "includeIPv4LinkLocalAddrs": false }
    3. 选择 “确认” 关闭模式,然后选择 “下一步”。

  8. 配置高级设置页面上,保留默认配置设置,然后选择下一步

  9. 检查 页上,选择 部署

    部署最多可能需要一分钟才能完成。

要部署 IP 检测器组件,请创建包含aws.greengrass.clientdevices.IPDetectorcomponents对象中的部署文档,并指定该组件的配置更新。按照中的创建部署说明创建新部署或修改现有部署。

在创建部署文档时,您可以指定以下任一选项来配置 IP 检测器组件:

  • defaultPort(可选)此组件检测到 IP 地址时要报告的MQTT代理端口。如果将MQTT代理配置为使用与默认端口 8883 不同的端口,则必须指定此参数。

  • includeIPv4LoopbackAddrs(可选)您可以启用此选项来检测和报告IPv4环回地址。这些是 IP 地址,例如localhost,设备可以与自己通信的地方。在核心设备和客户端设备在同一系统上运行的测试环境中使用此选项。

  • includeIPv4LinkLocalAddrs(可选)您可以启用此选项来检测和报告IPv4链路本地地址。如果核心设备的网络没有动态主机配置协议 (DHCP) 或静态分配的 IP 地址,则使用此选项。

  • includeIPv6LoopbackAddrs(可选)您可以启用此选项来检测和报告IPv6环回地址。这些是 IP 地址,例如localhost,设备可以与自己通信的地方。在核心设备和客户端设备在同一系统上运行的测试环境中使用此选项。必须将设置includeIPv4Addrsfalse和设置includeIPv6Addrstrue才能使用此选项。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

  • includeIPv6LinkLocalAddrs(可选)您可以启用此选项来检测和报告IPv6链路本地地址。如果核心设备的网络没有动态主机配置协议 (DHCP) 或静态分配的 IP 地址,则使用此选项。必须将设置includeIPv4Addrsfalse和设置includeIPv6Addrstrue才能使用此选项。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

  • includeIPv4Addrs(可选)默认值设置为 true。您可以启用此选项来发布在核心设备上找到IPv4的地址。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

  • includeIPv6Addrs(可选)您可以启用此选项以发布在核心设备上找到IPv6的地址。设置includeIPv4Addrsfalse可使用此选项。必须有 IP 探测器 v2.2.0 或更高版本才能使用此选项。

以下示例部分部署文档指定将端口 8883 报告为MQTT代理端口。

{ ..., "components": { ..., "aws.greengrass.clientdevices.IPDetector": { "componentVersion": "2.1.1", "configurationUpdate": { "merge": "{\"defaultPort\":\"8883\",}" } } } }

手动管理端点

您可以手动管理核心设备的MQTT代理端点。

每个MQTT代理端点都有以下信息:

端点 (HostAddress)

客户端设备可以连接到核心设备上的MQTT代理的 IP DNS 地址或地址。

端口 (PortNumber)

MQTT代理在核心设备上运行的端口。

您可以在 Moquette MQTT 代理组件上配置此端口,该组件默认为使用端口 8883。

元数据 (Metadata)

向连接到此端点的客户端设备提供的其他元数据。

管理终端节点(控制台)

您可以使用 Amazon IoT Greengrass 控制台查看、更新和移除核心设备的端点。

管理核心设备的端点(控制台)
  1. 选择核心设备

  2. 选择托管管理的核心设备。

  3. 在核心设备的详细信息页面上,请选择客户端设备选项卡。

  4. MQTT代理端点部分,您可以看到核心设备的MQTT代理端点。选择管理端点

  5. 管理端点模式中,添加或删除核心设备的MQTT代理端点。

  6. 选择更新

管理端点 (Amazon CLI)

您可以使用 Amazon Command Line Interface (Amazon CLI) 来管理核心设备的端点。

注意

由于中的 Amazon IoT Greengrass V2 客户端设备支持向后兼容 Amazon IoT Greengrass V1,因此您可以使用 Amazon IoT Greengrass V2 或 Amazon IoT Greengrass V1 API操作来管理核心设备端点。

获取核心设备的端点 (Amazon CLI)
更新核心设备的端点 (Amazon CLI)

管理端点 (API)

您可以使用 Amazon API来管理核心设备的端点。

注意

由于中的 Amazon IoT Greengrass V2 客户端设备支持向后兼容 Amazon IoT Greengrass V1,因此您可以使用 Amazon IoT Greengrass V2 或 Amazon IoT Greengrass V1 API操作来管理核心设备端点。

获取核心设备的端点 (Amazon API)
更新核心设备的端点 (Amazon API)