View a markdown version of this page

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

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

设置 Amazon IoT Greengrass 核心设备

完成本节中的任务以安装、配置和运行 Amazon IoT Greengrass 核心软件。

注意

本节介绍 Amazon IoT Greengrass 核心软件的高级安装和配置。这些步骤不适用于 nucleus Lite。如果您是首次使用 nucleus Lite Amazon IoT Greengrass V2,我们建议您先完成入门教程,设置核心设备并探索其功能。 Amazon IoT Greengrass

支持的平台

设备要求

Lambda 函数要求

重要

Greengrass Nucleus Lite 目前不支持 Greengrass Lambda 函数。

您的设备必须满足以下要求才能运行 Lambda 函数:

  • Linux-based 操作系统。

  • 您的设备必须有 mkfifo Shell 命令。

  • 您的设备必须运行 Lambda 函数所需的编程语言库。您必须在设备上安装所需的库并将其添加到 PATH 环境变量中。Greengrass 支持所有 Lambda 支持的 Python 和 Java 运行时版本。 Node.jsGreengrass 不对已弃用的 Lambda 运行时版本施加任何额外限制。有关 Amazon IoT Greengrass 支持 Lambda 运行时的更多信息,请参阅。运行 Amazon Lambda 函数

  • 要运行容器化 Lambda 函数,您的设备必须满足以下要求:

    • Linux 内核 4.4 或更高版本。

    • 内核必须支持 cgroups v1,并且您必须启用并挂载以下 cgroups:

      • 用于为 Amazon IoT Greengrass 容化 Lambda 函数设置内存限制的内存 cgroup。

      • 用于容器化 Lambda 函数访问系统设备或卷的 devices cgroup。

      Amazon IoT Greengrass 核心软件不支持 cgroups v2。

      要满足此要求,请使用以下 Linux 内核参数启动设备。

      cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
      提示

      在 Raspberry Pi 上,编辑 /boot/cmdline.txt 文件以设置设备的内核参数。

    • 您必须在设备上启用以下 Linux 内核配置:

      • 命名空间:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Cgroups:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

      • 其他:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

      提示

      查看您的 Linux 发行版文档以了解如何验证并设置 Linux 内核参数。您也可以使用 Amazon IoT Device Tester Amazon IoT Greengrass 来验证您的设备是否满足这些要求。有关更多信息,请参阅 使用适用于 Amazon IoT Greengrass V2 的 Amazon IoT Device Tester

设置一个 Amazon Web Services 账户