如何处理具有相同的Greengrass V2组件但每个Thing具有不同组件配置的核心设备。

0

【以下的问题经过翻译处理】 您好,

我们正在使用Greengrass v2 Fleet Management来处理工厂中大量设备上传时间序列到我们的云数据湖。

所有设备的组件相同,但是组件使用的配置将针对每个设备不同。为了便于管理和维护整个设备群,我们希望将单个Deployment附加到Thing Group,并且所有设备都是该组中的Things。因此,当我们更新/修补Deployment时,所有Things都将使用相同版本进行更新/修补。

但是一个Deployment(明显)只能有一个配置,对于所有的Things来说是相同的。因此,似乎有两种方法:

  1. 为每个Thing创建一个Deployment,并使用Deployment配置来配置设备。这有两个缺点: *很难确保所有部署都使用正确的组件版本并保持最新 *控制台上的部署列表将非常庞大

  2. 创建一个与包含所有Things的Thing Group相关联的单个Deployment,并使用不同的device shadows(https://docs.aws.amazon.com/greengrass/v2/developerguide/interact-with-shadows.html)关联到每个Thing上。其中的缺点是: *我们必须自己实施基于阴影更改更新组件配置的逻辑,并且需要在需要特定配置的所有组件中使用它。

我还看到了一篇建议有公共Deployment和其他需要特定配置的组件的特定Deployments的帖子,但是还是会出现第一个方法中的问题。

因此,我的问题:

  • 我的假设正确吗(每个Deployment只有一个配置,并且由使用该Deployment的所有Things共享)?
  • 我是否漏掉了其他选项(我看到有人建议使用称为“Config”的单独组件)?
  • 有人可以分享一些其他的选择吗
profile picture
EXPERTE
gefragt vor 5 Monaten24 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 你好,

回答你的问题:

  1. 是的,你的假设是正确的。当将部署应用到物联网设备组时,配置和组件版本在所有该设备组内的设备上都是一致的。然而,组件的配置可以通过单独的配置组件针对每个设备进行重写。
  2. 你也可以为每个设备使用一个静态文件,该文件在你的端上独立管理,用于在组件上运行代码时获取特定设备的自定义参数。你还可以使用自定义组件来获取设备ID,并从远程位置(如S3存储桶或你的FTP服务器)下载特定设备ID的配置。使用这个自定义组件作为部署组的一部分,可以让你一次性部署获得与特定设备定制代码运行所需的定制设置。通过代码基于设备ID下载静态文件的方法,可以更方便地下载代码的配置文件和定制配置。

希望这可以帮到你。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen