前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >EdgeX foundry树莓派搭建与MQTT通讯

EdgeX foundry树莓派搭建与MQTT通讯

作者头像
嘘、小点声
发布2020-09-16 10:41:38
1.7K0
发布2020-09-16 10:41:38
举报
文章被收录于专栏:嘘、小点声嘘、小点声

参考资料

使用容器方法管理和搭建EdgeX:https://docs.edgexfoundry.org/1.2/getting-started/quick-start/

什么是微服务,为什么要用微服务:https://www.zhihu.com/question/65502802

什么是MQTT,一个最简单的demo是什么:https://www.jianshu.com/p/14b34e537fd4

针对树莓派的EdgeX是如何的?这里使用的是树莓派4B,将之前的系统重新刷成64位arm,便于使用。(EdgeX对64位arm支持度较高)

树莓派Ubuntu mate20系统安装

1 选择合适的镜像烧录工具

https://www.raspberrypi.org/downloads/

2 下载镜像

https://ubuntu-mate.org/download/arm64/focal/

3 使用镜像烧录工具打开镜像,插入SD卡,开始烧录。(镜像下载比较慢,使用第二步的离线迅雷下载完以后直接烧录比较好)

4 给树莓派接上鼠标和键盘和重要的显示器,上电后根据屏幕引导进行安装即可。该系统对HDMI的输出电流可能不够,导致屏幕不亮。而从树莓派直接引电增强HDMI信号则仍然不够,需要外部引电(建议3A)。

5 排错的方法:插上网口看网口灯是都闪烁,闪烁则系统安装正确。树莓派3B的系统直接装到4B上是不行的,系统安装不正确。

Docker安装

按照其中提供的两个链接进行安装。https://docs.edgexfoundry.org/1.2/getting-started/quick-start/

其中第二个:docker-compose安装,如果不正确,则使用pip3进行安装(和python3有关)。

pip3可以通过apt-get 方式安装。

代码语言:javascript
复制
pip3 install docker-compose

安装完后通过以下命令查看

代码语言:javascript
复制
docker-compose --version

MQTT测试注意事项

如下链接中提供了MQTT的测试demo。其过程是通过重复向HiveMQ发布一个主题为EdgeXEvents,内容为一个json数据。

然后客户端也通过HiveMQ连接到broker.mqttdashboard.com,订阅EdgeXEvents主题,则可以获取到json数据。

https://docs.edgexfoundry.org/1.2/getting-started/quick-start/

有两点要注意:提供的HiveMQ网站,其js脚本中的JQuery可能会由于外网的原因无法加载,导致$符号无法识别,这时则需要更换网络,以正确加载和连接。

另外是在docker-compose.yml文件中添加的一段配置,其中

代码语言:javascript
复制
image: edgexfoundry/docker-app-service-configurable:1.1.0

应该改为

代码语言:javascript
复制
image: edgexfoundry/docker-app-service-configurable-arm64:1.1.0

另外

判断服务是否正常的方法是

代码语言:javascript
复制
docker-compose ps

如果某个进程卡掉,则该进程配置不正确,如mqtt

docker服务需要启动才可运行EdgeX的容器

代码语言:javascript
复制
service docker start
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参考资料
  • 树莓派Ubuntu mate20系统安装
  • Docker安装
  • MQTT测试注意事项
  • 另外
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档