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

您正在查看Amazon IoT Greengrass Version 1.Amazon IoT Greengrass Version 2是最新的主要版本Amazon IoT Greengrass. 有关使用Amazon IoT Greengrass V2,请参阅Amazon IoT Greengrass Version 2开发人员指南.

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

设置其他设备

按照本主题中的步骤设置设备(不包括 Raspberry Pi)用作您的Amazon IoT Greengrass核心。

提示

或者,要使用用于设置环境并为您安装 Amazon IoT Greengrass 核心软件的脚本,请参阅快速入门:Greengrass 设备设置

如果您是的新用户Amazon IoT Greengrass,我们建议您使用 Raspberry Pi 或 Amazon EC2 实例作为您的核心设备,并且按照设置步骤适合您的设备。

如果您计划使用 Yocto 项目构建基于 Linux 的自定义系统,则可以使用Amazon IoT Greengrass比特贝克食谱从meta-aws项目。此配方还可帮助您开发一个支持Amazon用于嵌入式应用的边缘软件。Bitbake 版本将安装、配置并自动运行Amazon IoT Greengrass您设备上的核心软件。

Yocore 项目

一个开源协作项目,可帮助您为嵌入式应用程序构建基于 Linux 的自定义系统,而不考虑硬件架构。有关更多信息,请参阅 。Yocore 项目.

meta-aws

网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的Amazon托管项目,提供 Yocto 食谱。您可以使用食谱来开发Amazon基于 Linux 的系统中的边缘软件开放式嵌入式以及约克托项目. 有关此社区支持的功能的更多信息,请参阅meta-awsGitHub 上的项目。

meta-aws-demos

网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的Amazon托管项目,该项目包含meta-aws项目。有关集成过程的更多示例,请参阅meta-aws-demosGitHub 上的项目。

要使用不同的设备或受支持的平台,请按照本主题中的步骤操作。

  1. 如果您的核心设备是 NVIDIA Jetson 设备,您必须先使用 JetPack 4.3 安装程序刷写该固件。如果要配置不同的设备,请跳至步骤 2。

    注意

    您使用的 JetPack 安装程序版本基于目标 CUDA 工具包版本。以下说明使用 JetPack 4.3 和 CUDA Toolkit 10.0。有关使用适合您设备的版本的信息,请参阅 NVIDIA 文档中的如何安装 Jetpack

    1. 在运行 Ubuntu 16.04 或更高版本的物理桌面上,使用 JetPack 4.3 安装程序切换该固件,如下载并安装 JetPack(4.3)。

      按照安装程序中的说明将所有软件包和依赖项安装在 Jetson 板上,后者必须通过 Micro-B 电缆连接到桌面。

    2. 以正常模式重启您的面板,然后将一个显示屏连接到面板。

      注意

      使用 SSH 连接到 Jetson 板时,请使用默认用户名 (nvidia) 和默认密码 (nvidia)。

  2. 运行以下命令以创建用户 ggc_user 和组 ggc_group。根据核心设备上安装的分配,运行的命令将有所不同。

    • 如果核心设备正在运行 OpenWrt,请运行以下命令:

      opkg install shadow-useradd opkg install shadow-groupadd useradd --system ggc_user groupadd --system ggc_group
    • 否则,请运行以下命令:

      sudo adduser --system ggc_user sudo addgroup --system ggc_group
      注意

      如果 addgroup 命令在系统上不可用,请使用以下命令。

      sudo groupadd --system ggc_group
  3. 可选。安装流管理器所需的 Java 8 运行时。此教程不使用流管理器,但它将使用默认情况下启用流管理器的 Default Group creation (默认组创建) 工作流。在部署组之前,使用此命令在核心设备上安装 Java 8 运行时或禁用流管理器。模块 3 中提供了有关禁用流管理器的说明。

    • 对于基于 Debian 或基于 Ubuntua 的发行版:

      sudo apt install openjdk-8-jdk
    • 对于基于 Red Hat 的发行版:

      sudo yum install java-1.8.0-openjdk
  4. 要确保您具有所有必需的依赖 Greengrass 系,请从Amazon IoT Greengrass示例GitHub 上的存储库。这些命令将解压和运行依赖项检查程序脚本。

    mkdir greengrass-dependency-checker-GGCv1.11.x cd greengrass-dependency-checker-GGCv1.11.x wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip unzip greengrass-dependency-checker-GGCv1.11.x.zip cd greengrass-dependency-checker-GGCv1.11.x sudo ./check_ggc_dependencies | more
    注意

    check_ggc_dependencies 脚本在 Amazon IoT Greengrass 支持的平台上运行并需要特定的 Linux 系统命令。有关更多信息,请参阅依赖项检查程序的自述文件

  5. 按照依赖项检查程序输出的指示,在设备上安装所有必需的依赖项。对于缺少的内核级别依赖项,您可能需要重新编译内核。要安装 Linux 控制组 (cgroups),您可以运行 cgroupfs-mount 脚本。这将允许 Amazon IoT Greengrass 设置 Lambda 函数的内存限制。Cgrass 还需要运行Amazon IoT Greengrass在默认值容器化模式。

    如果没有错误在输出中显示,Amazon IoT Greengrass 应该能够在您的设备上成功运行。

    重要

    本教程需要 Python 3.7 运行时才能运行本地 Lambda 函数。启用流管理器后,还需要 Java 8 运行时。如果 check_ggc_dependencies 脚本生成提示缺少这些必备运行时的警告,请确保先安装它们,然后再继续。您可以忽略提示缺少其他可选运行时的警告。

    有关 Amazon IoT Greengrass 要求和依赖项的列表,请参阅支持的平台和要求