首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接主流量IoT代理到EdgeX网关

连接主流量IoT代理到EdgeX网关
EN

Stack Overflow用户
提问于 2020-07-26 19:00:05
回答 1查看 254关注 0票数 1

目前,我正在尝试设置一个最小的EdgeX -主流量设置,以监视我们公司的特定传感器数据。

对于原型化,我设置了两个Linux服务器。

Gateway

  • Mainflux
  • EdgeX

网关接收来自硬件设备的读数,并将它们传递到主流量服务器进行进一步处理。

为此,我遵循了官方主流文档https://mainflux.readthedocs.io/en/latest/agent/中的示例。

'gateway-thing'

  • Created

  • 创建了一个用户

  • 创建了一个channels

  • Created 2通道(data_channel,control_channel)

  • Connected网关--用于两个channels

  • Created引导configuration

的东西)。

代码语言:javascript
复制
gateway_thing_id="43259265-394c-4cc4-bf50-58aba33432ce"
control_channel_id="18599c67-2699-4654-8eac-016133875932"
data_channel_id="ba67f32e-1912-4038-9515-6d4dd6024413"
bootstrap_configuration='
{
    "external_id": "44:e1:2d:e6:cf:03",
    "thing_id": "43259265-394c-4cc4-bf50-58aba33432ce",
    "external_key": "edged",
    "name": "edged",
    "channels": [
        "ba67f32e-1912-4038-9515-6d4dd6024413",
        "18599c67-2699-4654-8eac-016133875932"
    ],
    "content":"{\"log_level\":\"debug\",\"http_port\":\"9000\",\"mqtt_url\":\"tcp://localhost:1883\",\"edgex_url\":\"http://localhost:48090/api/v1/\"}"
}'

切换到EdgeX服务器

  1. 为代理

创建了环境变量

代码语言:javascript
复制
export MF_AGENT_LOG_LEVEL=debug
export MF_AGENT_BOOTSTRAP_KEY=edged
export MF_AGENT_BOOTSTRAP_ID=44:e1:2d:e6:cf:03
export MF_AGENT_BOOTSTRAP_URL='http://192.168.137.95:8202/things/bootstrap/'

  1. 启动代理

因为指令要求我安装natsd,所以我通过docker创建了一个实例。现在一切都如期而至。我可以发布和订阅消息EdgeX <->主机服务器。说明中没有提到的是如何从那里着手。

据我所知,代理需要安装在EdgeX服务器上,因为它充当边缘和主流量之间的桥梁。代理连接到EdgeX端的mqtt服务器,以便能够来回发布和接收控制/数据命令。

我不知道代理是如何连接到网关的,以及NATSD实例正在做什么。会有人知道如何才能将数据从edgex服务器获取到主程序实例上吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-30 14:37:50

假定您同时在同一网关/PC上运行edgexagent

要从edgex服务器API端点接收数据,可以向代理发送mqtt消息。

例如:

代码语言:javascript
复制
mosquitto_pub -u <thing_id> -P <thing_key> -t channels/<channel_id>/messages/req -h localhost -m '[{"bn":"1:", "n":"control", "vs":"edgex-config, edgex-support-notifications, edgex-core-data"}]'

这将使代理向edgex端点http://localhost:48082/api/v1/config发送请求。

并检索edgex-support-notifications, edgex-core-data的配置数据。

要观察响应,您必须订阅channels/<channel_id>/messages/res

edgex上支持的端点是/config/metrics/operation/ping

对于NATS,它不用于与edgex通信。

NATS被用于其他服务,这些服务可以订阅通过agent从主流量接收的命令。

另外,其他服务也可以通过在NATS上发布到heartbeat主题来报告其生动活泼,NATS由代理获取,可用于获取mqtt。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63104417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档