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

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

选择你的 n Amazon IoT Greengrass ucleus 运行时间

从版本2.14.0开始, Amazon IoT Greengrass 提供了其设备运行时的两种替代实现,一种名为nucleus的可执行文件。尽管实现方式有所不同,但这两个运行时都与该 Amazon IoT Greengrass 服务兼容, APIs 并且允许您使用 Greengrass SDK 部署提供的组件 Amazon 或开发自定义组件。同样也可以混合使用设备,根据需要在同一实例集中使用任一类型的 Nucleus。

但是,为了实现所需的可移植性或特定的省内存好处,必须确保在 Greengrass 设备上部署的 Nucleus 与打算用于加速 Amazon IoT 解决方案开发的组件兼容。要了解有关组件兼容性的更多信息,请参阅组件

最终,如何在两个 Greengrass 运行时选项之间进行选择将取决于您的特定用例、设备限制、功能要求和操作系统。

Greengrass Nucleus

Amazon IoT Greengrass nucleus 是功能齐全的运行时,它使您能够在各种设备 Amazon IoT Greengrass 上运行,包括具有更多计算资源的网关、服务器和边缘设备。在以下情况下,可考虑选择 Greengrass Nucleus Classic:

  • 计算资源:您的设备有足够的计算资源,例如超过 1 GB 的 RAM 和相对强大的处理器(例如,大于 1 个 GHz 时钟)。

  • 需要全面的操作系统支持:Greengrass Nucleus Classic 支持最广泛的操作系统(包括大多数 Linux 发行版与 Windows)。

  • 组件兼容性:Greengrass Nucleus Classic 与 Amazon IoT 服务团队和合作伙伴发布的现有组件完全兼容。

Greengrass Nucleus Lite

Amazon IoT Greengrass nucleus lite 是一款轻量级的开源运行时,可让您在资源受限 Amazon IoT Greengrass 的设备上运行。这对于具有大量应用程序的低成本单板计算机很有用,例如智能家居中心、智能电表、智能汽车、边缘人工智能和机器人。如果您的设备符合以下条件,可考虑选择 Greengrass Nucleus Lite

  • 资源受限:您的设备资源有限,例如 RAM 内存(512 MB 或更小)、存储(FLASH)空间或低性能处理器(小于 1)。 GHz

  • 依赖性受限:设备供应商软件平台不支持 Java 或 Nucleus Classic 所需的特定 JVM。

  • 操作系统:设备运行的是支持 systemd 的 Linux 发行版(例如:Ubuntu、Yocto)。

Greengrass Nucleus Lite 当前的局限性

正如 Amazon IoT Greengrass v2.14.0 中包含的那样,nucleus lite (v.2.0.0) 运行时提供了 nucleus classic (v2.14.0) 提供的部分功能。

Amazon IoT Greengrass IPC(进程间通信)机制允许组件与 Greengrass 核通信。Nucleus 的轻量级版本支持以下子集:

功能 可用性

SubscribeToTopic

可用

PublishToTopic

可用

PublishToIoTCore

可用

SubscribeToIoTCore

Available

UpdateState

暂不可用

SubscribeToComponentUpdates

暂不可用

DeferComponentUpdate

暂不可用

GetConfiguration

可用

UpdateConfiguration

可用

SubscribeToConfigurationUpdate

Available

SubscribeToValidateConfigurationUpdates

暂不可用。

SendConfigurationValidityReport

暂不可用。

GetSecretValue

暂不可用。

PutComponentMetric

暂不可用

GetComponentDetails

暂不可用

RestartComponent

暂不可用

StopComponent

暂不可用

CreateLocalDeployment

Available

CancelLocalDeployment

暂不可用

GetLocalDeploymentStatus

暂不可用

ListLocalDeployments

暂不可用

ListComponents

暂不可用

ValidateAuthorizationToken

Available

CreateDebugPassword

暂不可用

PauseComponent

暂不可用

ResumeComponent

暂不可用

GetThingShadow

暂不可用

UpdateThingShadow

暂不可用

DeleteThingShadow

暂不可用

ListNamedShadowsForThing

暂不可用

SubscribeToCertificateUpdates

暂不可用

VerifyClientDeviceIdentity

暂不可用

GetClientDeviceAuthToken

暂不可用

AuthorizeClientDeviceAction

暂不可用