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,这样可以添加重要的新功能并支持其他平台。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
测试通信
-
在您的计算机上,打开两个命令行
窗口。就像在模块 5 中一样,一个窗口用于 GG_Switch 客户端设备,另一个窗口用于 GG_TrafficLight 客户端设备。您可以使用它们运行在模块 5 中运行的相同命令。 为 GG_Switch 客户端设备运行以下命令:
cd
path-to-certs-folder
python lightController.py --endpointAWS_IOT_ENDPOINT
--rootCA AmazonRootCA1.pem --certswitchCertId
-certificate.pem.crt --keyswitchCertId
-private.pem.key --thingName GG_TrafficLight --clientId GG_Switch为 GG_TrafficLight 客户端设备运行以下命令:
cd
path-to-certs-folder
python trafficLight.py --endpointAWS_IOT_ENDPOINT
--rootCA AmazonRootCA1.pem --certlightCertId
-certificate.pem.crt --keylightCertId
-private.pem.key --thingName GG_TrafficLight --clientId GG_TrafficLight每隔 20 秒,开关会将影子状态更新为 G、Y 和 R,并且灯会显示新状态。
-
在每次第 3 个绿灯时(每 3 分钟),都会触发 Lambda 函数的函数处理程序,并会创建新的 DynamoDB 记录。在
lightController.py
和trafficLight.py
运行了 3 分钟后,转到 Amazon Web Services Management Console,并打开 DynamoDB 控制台。 -
在 Amazon Web Services 区域菜单中,选择美国东部(弗吉尼亚州北部)区域。这是
GG_Car_Aggregator
函数在其中创建表的区域。 -
在导航窗格中,选择表,然后选择 CarStats 表。
-
选择查看项目,以查看表中的条目。
您应该看到包含有关通过的汽车数的基本统计数据的条目 (每隔 3 分钟创建一个条目)。您可能需要选择刷新按钮来查看表的更新。
-
如果测试不成功,您可以在 Greengrass 日志中查找故障排除信息。
-
切换到根用户并导航到
log
目录。访问 Amazon IoT Greengrass 日志需要根权限。sudo su cd /greengrass/ggc/var/log
-
检查
runtime.log
有无错误。cat system/runtime.log | grep 'ERROR'
-
检查 Lambda 函数生成的日志。
cat user/
region
/account-id
/GG_Car_Aggregator.loglightController.py
和trafficLight.py
脚本将连接信息存储在groupCA
文件夹中,该文件夹与脚本在同一文件夹中创建。如果您收到连接错误,请确保ggc-host
文件中的 IP 地址与您在此步骤中为核心配置的单个 IP 地址端点匹配。
有关更多信息,请参阅 故障排除 Amazon IoT Greengrass。
-
本基础教程到此结束。您现在应该了解了 Amazon IoT Greengrass 编程模型及其基本概念,包括 Amazon IoT Greengrass 核心、组、订阅、客户端设备以及在边缘站点运行的 Lambda 函数的部署过程。
您可以删除 DynamoDB 表以及 Greengrass Lambda 函数和订阅。要停止 Amazon IoT Greengrass 核心设备和 Amazon IoT 云之间的通信,请在核心设备上打开终端并运行以下命令之一:
-
关闭 Amazon IoT Greengrass 核心设备:
sudo halt
-
停止 Amazon IoT Greengrass 进程守护程序:
cd /greengrass/ggc/core/ sudo ./greengrassd stop