

终止支持通知：2026 年 10 月 7 日， AWS 将停止对的支持。 AWS IoT Greengrass Version 1 2026 年 10 月 7 日之后，您将无法再访问这些 AWS IoT Greengrass V1 资源。如需了解更多信息，请访问[迁移自 AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html)。

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

# 模块 4：与 AWS IoT Greengrass 群组中的客户端设备交互
<a name="module4"></a>

本模块向您展示本地物联网设备（称为*客户端设备*或*设备*）如何连接到 AWS IoT Greengrass 核心设备并与之通信。连接到 AWS IoT Greengrass 内核的客户端设备是 AWS IoT Greengrass 组的一部分，可以参与 AWS IoT Greengrass 编程模式。在此模块中，一个客户端设备将向 Greengrass 组中的另一个客户端设备发送“Hello World”消息：

![\[AWS IoT 连接到内 AWS IoT Greengrass 核，该核心连接到客户端设备 #1 和客户端设备 #2。\]](http://docs.aws.amazon.com/zh_cn/greengrass/v1/developerguide/images/gg-get-started-065.5.png)


在开始之前，请运行 [Greengrass 设备安装程序](quick-start.md)脚本或完成[模块 1](module1.md) 和[模块 2](module2.md)。此模块将创建两个模拟客户端设备。您无需其他组件或设备。

本模块应该需要不到 30 分钟即可完成。

**Topics**
+ [在 AWS IoT Greengrass 群组中创建客户端设备](device-group.md)
+ [配置订阅](config-subs.md)
+ [安装 AWS IoT Device SDK 适用于 Python 的](IoT-SDK.md)
+ [测试通信](test-comms.md)

# 在 AWS IoT Greengrass 群组中创建客户端设备
<a name="device-group"></a>

在此步骤中，您将两个客户端设备添加到您的 Greengrass 组。此过程包括将设备注册为 AWS IoT 事物，以及配置证书和密钥以允许它们连接 AWS IoT Greengrass。

1. <a name="console-gg-groups"></a>**在 AWS IoT 控制台导航窗格的**管理**下，展开 **Greengrass** 设备，然后选择群组 (V1)。**

1. <a name="group-choose-target-group"></a>选择目标组。

1. <a name="gg-group-add-device"></a>在组配置页面中，选择**客户端设备**，然后选择**关联**。

1. <a name="gg-group-create-device"></a>在 “将**客户端设备与此群组关联**” 模式中，选择 “**创建新 AWS IoT 事物**”。

   此时将在新选项卡中打开**创建事物**页面。

1. <a name="gg-group-create-single-thing"></a>在 **创建事物**页面上，选择 **创建单个事物**，然后选择 **下一步**。

1. 在**指定事物属性**页面上，将此客户端设备注册为 **HelloWorld\$1Publisher**，然后选择**下一步**。

1. <a name="gg-group-create-device-configure-certificate"></a>在**配置设备证书**页面上，选择**下一步**。

1. <a name="gg-group-create-device-attach-policy"></a>在 **将策略附加到证书** 页面上，执行下列操作之一：
   + 选择授予客户端设备所需权限的现有策略，然后选择**创建事物**。

     将打开一个模式，您可以在其中下载设备用于连接和核心的证书 AWS 云 和密钥。
   + 创建并附加授予客户端设备权限的新策略。执行以下操作：

     1. 选择**创建策略**。

        此时将在新选项卡中打开**创建策略**页面。

     1. 在**创建策略**页面上，执行以下操作：

        1. 在**策略名称**中，输入一个名称来描述该策略，例如 **GreengrassV1ClientDevicePolicy**。

        1. 在**策略语句**选项卡的**策略文档**下，选择 **JSON**。

        1. 输入以下策略文档。此策略允许客户端设备发现 Greengrass 核心并就所有 MQTT 主题进行通信。有关如何限制此策略访问权限的信息，请参阅[设备身份验证和授权 AWS IoT Greengrass](device-auth.md)。

------
#### [ JSON ]

****  

           ```
           {
             "Version":"2012-10-17",		 	 	 
             "Statement": [
               {
                 "Effect": "Allow",
                 "Action": [
                   "iot:Publish",
                   "iot:Subscribe",
                   "iot:Connect",
                   "iot:Receive"
                 ],
                 "Resource": [
                   "*"
                 ]
               },
               {
                 "Effect": "Allow",
                 "Action": [
                   "greengrass:*"
                 ],
                 "Resource": [
                   "*"
                 ]
               }
             ]
           }
           ```

------

        1. 选择 **Create**（创建）以创建策略。

     1. 返回到打开了**将策略附加到证书**页面的浏览器标签页中。执行以下操作：

        1. 在**策略**列表中，选择您创建的策略，例如 **GreengrassV1ClientDevicePolicy**。

           如果没有看到策略，请选择刷新按钮。

        1. 选择 **Create thing**（创建事物）。

           将打开一个模式，您可以在其中下载设备用于连接和核心的证书 AWS 云 和密钥。

1. <a name="gg-group-create-device-download-certs"></a>在**下载证书和密钥**模态中，下载设备的证书。
**重要**  
请先下载安全资源，然后再选择 **完成**。

   执行以下操作：

   1. 在**设备证书**中，选择**下载**以下载该设备证书。

   1. 在**公钥文件**中，选择**下载**以下载该证书的公钥。

   1. 在**私钥文件**中，选择**下载**以下载该证书的私钥文件。

   1. 查看*AWS IoT 开发人员指南*中的[服务器身份验证](https://docs.aws.amazon.com/iot/latest/developerguide/server-authentication.html)，然后选择相应的根 CA 证书。我们建议您使用 Amazon Trust Services (ATS) 端点和 ATS 根 CA 证书。在**根 CA 证书**下，针对根 CA 证书选择**下载**。

   1. 选择**完成**。

   记下设备证书和密钥文件名中常见的证书 ID。稍后您将需要用到它。

1. 返回到打开了**将客户端设备与此组关联**模态的浏览器标签页。执行以下操作：

   1. 在 **AWS IoT 事物名称**中，选择您创建的 **HelloWorld\$1Publisher** 事物。

      如果没有看到事物，请选择刷新按钮。

   1. 选择**关联 **。

1. 重复步骤第 到 10 步，以在组中添加第二个客户端设备。

   将此客户端设备命名为 **HelloWorld\$1Subscriber**。将客户端设备的证书和密钥下载到您的计算机中。同样，记下 HelloWorld \$1Subscriber 设备文件名中常见的证书 ID。

   现在，您的 Greengrass 组中应该有两个客户端设备：
   + HelloWorld\$1出版商
   + HelloWorld\$1订阅者

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

# 配置订阅
<a name="config-subs"></a>

在此步骤中，您可以启用 HelloWorld \$1Publisher 客户端设备向 \$1Subscri HelloWorld ber 客户端设备发送 MQTT 消息。

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

1. 在**创建订阅**页中，执行以下操作以配置订阅：

   1. 对于 “**源类型**”，选择 “**客户端设备**”，然后选择 **HelloWorld\$1Publisher**。

   1. 在 “**目标类型**” 下，选择 “**客户端设备**”，然后选择 **HelloWorld\$1Subscripter。**

   1. 对于 **Topic filter (主题筛选条件)**，输入 **hello/world/pubsub**。
**注意**  
您可以删除前面的模块中的订阅。在组的**订阅**页面上，选择要删除的订阅，然后选择**删除**。

   1. 选择**创建订阅**。

1. <a name="enable-automatic-detection"></a>确保启用了自动检测，以便 Greengrass 核心可以发布其 IP 地址的列表。客户端设备使用此信息来发现核心。执行以下操作：

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

   1. 在**系统 Lambda 函数**下，选择 **IP 检测器**，然后选择**编辑**。

   1. 在**编辑 IP 检测器设置**中，选择**自动检测和覆盖 MQTT 代理端点**，然后选择**保存**。

1. 确保 Greengrass 进程守护程序正在运行，如 [将云配置部署到核心设备](configs-core.md) 中所述。

1. <a name="console-actions-deploy"></a>在组配置页面上，选择**部署**。

部署状态显示在页面标题上的组名称下方。要查看部署详细信息，请选择**部署**选项卡。

# 安装 AWS IoT Device SDK 适用于 Python 的
<a name="IoT-SDK"></a>

客户端设备可以使用 for AWS IoT Device SDK Python 与设备通信 AWS IoT 和 AWS IoT Greengrass 核心设备（使用 Python 编程语言）。如需更多信息（包括要求），请参阅上 GitHub的 AWS IoT Device SDK Python [自述文件](https://github.com/aws/aws-iot-device-sdk-python)。

在此步骤中，您将安装软件开发工具包并获取计算机上模拟客户端设备使用的 `basicDiscovery.py` 示例函数。

1. 要将软件开发工具包与所有必需的组件一起安装到您的计算机上，请选择您的操作系统：

------
#### [ Windows ]

   1. 打开[提升的命令提示符](https://technet.microsoft.com/en-us/library/cc947813(v=ws.10).aspx)并运行以下命令：

      ```
      python --version
      ```

      如果没有返回版本信息，或者 Python 2 的版本号小于 2.7 或 Python 3 的版本号小于 3.3，则按照[下载 Python](https://wiki.python.org/moin/BeginnersGuide/Download) 中的说明安装 Python 2.7\$1 或 Python 3.3\$1。有关更多信息，请参阅[在 Windows 上使用 Python](https://docs.python.org/3.6/using/windows.html)。

   1. 将[适用于 Python 的AWS IoT Device SDK](https://github.com/aws/aws-iot-device-sdk-python)下载为 `zip` 文件并将其解压缩到您计算机上的适当位置。

      请记下其中包含 `setup.py` 文件的解压缩 `aws-iot-device-sdk-python-master` 文件夹的文件路径：在下一步中，此文件路径由指示*path-to-SDK-folder*。

   1. 从提升的命令提示符运行以下命令：

      ```
      cd path-to-SDK-folder
      python setup.py install
      ```

------
#### [ macOS ]

   1. 打开终端窗口，并运行以下命令：

      ```
      python --version
      ```

      如果没有返回版本信息，或者 Python 2 的版本号小于 2.7 或 Python 3 的版本号小于 3.3，则按照[下载 Python](https://wiki.python.org/moin/BeginnersGuide/Download) 中的说明安装 Python 2.7\$1 或 Python 3.3\$1。有关更多信息，请参阅[在 Macintosh 上使用 Python](https://docs.python.org/3/using/mac.html)。

   1. 在终端窗口中，运行以下命令以确定 OpenSSL 版本：

      ```
      python
      >>>import ssl
      >>>print ssl.OPENSSL_VERSION
      ```

      记下 OpenSSL 版本值。
**注意**  
如果运行的是 Python 3，请使用 **print(ssl.OPENSSL\$1VERSION)**。

      要关闭 Python shell，请运行以下命令：

      ```
      >>>exit()
      ```

      如果 OpenSSL 版本为 1.0.1 或更高版本，请跳至[步骤 c](#step-c-install-python-sdk)。否则，请按照以下步骤操作：

      1. 在终端窗口中，运行以下命令以确定计算机正在使用简单 Python 版本管理：

        ```
        which pyenv
        ```

      如果返回文件路径，则选择**使用 `pyenv`** 选项卡。如果未返回任何内容，则选择**未使用 `pyenv`** 选项卡。

------
#### [ Using pyenv ]

      1. 请参阅[用于 Mac OS X 的 Python 版本](https://www.python.org/downloads/mac-osx/)（或类似内容），以确定最新的稳定 Python 版本。在以下示例中，此值由表示*latest-Python-version*。

      1. 在终端窗口中，运行以下命令：

         ```
         pyenv install latest-Python-version
         pyenv global latest-Python-version
         ```

         例如，如果 Python 2 的最新版本是 2.7.14，则这些命令为：

         ```
         pyenv install 2.7.14
         pyenv global 2.7.14
         ```

      1. 关闭并重新打开终端窗口，然后运行以下命令：

         ```
         python
         >>>import ssl
         >>>print ssl.OPENSSL_VERSION
         ```

         OpenSSL 版本应至少为 1.0.1。如果版本低于 1.0.1，则更新失败。检查 **pyenv install** 和 **pyenv global** 命令中使用的 Python 版本值，然后重试。

      1. 运行以下命令以退出 Python shell：

         ```
          exit()
         ```

------
#### [ Not using pyenv ]

      1. 从终端窗口中运行以下命令以确定 [brew](https://brew.sh/) 是否已安装：

         ```
         which brew
         ```

         如果未返回文件路径，请安装 `brew`，如下所示：

         ```
         /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
         ```
**注意**  
按照安装提示进行操作。下载 Xcode 命令行工具可能需要一些时间。

      1. 运行以下 命令：

         ```
         brew update
         brew install openssl
         brew install python@2
         ```

          AWS IoT Device SDK 适用于 Python 需要使用 Python 可执行文件编译的 OpenSSL 版本 1.0.1（或更高版本）。**brew install python** 命令会安装满足此要求的 `python2` 可执行文件。该 `python2` 可执行文件安装在 `/usr/local/bin` 目录中，该目录应作为 `PATH` 环境变量的一部分。要确认这一点，请运行以下命令：

         ```
         python2 --version
         ```

         如果提供了 `python2` 版本信息，请跳到下一步。否则，通过将以下行附加到您的 Shell 配置文件，永久地将 `/usr/local/bin` 路径添加到您的 `PATH` 环境变量：

         ```
         export PATH="/usr/local/bin:$PATH"
         ```

         例如，如果您使用的是 `.bash_profile` 或您还没有 Shell 配置文件，则从终端窗口中运行以下命令：

         ```
         echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile
         ```

         接下来，对您的 Shell 配置文件执行 [source](https://en.wikipedia.org/wiki/Source_(command)) 命令并确认 `python2 --version` 提供版本信息。例如，如果您正在使用 `.bash_profile`，则运行以下命令：

         ```
         source ~/.bash_profile
         python2 --version
         ```

         应返回 `python2` 版本信息。

      1. 将以下行附加到您的 Shell 配置文件：

         ```
         alias python="python2"
         ```

         例如，如果您使用的是 `.bash_profile` 或您还没有 Shell 配置文件，则运行以下命令：

         ```
         echo 'alias python="python2"' >> ~/.bash_profile
         ```

      1. 接下来，对您的 Shell 配置文件执行 [source](https://en.wikipedia.org/wiki/Source_(command)) 命令。例如，如果您正在使用 `.bash_profile`，则运行以下命令：

         ```
         source ~/.bash_profile
         ```

         调用 **python** 命令将运行 Python 可执行文件 (`python2`)，其中包含所需的 OpenSSL 版本。

      1. 运行以下 命令：

         ```
         python
          import ssl
          print ssl.OPENSSL_VERSION
         ```

         OpenSSL 版本应为 1.0.1 或更高版本。

      1. 要退出 Python shell，请运行以下命令：

         ```
          exit()
         ```

------

   1. <a name="step-c-install-python-sdk"></a>运行以下命令，安装 适用于 Python 的 AWS IoT Device SDK ：

      ```
      cd ~
      git clone https://github.com/aws/aws-iot-device-sdk-python.git
      cd aws-iot-device-sdk-python
      sudo python setup.py install
      ```

------
#### [ UNIX-like system ]

   1. 从终端窗口中运行以下命令：

      ```
      python --version
      ```

      如果没有返回版本信息，或者 Python 2 的版本号小于 2.7 或 Python 3 的版本号小于 3.3，则按照[下载 Python](https://wiki.python.org/moin/BeginnersGuide/Download) 中的说明安装 Python 2.7\$1 或 Python 3.3\$1。有关更多信息，请参阅[在 Unix 平台上使用 Python](https://docs.python.org/3.6/using/unix.html)。

   1. 在终端中，运行以下命令以确定 OpenSSL 版本：

      ```
      python
      >>>import ssl
      >>>print ssl.OPENSSL_VERSION
      ```

      记下 OpenSSL 版本值。
**注意**  
如果运行的是 Python 3，请使用 **print(ssl.OPENSSL\$1VERSION)**。

      要关闭 Python shell，请运行以下命令：

      ```
       exit()
      ```

      如果 OpenSSL 版本为 1.0.1 或更高版本，请跳至下一步。否则，运行命令以便为您的发行版更新 OpenSSL（例如，`sudo yum update openssl`、`sudo apt-get update` 等）。

      通过运行以下命令来确认 OpenSSL 版本为 1.0.1 或更高版本：

      ```
      python
      >>>import ssl
      >>>print ssl.OPENSSL_VERSION
      >>>exit()
      ```

   1. 运行以下命令，安装 适用于 Python 的 AWS IoT Device SDK ：

      ```
      cd ~
      git clone https://github.com/aws/aws-iot-device-sdk-python.git
      cd aws-iot-device-sdk-python
      sudo python setup.py install
      ```

------

1. 安装 f AWS IoT Device SDK or Python 后，导航到该`samples`文件夹并打开该`greengrass`文件夹。

   在本教程中，您将复制 `basicDiscovery.py` 示例函数，该函数会使用您在 [在 AWS IoT Greengrass 群组中创建客户端设备](device-group.md) 中下载的证书和密钥。

1. 复制`basicDiscovery.py`到包含 \$1Publisher 和 HelloWorld \$1Subscri HelloWorld ber 设备证书和密钥的文件夹。

# 测试通信
<a name="test-comms"></a>

1. <a name="ping-device"></a>确保您的计算机和 AWS IoT Greengrass 核心设备使用相同的网络连接到互联网。

   1. 在 AWS IoT Greengrass 核心设备上，运行以下命令以查找其 IP 地址。

      ```
      hostname -I
      ```

   1. 在计算机上，使用核心的 IP 地址运行以下命令。可以使用 Ctrl \$1 C 停止 **ping** 命令。

      ```
      ping IP-address
      ```

      类似于以下内容的输出表示计算机和 AWS IoT Greengrass 核心设备之间成功通信（丢包 0%）：  
![\[成功的 ping 命令输出。\]](http://docs.aws.amazon.com/zh_cn/greengrass/v1/developerguide/images/gg-get-started-075.5.png)
**注意**  
如果您无法 ping 正在运行的实例 AWS IoT Greengrass，请确保该 EC2 实例的入站安全组规则允许 [ECHO 请求](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-rules-reference.html#sg-rules-ping)消息的 ICMP 流量。有关更多信息，请参阅 *Amazon EC2 用户指南*中的[向安全组添加规则](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#adding-security-group-rule)。  
在 Windows 主机上，在带有高级安全功能的 Windows 防火墙应用程序中，您可能还需要启用允许入站回显请求的入站规则（例如，**文件和打印机共享（Echo Request- ICMPv4-in）**），或者创建一个规则。

1. 获取您的 AWS IoT 终端节点。

   1. <a name="iot-settings"></a>从[AWS IoT 控制台](https://console.aws.amazon.com/iot/)导航窗格中，选择**设置**。

   1. <a name="iot-settings-endpoint"></a>在**设备数据端点**下，记下 **端点**的值。在以下步骤中，您可以使用此值来替换命令中的*AWS\$1IOT\$1ENDPOINT*占位符。
**注意**  
确保您的[终端节点与证书类型对应](gg-core.md#certificate-endpoints)。

1. 在您的计算机（不是 AWS IoT Greengrass 核心设备）上，打开两个[命令行](https://en.wikipedia.org/wiki/Command-line_interface)（终端或命令提示符）窗口。一个窗口代表 HelloWorld \$1Publisher 客户端设备，另一个窗口代表 HelloWorld \$1Subscriber 客户端设备。

   执行后，`basicDiscovery.py`尝试收集有关 AWS IoT Greengrass 核心端点位置的信息。在客户端设备发现并成功连接到核心后，将会存储此信息。这将允许未来的消息传递和操作可以在本地执行（无需 Internet 连接）。
**注意**  
 IDs 用于 MQTT 连接的客户端必须与客户端设备的事物名称相匹配。`basicDiscovery.py` 脚本将 MQTT 连接的客户端 ID 设置为您在运行脚本时指定的事物名称。  
从包含 `basicDiscovery.py` 文件的文件夹运行以下命令，以查看详细的脚本使用信息：  

   ```
   python basicDiscovery.py --help
   ```

1. 在 HelloWorld \$1Publisher 客户端设备窗口中，运行以下命令。
   + *path-to-certs-folder*替换为包含证书、密钥和的文件夹的路径`basicDiscovery.py`。
   + 替换*AWS\$1IOT\$1ENDPOINT*为您的终端节点。
   + 将这两个*publisherCertId*实例替换为您的 HelloWorld \$1Publisher 客户端设备文件名中的证书 ID。

   ```
   cd path-to-certs-folder
   python basicDiscovery.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert publisherCertId-certificate.pem.crt --key publisherCertId-private.pem.key --thingName HelloWorld_Publisher --topic 'hello/world/pubsub' --mode publish --message 'Hello, World! Sent from HelloWorld_Publisher'
   ```

   您应该看到类似于以下内容的输出，其中包括诸如 `Published topic 'hello/world/pubsub': {"message": "Hello, World! Sent from HelloWorld_Publisher", "sequence": 1}` 的条目。
**注意**  
如果脚本返回 `error: unrecognized arguments` 消息，请针对 `--topic` 和 `--message` 参数将单引号更改为双引号，并再次运行该命令。  
要排查连接问题，您可以尝试使用[手动 IP 检测](#corp-network-manual-detection)。  
![\[publisher 输出的屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/greengrass/v1/developerguide/images/gg-get-started-076.png)

1. 在 HelloWorld \$1Subscriber 客户端设备窗口中，运行以下命令。
   + *path-to-certs-folder*替换为包含证书、密钥和的文件夹的路径`basicDiscovery.py`。
   + 替换*AWS\$1IOT\$1ENDPOINT*为您的终端节点。
   + 将这两个*subscriberCertId*实例替换为您的 HelloWorld \$1Subscriber 客户端设备文件名中的证书 ID。

   ```
   cd path-to-certs-folder
   python basicDiscovery.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert subscriberCertId-certificate.pem.crt --key subscriberCertId-private.pem.key --thingName HelloWorld_Subscriber --topic 'hello/world/pubsub' --mode subscribe
   ```

   您应该看到以下输出，其中包括诸如 `Received message on topic hello/world/pubsub: {"message": "Hello, World! Sent from HelloWorld_Publisher", "sequence": 1}` 的条目。  
![\[subscriber 输出的屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/greengrass/v1/developerguide/images/gg-get-started-077.png)

关闭 HelloWorld\$1Publisher 窗口，用于阻止消息在中累积 HelloWorld\$1Subscriber 窗口。

在公司网络上进行测试可能会干扰与核心的连接。作为解决方法，您可以手动输入端点。这样可以确保`basicDiscovery.py`脚本连接到 AWS IoT Greengrass 核心设备的正确 IP 地址。

**手动输入端点**

1. <a name="console-gg-groups"></a>**在 AWS IoT 控制台导航窗格的**管理**下，展开 **Greengrass** 设备，然后选择群组 (V1)。**

1. 在 **Greengrass 组**下，选择您的组。

1. 配置核心，以手动管理 MQTT 代理端点。执行以下操作：

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

   1. 在**系统 Lambda 函数**下，选择 **IP 检测器**，然后选择**编辑**。

   1. 在**编辑 IP 检测器设置**中，选择**手动管理 MQTT 代理端点**，然后选择**保存**。

1. 输入核心的 MQTT 代理端点。执行以下操作：

   1. 在**概述**下，选择 **Greengrass 核心**。

   1. 在 **MQTT 代理端点**下，选择**管理端点**。

   1. 选择**添加端点**，确保只有一个端点值。此值必须是 AWS IoT Greengrass 核心设备端口 8883 的 IP 地址端点（例如`192.168.1.4`）。

   1. 选择**更新**。