View a markdown version of this page

Lambda 管理器 - AWS IoT Greengrass

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

Lambda 管理器

Lambda 管理器组件 (aws.greengrass.LambdaManager) 管理在 Greengrass 核心设备上运行的 AWS Lambda 函数的工作项和进程间通信。

注意

将 Lambda 函数组件部署到核心设备时,部署还包括此组件。有关更多信息,请参阅 运行 AWS Lambda 函数

版本

此组件具有以下版本:

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

操作系统

此组件只能安装在 Linux 核心设备上。

Type

此组件是一个插件组件 (aws.greengrass.plugin)。Greengrass Nucleus 在与该 Nucleus 相同的 Java 虚拟机(JVM)中运行该组件。当您在核心设备上更改此组件的版本时,Nucleus 会重新启动。

此组件使用与 Greengrass Nucleus 相同的日志文件。有关更多信息,请参阅 监控 AWS IoT Greengrass 日志

有关更多信息,请参阅 组件类型

要求

此组件具有以下要求:

  • 您的核心设备必须满足运行 Lambda 函数的要求。如果您希望核心设备运行容器化 Lambda 函数,则设备必须满足相关要求。有关更多信息,请参阅 Lambda 函数要求

  • 支持在 VPC 中运行 Lambda 管理器组件。

依赖项

部署组件时, AWS IoT Greengrass 还会部署其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖关系的要求,才能成功部署组件。本部分列出了此组件的已发布版本的依赖关系,以及定义每个依赖关系的组件版本的语义版本约束。您还可以在 AWS IoT Greengrass 控制台中查看每个组件版本的依赖关系。在组件详细信息页面上,查找依赖关系列表。

2.3.7

下表列出了此组件的版本 2.3.7 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.17.0 软性
2.3.6

下表列出了此组件版本 2.3.6 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.16.0 软性
2.3.5

下表列出了此组件版本 2.3.5 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.15.0 软性
2.3.4

下表列出了此组件版本 2.3.4 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.14.0 软性
2.3.2 and 2.3.3

下表列出了此组件版本 2.3.2 和 2.3.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.13.0 软性
2.2.10 and 2.3.1

下表列出了此组件版本 2.2.10 和 2.3.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.12.0 软性
2.2.8 and 2.2.9

下表列出了此组件版本 2.2.8 和 2.2.9 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.11.0 软性
2.2.7

下表列出了此组件版本 2.2.7 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.10.0 软性
2.2.6

下表列出了此组件版本 2.2.6 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.9.0 软性
2.2.5

下表列出了此组件版本 2.2.5 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.8.0 软性
2.2.4

下表列出了此组件版本 2.2.4 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.7.0 软性
2.2.1 - 2.2.3

下表列出了此组件版本 2.2.1 至 2.2.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.6.0 软性
2.2.0

下表列出了此组件版本 2.2.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.5.0 <2.6.0 软性
2.1.3 and 2.1.4

下表列出了此组件版本 2.1.3 和 2.1.4 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.5.0 软性
2.1.2

下表列出了此组件的版本 2.1.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.4.0 软性
2.1.1

下表列出了此组件的版本 2.1.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.3.0 软性
2.1.0

下表列出了此组件版本 2.1.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.0 <2.2.0 软性
2.0.x

下表列出了此组件的版本 2.0.x 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass Nucleus >=2.0.3 <2.1.0 软性

有关组件依赖关系的更多信息,请参阅组件配方参考

配置

此组件提供您可以在部署组件时自定义的以下配置参数。

logHandlerMode
注意

仅适用于 Lambda 管理器 2.3.0+

用于选择要使用的 Lambda 日志管理器的实现。将该值设置为 optimized 可使用更少的线程来读取 Lambda 日志。

getResultTimeoutInSecond

(可选)Lambda 函数超时前可运行的最长时间(以秒为单位)。

默认值:60

本地日志文件

此组件使用与 Greengrass Nucleus 组件相同的日志文件。

/greengrass/v2/logs/greengrass.log
查看此组件的日志
  • 在核心设备上运行以下命令可实时查看此组件的日志文件。/greengrass/v2替换为 AWS IoT Greengrass 根文件夹的路径。

    sudo tail -f /greengrass/v2/logs/greengrass.log

更改日志

下表介绍每个组件版本的更改。

版本

更改

2.3.9

更新 Greengrass nucleus 版本 2.18.0 版本的组件版本。

2.3.8

更新 Greengrass nucleus 版本 2.17.0 版本的组件版本。

2.3.7

Greengrass nucleus 版本 2.16.0 版本的版本已更新。

2.3.6

Greengrass nucleus 版本 2.15.0 版本的版本已更新。

2.3.5

错误修复和改进
  • 可用时通过使用 epoll(而非 nio)提高了性能。

2.3.4

对 Greengrass Nucleus 版本 2.13.0 发行版进行了版本更新。

2.3.3

错误修复和改进
  • 常规错误修复和性能改进。

2.3.2

版本更新为 Greengrass Nucleus 版本 2.12.0 发布版。

2.3.1

错误修复和改进
  • 调整某些错误的日志级别。

2.3.0

新特征
  • 对日志处理程序进行了优化,以降低 CPU 负载。通过将配置选项 logHandlerMode 设置为 optimized,即可使用此功能。

错误修复和改进
  • 不再记录完整的 WorkQueueFullException 堆栈跟踪,以完善日志和性能。

  • 将 Lambda 关机超时时间从 15 秒设置为 300 秒,以防止关机超时。

  • 修复了更改配置后按需 Lambda 可能无法重新启动的问题。

2.2.11

错误修复和改进
  • 修复了 Lambda LegacySubscriptionRouter 配置更改时配置不会更新的问题。

2.2.10

版本更新为 Greengrass Nucleus 版本 2.11.0 发布版。

2.2.9

错误修复和改进

修复了以下问题:由于时钟偏差导致端口号损坏。

2.2.8

版本更新为 Greengrass Nucleus 版本 2.10.0 发布版。

2.2.7

对 Greengrass Nucleus版本 2.9.0 发行版进行了版本更新。

2.2.6

版本更新为 Greengrass Nucleus 版本 2.8.0 发布版。

2.2.5

新特征
  • 在您订阅本地 publish/subscribe 消息的事件源中添加对 MQTT 主题通配符的支持。

    此功能需要 v2.6.0 或更高版本的 Greengrass Nucleus 组件

  • 版本更新为 Greengrass Nucleus 版本 2.7.0 发布版。

2.2.4

版本更新为 Greengrass Nucleus 版本 2.6.0 发布版。

2.2.3

错误修复和改进
  • 修复了 Lambda 函数的多个实例共享一个 cgroup 的问题。此组件使用 cgroup 来管理 Lambda 函数的资源使用情况。

2.2.2

错误修复和改进
  • 修复了固定的 Lambda 函数组件在某些情况下意外重启的问题。

2.2.1

错误修复和改进
  • 更改此组件的 Greengrass Nucleus 依赖关系版本约束以修复依赖关系解析问题。

2.2.0

错误修复和改进
  • 修复了 Lambda 函数在重启后无法写入日志的问题。

  • 修复了当主题中有通配符时,传统订阅路由器会发送重复消息的问题。

  • 修复了非固定 Lambda 函数无法使用 AWS IoT Device SDK中 Greengrass 进程间通信(IPC)库的问题。

2.1.4

错误修复和改进
  • 修复了导致使用 NodeJS 运行时的 Lambda 函数仅处理一条消息的问题。

  • 版本更新为 Greengrass Nucleus 版本 2.5.0 发布版。

2.1.3

版本更新为 Greengrass Nucleus 版本 2.4.0 发布版。

2.1.2

版本更新为 Greengrass Nucleus 版本 2.3.0 发布版。

2.1.1

对 Greengrass Nucleus 版本 2.2.0 发行版进行了版本更新。

2.1.0

对 Greengrass Nucleus 版本 2.1.0 发行版进行了版本更新。

2.0.3

初始版本。