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

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

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

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

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

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

Greengrass Nucleus

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

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

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

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

Greengrass Nucleus Lite

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

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

  • 依赖性限制:您的设备供应商软件平台不支持 Java 或 Greengrass 核心所需的特定 JVM。

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

Greengrass Nucleus Lite 当前的局限性

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

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

功能 可用性

SubscribeToTopic

可用

PublishToTopic

可用

PublishToIoTCore

可用

SubscribeToIoTCore

可用

UpdateState

暂不可用

SubscribeToComponentUpdates

暂不可用

DeferComponentUpdate

暂不可用

GetConfiguration

可用

UpdateConfiguration

可用

SubscribeToConfigurationUpdate

可用

SubscribeToValidateConfigurationUpdates

暂不可用。

SendConfigurationValidityReport

暂不可用。

GetSecretValue

暂不可用。

PutComponentMetric

暂不可用

GetComponentDetails

暂不可用

RestartComponent

暂不可用

StopComponent

暂不可用

CreateLocalDeployment

可用

CancelLocalDeployment

暂不可用

GetLocalDeploymentStatus

暂不可用

ListLocalDeployments

暂不可用

ListComponents

暂不可用

ValidateAuthorizationToken

可用

CreateDebugPassword

暂不可用

PauseComponent

暂不可用

ResumeComponent

暂不可用

GetThingShadow

暂不可用

UpdateThingShadow

暂不可用

DeleteThingShadow

暂不可用

ListNamedShadowsForThing

暂不可用

SubscribeToCertificateUpdates

暂不可用

VerifyClientDeviceIdentity

暂不可用

GetClientDeviceAuthToken

暂不可用

AuthorizeClientDeviceAction

暂不可用