问题标签 [greengrass]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
46 浏览

greengrass - Windows 上的 Greengrass V2:系统重启删除了 EffectiveConfig.yaml

我在 Windows 上使用了 Greengrass V2 的手动安装:https ://docs.aws.amazon.com/greengrass/v2/developerguide/manual-installation.html

手动过程的原因是我必须调整代理设置,因为我的设备位于公司代理后面。我创建了我config.yaml的并使用参数启动了安装程序--init-config

一切正常,我能够将组件从云部署到设备。

但是当我重新启动服务时(我--setup-system-service在安装过程中使用了该标志),它effectiveConfig.yaml被删除并使用默认值从头开始构建。不仅缺少网络代理属性,而且使用了默认区域 us-east-1 并且 iot 端点为空。

我可以以某种方式将config.yaml(我在将 Greengrass 作为服务安装时使用的)放在 greengrass 文件夹中,以便在服务重启期间使用它吗?

0 投票
1 回答
92 浏览

amazon-web-services - 在不使用云发现的情况下检索 AWS Greengrass v2“核心设备 CA 证书”?

对于 Greengrass v2,我找不到任何方法来检索核心设备 CA 证书。在控制台、SDK 或 API 中也找不到任何方法来检索核心设备 CA 证书。

我知道客户端设备会收到特定证书以响应云发现,但是,我正在尝试找到一种客户端设备不需要互联网连接的方法。

如果我有证书,客户端设备可以使用该证书以及已知的 Greengrass Core 端点进行身份验证并连接到 Greengrass Core 设备,而无需 Internet 连接。

所以问题是,是否有任何方法可以检索/下载核心设备 CA 证书?

0 投票
1 回答
21 浏览

amazon-web-services - AWS Greengrass V2 Modbus RTU 适配器连接问题

我已成功将 Greengrass Modbus 组件部署到我的 Raspberry pi 4B 并具有所需的依赖项。pi 通过 RS485 USB 加密狗连接到 Modbus 温度和湿度传感器。我确认我可以使用 Modpoll 命令行主模拟器工具成功读取保持寄存器,到目前为止一切都很可爱。可以通过路径“/dev/ttyUSB0”访问传感器。

我希望 Greengrass 将传感器上这些寄存器的值报告给 AWS IoTCore。

为了请求数据,我将负载从 AWS 代理发送到特定主题到 Greengrass 核心。在我的特殊情况下,主题是默认的“modbus/adapter/request”。我发送了以下有效载荷:

我得到以下关于“modbus/adapter/response”主题的回复:

重申一下,我知道正确的端口,因为我可以使用命令行 Modbuspoll 读取保持寄存器。但是,使用该工具我可以指定更多参数,例如奇偶校验类型、波特率等……这似乎我不能在这里做。供大家参考,我在 Modpoll 上使用的参数如下:

供您参考,上述所有步骤都遵循本指南:https ://docs.aws.amazon.com/greengrass/v2/developerguide/modbus-rtu-protocol-adapter-component.html#modbus-rtu-protocol -适配器组件输入数据

有什么建议吗?

0 投票
0 回答
15 浏览

amazon-web-services - 如何从 lambda 函数读取运行 AWS IoT Greengrass 的 linux 网关上的本地文本文件?

我在使用 Greengrass Core 运行 linux 的网关上有一个本地文件,我正在使用 lambda 从使用 modbus 连接到该网关的传感器获取数据。有没有办法直接在 lambda 中读取存储在网关上的本地文本文件?

0 投票
1 回答
35 浏览

amazon-web-services - Greengrass V2 不断给我 MqttProxyIPCAgent Not Authorized

我有以下 Greengrass V2 自定义配方:

注意:我还尝试了 accessControl 的变体:

(注意:pubsub 与 mqttproxy)

但是,在我的 greengrass.log 中,我不断收到以下信息:

请注意:

My Thing 设备证书也有一个允许的策略,iot:*因此greengrass:*从策略/IAM 的角度来看,我可以发布。

任何想法为什么我在设备上获得未授权?

0 投票
2 回答
29 浏览

aws-iot - 组件内的 Greengrass v2 日志记录

我看不到任何我可能会从 Greengrass v2 组件中注销的内容。

例如:

这在我的 .log 或 greengrass.log 文件中不可见。我也尝试过不同的日志记录级别。与logger.debug("...")

0 投票
2 回答
23 浏览

node.js - AWS Greengrass V2 节点发布问题与 aws-iot-sdk-v2 JS

在过去的几天里,我一直在尝试使用 Greengrass v2 解决将消息从 Lambda 发布到 AWS 云的问题。

文档中甚至提供了 python 中的代码,只需要稍作修改。

当谈到文档中的 SDK v2 JS 时,AWS-CRT 库中很少提及发布功能。

我尝试使用该库中的组件创建代码,但看起来该库还需要一个带参数的脚本。

这是我的代码,需要安装 aws-iot-sdk-v2 js。

我收到有关参数和 NAPI 的错误。

将此函数用作 greengrass 日志中的 lambda 组件时也会出现相同的错误

也许有人有一些示例如何使用带有 sdk v2 的 Node lambda 发布有关主题的一些消息。

0 投票
0 回答
6 浏览

aws-iot - Greengrass StreamManager 无法连接到 IoTAnalytics

我对 AWS 和 Greengrass v2 还很陌生,一步一步我似乎掌握了窍门。但现在我被困住了,我想在这里问这个问题:

  • 我使用该--provision true选项安装了一个正常运行的 Greengrass Core 设备,因此安装程序会自动生成角色和别名
  • 我能够向IoTCore发送消息并返回
  • 我能够根据特定主题触发Lambda函数
  • 我正在运行以下 AWS 提供的组件:
    • 影子管理器
    • 流管理器
    • 代币兑换服务
    • 客户端设备.Auth
    • clientdevices.mqtt.Bridge
    • 客户端设备.mqtt.Moquette
  • 我向 IAM 角色添加了能够将数据推送到IoTAnalytics的策略

我创建了一个自定义组件

该组件能够:

  • 连接到 StreamManager
  • 在 StreamManager 上创建流
  • 每 10 秒将消息附加到创建的流中

这些是组件的日志文件,一切看起来都很好:

StreamManager 更新

但是 StreamManager 在尝试将数据上传到IoTAnalytics时似乎会出错。这些是aws.greengrass.StreamManager.log 来自我可以阅读的错误日志 StreamManager 似乎无法从 Greengrass 获取 AWS 凭证

有关完整信息,这些是此要点中 Stream Manager 的完整调试日志。错误在第 167 行

我希望有人可以帮助我,这样我就可以将我的测量数据发送给 IoTAnalytics。

谢谢!问候

哈科尔