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

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,这样可以添加重要的新功能支持其他平台

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

入门 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 群组,以及部署 Greengrass 群组。通常,这需要一两个小时才能完成。

入门模块
Quick Start(快速入门)

Greengrass 设备安装程序可配置您的核心设备和 Greengrass 资源。脚本:

  • 安装 Amazon IoT Greengrass 依赖关系。

  • 下载根 CA 证书及核心设备证书和密钥。

  • 在您的设备上下载、安装和配置 Amazon IoT Greengrass Core 软件。

  • 在核心设备上启动 Greengrass 守护进程。

  • 如果需要,创建或更新 Greengrass 服务角色

  • 创建 Greengrass 组和 Greengrass 核心。

  • (可选)创建 Hello World Lambda 函数、订阅和本地日志记录配置。

  • (可选)部署 Greengrass 组。

模块 1 和模块 2

模块 1模块 2 描述了如何设置您的环境。(或者,使用 Greengrass 设备安装程序来为您运行这些模块。)

  • 为 Greengrass 配置核心设备。

  • 运行依赖项检查程序脚本。

  • 创建 Greengrass 组和 Greengrass 核心。

  • 从 tar.gz 文件下载并安装最新的 Amazon IoT Greengrass 酷睿软件。

  • 在核心设备上启动 Greengrass 守护进程。

注意

Amazon IoT Greengrass 还提供了安装 Amazon IoT Greengrass 核心软件的其他选项,包括在支持的 Debian 平台上apt安装。有关更多信息,请参阅 安装 Amazon IoT Greengrass Core 软件

模块 3-1 和 3-2

模块 3-1模块 3-2 描述了如何使用本地 Lambda 函数。(或者,使用 Greengrass 设备安装程序来为您运行模块 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 展示了客户端设备如何连接到核心并相互通信。

模块 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 组。此函数使用适用于 Python 的 Amazon 软件开发工具包与 DynamoDB 进行交互。

  • 创建允许 MQTT 通信的订阅。

  • 测试与 DynamoDB 的交互。

模块 7

模块 7 展示了如何配置模拟硬件安全模块 (HSM) 以便与 Greengrass 核心一起使用。

重要

此高级模块仅用于实验和初始测试。它不适用于任何种类的生产用途。

  • 安装和配置基于软件的 HSM 和私钥。

  • 配置 Greengrass 核心以使用硬件安全性。

  • 测试硬件安全性配置。

要求

要完成本教程,您需要:

  • Mac、Windows PC 或类似 UNIX 的系统。

  • 一个 Amazon Web Services 账户。如果没有,请参阅创建一个 Amazon Web Services 账户

  • 使用支持的 Amazon 区域 Amazon IoT Greengrass。有关支持的区域列表 Amazon IoT Greengrass,请参阅中的Amazon 终端节点和配额Amazon Web Services 一般参考

    注意

    记下你的, Amazon Web Services 区域 并确保在本教程中始终如一地使用它。如果您在教程 Amazon Web Services 区域 中切换,则在完成这些步骤时可能会遇到问题。

  • 一台 Raspberry PI 4 Model B 或 Raspberry PI 3 Model B/B+(带有一张 8 GB microSD 卡)或一个 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 Web Services 账户

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

报名参加 Amazon Web Services 账户
  1. 打开 https://portal.aws.amazon.com/billing/signup

  2. 按照屏幕上的说明进行操作。

    在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。

    当您注册时 Amazon Web Services 账户,就会创建Amazon Web Services 账户根用户一个。根用户有权访问该账户中的所有 Amazon Web Services 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

Amazon 注册过程完成后会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/ 并选择我的账户来查看当前的账户活动并管理您的账户。

保护 IAM 用户

注册后 Amazon Web Services 账户,开启多重身份验证 (MFA),保护您的管理用户。有关说明,请参阅 IAM 用户指南中的 为 IAM 用户启用虚拟 MFA 设备(控制台)

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

有关创建和保护 IAM 用户的更多信息,请参阅《IAM 用户指南》中的以下主题:

重要

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