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

Amazon IoT Greengrass Version 12023 年 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 函数、客户端设备和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 核心软件。

  • 在核心设备上启动 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。)

  • 在Amazon Lambda中创建 Hello World 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 区域期间切换,则在完成这些步骤时可能会遇到问题。

  • 带有 8 GB microSD 卡的 Raspberry Pi 4 Model B 或 Raspberry Pi 3 Model B/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 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/ 并选择 My Account (我的账户) 来查看当前的账户活动并管理您的账户。

保护 IAM 用户

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

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

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

重要

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