Amazon IoT Greengrass Version 1在 2023 年 6 月 30 日之前不再接收功能更新,并且只会收到安全补丁和错误修复。有关更多信息,请参阅 。Amazon IoT Greengrass V1维护政策. 强烈建议您选择迁移到Amazon IoT Greengrass Version 2,这增加了重要新功能和对其他平台的支持.
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon IoT Greengrass 入门
本入门教程包含若干模块,每个模块旨在向您介绍 Amazon IoT Greengrass 基础知识,并帮助您开始使用 Amazon IoT Greengrass。本教程涵盖如下基本概念:
-
配置 Amazon IoT Greengrass 核心和组。
-
在边缘站点运行 Amazon Lambda 函数的部署过程。
-
连接Amazon IoT设备(称为客户端设备)迁移到Amazon IoT Greengrass核心。
-
创建订阅以允许在本地 Lambda 函数、客户端设备和之间进行 MQTT 通信Amazon IoT.
选择如何开始使用 Amazon IoT Greengrass
您可以选择如何使用本教程设置您的核心设备:
-
运行Greengrass 设备设置在你的核心设备上,这会让你不必安装Amazon IoT Greengrass依赖关系在几分钟内测试 Hello World Lambda 函数。此脚本重现模块 1 到模块 3-1 中的步骤。
- 或者 -
-
逐步执行模块 1 到模块 3-1 中的步骤,以更仔细地检查 Greengrass 的要求和流程。这些步骤包括设置您的核心设备、创建和配置包含 Hello World Lambda 函数的 Greengrass 群组。通常,这需要一两个小时才能完成。

- Quick Start(快速入门)
-
Greengrass 设备安装程序可配置您的核心设备和 Greengrass 资源。脚本:
-
安装 Amazon IoT Greengrass 依赖项。
-
下载根 CA 证书及核心设备证书和密钥。
-
在您的设备上下载、安装和配置 Amazon IoT Greengrass 核心软件。
-
在核心设备上启动 Greengrass 守护进程。
-
如果需要,创建或更新 Greengrass 服务角色。
-
创建 Greengrass 组和 Greengrass 核心。
-
(可选)创建 Hello World Lambda 函数、订阅和本地日志记录配置。
-
(可选)部署 Greengrass 组。
-
- 模块 1 和模块 2
-
模块 1 和模块 2 描述了如何设置您的环境。(或者,使用 Greengrass 设备安装程序来为您运行这些模块。)
-
为 Greengrass 配置核心设备。
-
运行依赖项检查程序脚本。
-
创建 Greengrass 组和 Greengrass 核心。
-
下载 tar.gz 文件并从中安装最新的 Amazon IoT Greengrass Core 软件。
-
在核心设备上启动 Greengrass 守护进程。
注意 Amazon IoT Greengrass 还提供了其他选项用于安装 Amazon IoT Greengrass Core 软件,包括在支持的 Debian 平台上的
apt
安装。有关更多信息,请参阅 安装 Amazon IoT Greengrass Core 软件。 -
- 模块 3-1 和 3-2
-
模块 3-1和模块 3-2描述如何使用本地 Lambda 函数。(或者,使用 Greengrass 设备安装程序来为您运行模块 3-1。)
-
在中创建 Hello World LambdAmazon Lambda.
-
将 Lambda 函数添加到您的 Greengrass 组。
-
创建允许 Lambda 函数之间进行 MQTT 通信的订阅Amazon IoT.
-
为 Greengrass 系统组件和 Lambda 函数配置本地日志记录。
-
部署包含 Lambda 函数和订阅的 Greengrass 组。
-
将消息从本地 Lambda 函数发送到 Amazon IoT。
-
从调用本地 Lambda 函数Amazon IoT.
-
测试按需和长时间运行的函数。
-
- 模块 4 和 5
-
模块 4展示了客户端设备如何连接到核心并相互通信。
模块 5展示了客户端设备如何使用阴影来控制状态。
-
注册和预置 Amazon IoT 设备(由命令行终端表示)。
-
安装Amazon IoT Device SDK适用于 Python。客户端设备使用它来发现 Greengrass 核心。
-
将客户端设备添加到您的 Greengrass 组。
-
创建允许 MQTT 通信的订阅。
-
部署程序包含客户端设备的 Greengrass 组。
-
测试 device-to-device 沟通。
-
测试阴影状态更新。
-
- 模块 6
-
模块 6展示了 Lambda 函数如何访问Amazon Web Services 云.
-
创建允许访问 Amazon DynamoDB 资源的 Greengrass 组角色。
-
将一个 Lambda 函数添加到您的 Greengrass 组。此函数使用Amazon适用于 Python 的 SDK,用于与 DynamoDB 交
-
创建允许 MQTT 通信的订阅。
-
测试与 DynamoDB 的交互。
-
- 模块 7
-
模块 7 展示了如何配置模拟硬件安全模块 (HSM) 以便与 Greengrass 核心一起使用。
重要 此高级模块仅用于实验和初始测试。它不适用于任何种类的生产用途。
-
安装和配置基于软件的 HSM 和私钥。
-
配置 Greengrass 核心以使用硬件安全性。
-
测试硬件安全性配置。
-
要求
要完成本教程,您需要:
-
Mac、Windows PC 或类似 UNIX 的系统。
-
Amazon Web ServicesAmazon) 账户。如果没有,请参阅创建 Amazon Web Services 账户。
-
使用一个Amazon 区域
支持的Amazon IoT Greengrass. 有关支持的区域列表Amazon IoT Greengrass,请参阅Amazon终端节点和配额中的Amazon一般参考. 注意 记下您的Amazon Web Services 区域并确保在本教程中自始至终使用该函数。如果你切换你的Amazon Web Services 区域在本教程中,您可能会在完成步骤时遇到问题。
-
带 8 GB microSD 卡的 Raspberry Pi 4 Model B,或 Amazon EC2 实例。由于理想情况下 Amazon IoT Greengrass 应与物理硬件结合使用,因此,我们建议您使用 Raspberry Pi。
注意 运行以下命令可获取 Raspberry Pi 的型号:
cat /proc/cpuinfo
在列表底部附近,找到并记下
Revision
属性的值,然后查阅 Which Pi have I got?表。例如,如果 Revision
的值为a02082
,查阅该表可知该 Pi 为 3 Model B。请运行下面的命令,以确定您的 Raspberry Pi 的体系结构:
uname -m
在本教程中,此结果应该大于或等于
armv71
。 -
基本熟悉 Python。
虽然本教程针对在 Raspberry Pi 上运行 Amazon IoT Greengrass,但 Amazon IoT Greengrass 还支持其他平台。有关更多信息,请参阅 支持的平台和要求。
创建 Amazon Web Services 账户
如果您没有Amazon Web Services 账户,请按照以下步骤创建并激活Amazon Web Services 账户:
-
打开Amazon主页
,然后选择创建Amazon账户. 注意 如果您最近已登录到 Amazon,则您可能会看到 Sign In to the Console (登录控制台)。
-
按照屏幕上的说明进行操作。注册过程包括注册信用卡、接收短信或电话以及输入 PIN。
有关更多信息,请参阅如何创建并激活新的 Amazon Web Services 账户?
在本教程中,我们假定您的 IAM 用户账户具有管理员访问权限。