AWS Snowball
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本指南适用于 Snowball Edge。如果您正在查找 Snowball 的相关文档,请参阅 AWS Snowball 用户指南

将 AWS Lambda 与 AWS Snowball Edge 配合使用

在接下来的内容中,您将大体了解 AWS Snowball Edge 设备中使用的 由 AWS Greengrass 提供支持的 AWS Lambda。借助此功能,您可以在 Snowball Edge 上本地运行 Lambda 函数。要对 Snowball Edge 使用 由 AWS Greengrass 提供支持的 AWS Lambda 函数,您必须在 AWS IoT Greengrass 支持的 AWS 区域中创建任务。有关有效 AWS 区域的列表,请参阅 AWS General Reference 中的 AWS Greengrass

如果您是在 2018 年 7 月 17 日之前创建的任务,则此信息不适用于您的设备。请改为参阅将 AWS Lambda 与 AWS Snowball Edge 配合使用

注意

这些功能在亚太地区(孟买) AWS 区域中不受支持。

在您开始之前

在创建要在 Snowball Edge 上运行的 Python 语言的 Lambda 函数之前,建议您熟悉以下服务、概念和相关主题。

使用 AWS IoT Greengrass 的先决条件

AWS IoT Greengrass 是一个软件,它将 AWS 云功能扩展到本地设备。AWS IoT Greengrass 使本地设备可以更靠近信息源收集和分析数据,同时在本地网络上安全地相互通信。具体来说就是,使用 AWS IoT Greengrass 的开发人员可以在 AWS 云中编写无服务器代码(Lambda 函数)。然后,他们就可以很方便地将此代码部署到设备以便本地执行应用程序。

在将 AWS IoT Greengrass 与 Snowball Edge 结合使用时,务必理解以下 AWS IoT Greengrass 概念:

  • AWS IoT Greengrass 要求 – 有关完整的 AWS IoT Greengrass 要求列表,请参阅 AWS IoT Greengrass 开发人员指南 中的要求。AWS IoT Greengrass 支持 Python 版本 2.7,每个 Lambda 函数至少需要 128 MB RAM。

  • AWS IoT Greengrass 核心 – 每个 Snowball Edge 都有 AWS IoT Greengrass 核心软件。有关 AWS IoT Greengrass 核心软件的更多信息,请参阅 AWS IoT Greengrass 开发人员指南 中的 Greengrass 核心软件

  • AWS IoT Greengrass 组 – 作为 AWS IoT Greengrass 组的核心设备,Snowball Edge 是此组的一部分。有关组的更多信息,请参阅 AWS IoT Greengrass 开发人员指南 中的 AWS Greengrass 组

  • MQTT – AWS IoT Greengrass 使用行业标准的轻量级消息队列遥测传输 (MQTT) 协议在组内通信。在 Snowball Edge 内,有一个与 适用于 Snowball 的 Amazon S3 Adapter 相关联的 IoT 设备。如果在创建任务时指定的存储桶上使用 Amazon S3 PUT 对象操作写入数据,则这些操作将触发 MQTT 消息。这些消息反过来又会触发任何关联的 Lambda 函数。此外,如果您定义相关的 MQTT 消息来执行此操作,则 AWS IoT Greengrass 组中任何与 MQTT 兼容的设备或软件都可以触发 Lambda 函数。

  • 关联服务角色 – 在将 AWS IoT Greengrass 用于 Snowball Edge 核心设备之前,必须将 AWS IoT Greengrass 服务角色与您的账户相关联。此关联允许 AWS IoT Greengrass 访问您的 Lambda 函数和 AWS IoT 资源。有关更多信息,请参阅将 AWS IoT Greengrass 服务角色与您的账户关联

使用 AWS Lambda 的先决条件

AWS Lambda 是一项计算服务,可使您无需预配置或管理服务器即可运行代码。在将 Lambda 与 Snowball Edge 结合使用时,务必理解以下 Lambda 概念:

  • Lambda 函数 – 您的自定义代码,上传并发布到 Lambda 并在 Snowball Edge 上使用。有关更多信息,请参阅 AWS Lambda Developer Guide 中的 Lambda 函数

  • Lambda 控制台 – 管理控制台,您在其中上传、更新和发布 Python 语言的 Lambda 函数,以供在 Snowball Edge 上使用。有关如何使用 Lambda 控制台的示例,请参阅 AWS Lambda Developer Guide 中的步骤 2:创建 HelloWorld Lambda 函数和探索控制台

  • Python – 用于您的 Lambda 函数的高级编程语言,由 Snowball Edge 上的 AWS IoT Greengrass 提供支持。AWS IoT Greengrass 支持 Python 版本 2.7。

以下主题与在 Snowball Edge 上运行 由 AWS Greengrass 提供支持的 AWS Lambda 函数相关:

后续:

由 AWS IoT Greengrass 提供支持的 Lambda 入门

本页内容: