

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

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

# 入门 Amazon IoT Greengrass
<a name="gg-gs"></a>

本入门教程包括几个模块，旨在向您展示 Amazon IoT Greengrass 基础知识并帮助您开始使用 Amazon IoT Greengrass。本教程涵盖如下基本概念：
+ 配置 Amazon IoT Greengrass 核心和组。
+ 在边缘运行 Amazon Lambda 函数的部署过程。
+ 将称为客户端设备的设备连接到 Amazon IoT 核 Amazon IoT Greengrass 心。
+ 创建订阅以允许本地 Lambda 函数、客户端设备和之间的 MQTT 通信。 Amazon IoT

## 选择如何开始使用 Amazon IoT Greengrass
<a name="gg-getting-started"></a>

您可以选择如何使用本教程设置您的核心设备：
+ 在核心设备上运行 [Greengrass 设备](quick-start.md)安装程序，只需几分钟即可完成从 Amazon IoT Greengrass 安装依赖项到测试 Hello World Lambda 函数的过程。此脚本重现模块 1 到模块 3-1 中的步骤。

   

   –或者–

   
+ 逐步执行模块 1 到模块 3-1 中的步骤，以更仔细地检查 Greengrass 的要求和流程。这些步骤包括设置您的核心设备、创建和配置包含 Hello World Lambda 函数的 Greengrass 群组，以及部署 Greengrass 群组。通常，这需要一两个小时才能完成。

![\[入门模块\]](http://docs.amazonaws.cn/greengrass/v1/developerguide/images/getting-started-modules.png)


**Quick Start（快速入门）**  
[Greengrass 设备安装程序](quick-start.md)可配置您的核心设备和 Greengrass 资源。脚本：  
+ 安装 Amazon IoT Greengrass 依赖关系。
+ 下载根 CA 证书及核心设备证书和密钥。
+ 在您的设备上下载、安装和配置 Amazon IoT Greengrass Core 软件。
+ 在核心设备上启动 Greengrass 守护进程。
+ 如果需要，创建或更新 [Greengrass 服务角色](service-role.md)。
+ 创建 Greengrass 组和 Greengrass 核心。
+ （可选）创建 Hello World Lambda 函数、订阅和本地日志记录配置。
+ （可选）部署 Greengrass 组。

**模块 1 和模块 2**  
[模块 1](module1.md) 和[模块 2](module2.md) 描述了如何设置您的环境。（或者，使用 [Greengrass 设备安装程序](quick-start.md)来为您运行这些模块。）  
+ 为 Greengrass 配置核心设备。
+ 运行依赖项检查程序脚本。
+ 创建 Greengrass 组和 Greengrass 核心。
+ 从 tar.gz 文件下载并安装最新的 Amazon IoT Greengrass 核心软件。
+ 在核心设备上启动 Greengrass 守护进程。
Amazon IoT Greengrass 还提供了安装 Amazon IoT Greengrass 核心软件的其他选项，包括在支持的 Debian 平台上`apt`安装。有关更多信息，请参阅 [安装 Amazon IoT Greengrass 核心软件](install-ggc.md)。

**模块 3-1 和 3-2**  
[模块 3-1](module3-I.md) 和[模块 3-2](module3-II.md) 描述了如何使用本地 Lambda 函数。（或者，使用 [Greengrass 设备安装程序](quick-start.md)来为您运行模块 3-1。）  
+ 在中创建 Hello World Lambda 函数。 Amazon Lambda
+ 将 Lambda 函数添加到您的 Greengrass 组。
+ 创建允许在 Lambda 函数和之间进行 MQTT 通信的订阅。 Amazon IoT
+ 为 Greengrass 系统组件和 Lambda 函数配置本地日志记录。
+ 部署程序包含 Lambda 函数和订阅的 Greengrass 组。
+ 将来自本地 Lambda 函数的消息发送到。 Amazon IoT
+ 从中调用本地 Lambda 函数。 Amazon IoT
+ 测试按需和长时间运行的函数。

**模块 4 和 5**  
[模块 4](module4.md) 展示了客户端设备如何连接到核心并相互通信。  
[模块 5](module5.md) 展示了客户端设备如何使用阴影来控制状态。  
+ 注册和配置 Amazon IoT 设备（由命令行终端表示）。
+ 安装 Amazon IoT Device SDK 适用于 Python 的。客户端设备使用它来发现 Greengrass 核心。
+ 将客户端设备添加到您的 Greengrass 组。
+ 创建允许 MQTT 通信的订阅。
+ 部署程序包含客户端设备的 Greengrass 组。
+ 测试 device-to-device通信。
+ 测试阴影状态更新。

**模块 6**  
[模块 6](module6.md) 展示了 Lambda 函数如何访问 Amazon Web Services 云。  
+ 创建允许访问 Amazon DynamoDB 资源的 Greengrass 组角色。
+ 将 Lambda 函数添加到 Greengrass 组。此函数使用适用于 Python 的 Amazon 软件开发工具包与 DynamoDB 进行交互。
+ 创建允许 MQTT 通信的订阅。
+ 测试与 DynamoDB 的交互。

**模块 7**  
[模块 7](console-mod7.md) 展示了如何配置模拟硬件安全模块 (HSM) 以便与 Greengrass 核心一起使用。  
此高级模块仅用于实验和初始测试。它不适用于任何种类的生产用途。
+ 安装和配置基于软件的 HSM 和私钥。
+ 配置 Greengrass 核心以使用硬件安全性。
+ 测试硬件安全性配置。

## 要求
<a name="gg-requirements"></a>

要完成本教程，您需要：
+ Mac、Windows PC 或类似 UNIX 的系统。
+ 一个 Amazon Web Services 账户。如果没有，请参阅[创建一个 Amazon Web Services 账户](#create-aws-account)。
+ 使用支持的 Amazon [区域](https://en.wikipedia.org/wiki/Amazon_Web_Services#Availability_and_topology) Amazon IoT Greengrass。有关支持的区域列表 Amazon IoT Greengrass，请参阅中的[Amazon 终端节点和配额*Amazon Web Services 一般参考*](https://docs.amazonaws.cn/general/latest/gr/greengrass.html)。
**注意**  
记下你的， Amazon Web Services 区域 并确保在本教程中始终如一地使用它。如果您在教程 Amazon Web Services 区域 中切换，则在完成这些步骤时可能会遇到问题。
+ 带有 8 GB microSD 卡的 Raspberry Pi 4 Model B 或 Raspberry Pi 3 Model B/B\$1，或者亚马逊实例。 EC2 由于理想情况下 Amazon IoT Greengrass 应与物理硬件结合使用，因此，我们建议您使用 Raspberry Pi。
**注意**  
运行以下命令可获取 Raspberry Pi 的型号：  

  ```
  cat /proc/cpuinfo
  ```
在列表底部附近，找到并记下 `Revision` 属性的值，然后查阅 [Which Pi have I got?](https://elinux.org/RPi_HardwareHistory#Which_Pi_have_I_got.3F) 表。例如，如果 `Revision` 的值为 `a02082`，查阅该表可知该 Pi 为 3 Model B。  
请运行下面的命令，以确定您的 Raspberry Pi 的体系结构：  

  ```
  uname -m
  ```
在本教程中，此结果应该大于或等于 `armv71`。
+ 基本熟悉 Python。

尽管本教程旨在在 Raspberry Pi Amazon IoT Greengrass 上运行，但 Amazon IoT Greengrass 也支持其他平台。有关更多信息，请参阅 [支持的平台和要求](what-is-gg.md#gg-platforms)。

## 创建一个 Amazon Web Services 账户
<a name="create-aws-account"></a>

如果您没有 Amazon Web Services 账户，请按照以下步骤创建并激活 Amazon Web Services 账户：

### 注册获取 Amazon Web Services 账户
<a name="sign-up-for-aws"></a>

如果您没有 Amazon Web Services 账户，请完成以下步骤来创建一个。

**要注册 Amazon Web Services 账户**

1. 打开[https://portal.aws.amazon.com/billing/注册。](https://portal.amazonaws.cn/billing/signup)

1. 按照屏幕上的说明操作。

   在注册时，将接到电话或收到短信，要求使用电话键盘输入一个验证码。

   当您注册时 Amazon Web Services 账户，就会创建*Amazon Web Services 账户根用户*一个。根用户有权访问该账户中的所有 Amazon Web Services 服务 和资源。作为最佳安全实践，请为用户分配管理访问权限，并且只使用根用户来执行[需要根用户访问权限的任务](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

Amazon 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 [https://aws.amazon.com/](https://www.amazonaws.cn/)并选择 “**我的账户”，查看您当前的账户活动并管理您的账户**。

### 保护 IAM 用户
<a name="secure-an-admin"></a>

注册后 Amazon Web Services 账户，开启多重身份验证 (MFA)，保护您的管理用户。有关说明，请参阅《IAM 用户指南》**中的 [为 IAM 用户启用虚拟 MFA 设备（控制台）](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html#enable-virt-mfa-for-iam-user)。

要允许其他用户访问您的 Amazon Web Services 账户 资源，请创建 IAM 用户。为了保护您的 IAM 用户，请启用 MFA 并仅向 IAM 用户授予执行任务所需的权限。

有关创建和保护 IAM 用户的更多信息，请参阅《IAM 用户指南》中的以下主题：**
+ [在你的 IAM 用户中创建 Amazon Web Services 账户](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_users_create.html)
+ [适用于 Amazon 资源的访问权限管理](https://docs.amazonaws.cn/IAM/latest/UserGuide/access.html)
+ [基于 IAM 身份的策略示例](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_examples.html)

**重要**  
在本教程中，我们假定您的 IAM 用户账户具有管理员访问权限。