ThingsBoard开源物联网平台智慧农业实例快速部署教程(Ubuntu、CentOS适用)

这篇具有很好参考价值的文章主要介绍了ThingsBoard开源物联网平台智慧农业实例快速部署教程(Ubuntu、CentOS适用)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ThingsBoard部署教程文档

1. JDK环境安装

Linux以Ubuntu和CentOS为主流,以此两个发行版为例进行流程命令示例,截图按照Ubuntu Server实际环境。

安装JDK11。(Debain apt源下载慢可以考虑换国内软件源,yum也是如此)

  • Ubuntu
sudo apt update
sudo apt install openjdk-11-jdk
  • CentOS
# Add latest EPEL release for CentOS 7
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install java-11-openjdk

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

此时用java -version查看是JDK11的版本信息

java -version

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

如果出现的1.8或者其他的版本信息,证明你之前装过JDK并正确配置,需要手动配置,手动配置方式如下:

sudo update-alternatives --config java

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

选择JDK11对应的版本切换到当前的环境下。

2. 安装thingsBoard

2.1 ThingsBoard软件包安装

  • Ubuntu
# 下载安装包
wget https://github.com/thingsboard/thingsboard/releases/download/v3.4.4/thingsboard-3.4.4.deb
# 安装
sudo dpkg -i thingsboard-3.4.4.deb
  • CentOS
# 下载安装包
wget https://github.com/thingsboard/thingsboard/releases/download/v3.4.4/thingsboard-3.4.4.rpm
# 安装
sudo rpm -Uvh thingsboard-3.4.4.rpm

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

2.2 PostgreSQL安装

鉴于初期的场景message不会并发大于5000条,在此仅安装PostgreSQL

  • Ubuntu
# 一般服务器自带wget,如果没有请用如下命令安装
sudo apt install -y wget

# 引入镜像源密钥
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

# 将镜像源添加到本机软件源
RELEASE=$(lsb_release -cs)
echo "deb http://apt.postgresql.org/pub/repos/apt/ ${RELEASE}"-pgdg main | sudo tee  /etc/apt/sources.list.d/pgdg.list

# 安装并启动 postgresql 服务:
sudo apt update
sudo apt -y install postgresql-12
sudo systemctl start postgresql
# 设置开机启动
sudo systemctl enable postgresql
  • CentOS
sudo yum install -y wget
# 更新软件源
sudo yum update
# 安装
sudo yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# 配置
sudo yum -y install epel-release yum-utils
sudo yum-config-manager --enable pgdg12
sudo yum install postgresql12-server postgresql12
# 初始化PostgreSQL DB
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb
sudo systemctl start postgresql-12
# 开机启动
sudo systemctl enable --now postgresql-12
  1. 安装wget
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

  2. 引入密钥(CentOS无此过程)
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

  3. 引入软件源
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

    可以打开/etc/apt/sources.list.d/pgdg.list确认。vim /etc/apt/sources.list.d/pgdg.list
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

    可见内容添加成功,需要更新软件列表

  4. 更新软件列表
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

  5. 安装postgresql服务并启动
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

    不确定是否启动成功可以systemctl status postgresql确认一下
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

2.3 PostgreSQL初始化配置

为thingsboard的例程添加数据库的初始化配置:

切换到postgres用户下,为登录postgresql用户设置密码

sudo su - postgres
psql
# 此行命令后按照提示输入密码
\password
# 输入后退出
\q
  1. 切换用户
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

  2. 进入数据库
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

  3. 设置密码
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

  4. \q退出数据库,键盘Ctrl+D退出bash回到主用户
    thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

(注意)CentOS下多一步配置:

编辑配置文件/var/lib/pgsql/12/data/pg_hba.conf

sudo vim /var/lib/pgsql/12/data/pg_hba.conf

定位到以下内容,将ident修改为md5

# IPv4 local connections:
host    all             all             127.0.0.1/32            ident

修改后

host    all             all             127.0.0.1/32            md5

重启服务

sudo systemctl restart postgresql-12.service

登录数据库并创建数据库

psql -U postgres -d postgres -h 127.0.0.1 -W
CREATE DATABASE thingsboard;
\q

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

3. 修改ThingsBord的配置

编辑thingsboard的配置文件

sudo vim /etc/thingsboard/conf/thingsboard.conf

在配置文件中添加以下内容,注意密码那一行替换成自己的密码

# DB Configuration 
export DATABASE_TS_TYPE=sql
export SPRING_DATASOURCE_URL=jdbc:postgresql://localhost:5432/thingsboard
export SPRING_DATASOURCE_USERNAME=postgres
export SPRING_DATASOURCE_PASSWORD=PUT_YOUR_POSTGRESQL_PASSWORD_HERE
# Specify partitioning size for timestamp key-value storage. Allowed values: DAYS, MONTHS, YEARS, INDEFINITE.
export SQL_POSTGRES_TS_KV_PARTITIONING=MONTHS

注意下面的配置内容可选,如果你的服务器内存是1G的,比较受限,需要额外配置以下jvm以保证效率。

# Update ThingsBoard memory usage and restrict it to 256MB in /etc/thingsboard/conf/thingsboard.conf
export JAVA_OPTS="$JAVA_OPTS -Xms256M -Xmx256M"

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

4. 运行安装脚本测试

我们没有经过消息队列等辅助高效缓存配件的安装,后续需要用到MQ、Kafka等可以再行安装,这里采用纯内存的策略。

运行安装脚本,--loadDemo其会导入几个用户、设备、资产、规则等用于示例

# --loadDemo option will load demo data: users, devices, assets, rules, widgets.
sudo /usr/share/thingsboard/bin/install/install.sh --loadDemo

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

重启thingsboard服务

systemctl restart thingsboard.service
# 查看一下
systemctl status thingsboard.service

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

安全组策略放行8080端口,防火墙放行8080端口。

安全组策略需要在你的云实例控制台上自行配置,而防火墙因人而异,你的服务器用iptables或者firewalld均有不同的操作方式

这里采用firewalld

sudo firewall-cmd --add-port=8080/tcp --zone=public --permanent
sudo firewall-cmd --reload

5. 访问测试

访问http://【你的服务器ip】:8080测试

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

这里有几个默认的账户

人员 账号 密码
系统管理员 sysadmin@thingsboard.org sysadmin
租户管理员 tenant@thingsboard.org tenant
客户管理员 customer@thingsboard.org customer

注意:资源有限的服务器(1-2CPU、1-2GB RAM),一般Web UI的启动需要等待90秒左右。

登录系统管理员:

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

登录租户管理员:

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

运行日志在/var/log/thingsboard

过滤错误日志可以快速使用如下命令:

cat /var/log/thingsboard/thingsboard.log | grep ERROR

6. 导入一个仪表盘库

6.1 导出仪表盘并导入自己的项目

如下是官方智慧农业仪表盘案例

https://thingsboard.io/smart-farming/

点击查看在线案例

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

右上角选择导出

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

导出后是个json文件

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

6.2 添加客户以及用户

添加一个客户

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

客户组里添加一个用户,激活方式可以选择激活链接或者邮箱链接,我们是测试,邮箱也是虚构的,那么就选择链接激活。

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

点击激活

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

激活后就到了设置密码的界面。

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

创建完密码就登录进来了

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

6.3 装饰仪表盘并分配给客户

我们返回租户管理员的账号

将导入的仪表盘分配给客户

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

选择新添加的用户

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

设置首页为仪表盘

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

编辑仪表盘

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

打开设置的显示仪表盘标题

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

登录新增用户,首页便是仪表盘

thingsboard客户案例,物联网,可视化,智慧农业,linux,腾讯云

可以全屏显示,也可以将某个小部分进行全屏显示。

活动数据需要写硬件程序并生成数字孪生的实体进行相应映射。文章来源地址https://www.toymoban.com/news/detail-788100.html

到了这里,关于ThingsBoard开源物联网平台智慧农业实例快速部署教程(Ubuntu、CentOS适用)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Github 上最流行的开源物联网平台—ThingsBoard

    ThingsBoard 作为目前 Github 上最流行的 开源物联网平台之一 ,可以实现物联网项目的快速开发、管理和扩展物联网项目, 是中小微企业物联网平台的不二之选。 使用ThingsBoard,您可以: 提供设备、资产和客户,并定义它们之间的关系。 从设备和资产中收集并可视化数据。 通过

    2024年02月16日
    浏览(50)
  • 开源物联网平台Thingsboard安装部署详细教程(适用于windows、linux平台)

    物联网平台这个词可能大多数人都不陌生,我们今天要介绍的Thingsboard就是其中一种。在我看来,thingsboard具有简单易用、开源免费的特点,例如可以将其部署于本地局域网,同时进行二次开发以满足个性化需求。说了这么多,thingsboard到底可以做什么呢?下面是官网的介绍:

    2024年02月03日
    浏览(51)
  • 华为云云耀云服务器L实例评测|部署功能强大的开源物联平台ThingsBoard

    ThingsBoard介绍 ThingBoard是一个开源的物联网(IoT)平台,旨在为智能设备、传感器和执行器的远程管理和控制提供一站式解决方案。它提供了一套功能强大的Web界面,允许用户监控和控制其物联网设备,同时支持设备之间的自定义通信和协作。ThingBoard平台具有设备管理、数据

    2024年02月08日
    浏览(40)
  • 物联网智慧种植农业大棚系统

    一、项目背景 智慧农业是是将物联网技术和农业生产箱管理的新型农业,依托部署在农业生产现场的各种传感节点,以物联网网关为通道形成数据传输网络,可以实现控制柜、环境监测传感器、气象监测机器等设备的远程监控,达到及时高校的管理控制,保证正常的农业生产

    2024年02月10日
    浏览(46)
  • 智慧农业建设方案中的物联网技术

    物联网即“物物相联之网”,指通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把物与物,人与物进行智能化连接,进行信息交换和通讯,以实现智能化识别、定位、跟踪、监控和管理的一种新兴网络。它不是一种物理上独立

    2024年02月04日
    浏览(53)
  • OpenRemote: Java 开源 IoT 物联网开发平台,匹配智慧城市、智能家居、能源管理

    OpenRemote 是一个直观、用户友好的基于Java语言的开源 IoT 物联网设备管理平台,它包括从连接设备到构建应用程序和特定领域的智能应用程序的所有功能和特性。通过OpenRemote物联网平台,用户可以收集和处理来自不同设备的传感器数据,适用于智能家居、智慧城市、能源管理

    2024年02月08日
    浏览(51)
  • 【雕爷学编程】Arduino智慧农业之物联网应用

    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用Arduino IDE(集成开发环境)来

    2024年02月19日
    浏览(44)
  • 【物联网应用案例】从0到N,智慧农业的数据价值

    智慧农业全方位渗透到农业的每一个环节,云端解决方案更推动了研究人员、农艺师及农民间的密切协作,为研发企业提供了既经济又具扩展性的完美方案。 据IDC预计,到2036年,农场收集的数据量将增加800%以上,这凸显了农业数字化转型对其影响。 为了满足全球超过80亿人

    2024年03月10日
    浏览(53)
  • 智慧农业:温室大棚物联网系统,助力实现可视化科学管理

    我国传统农业的特点是靠天吃饭,而智慧农业发端于物联网设备和对应的农业信息化管理系统,是利用数字技术、数据分析和人工智能等先进技术手段,对农业生产进行精细化管理和智能化决策的一种新型农业生产模式。它可以通过实时监测、预测和调控土壤、气象、水文、

    2024年02月13日
    浏览(58)
  • 基于物联网的智慧农业监测系统(前端界面有web端和微信小程序端)

    农业是国民经济的基础,在国家经济发展中有着不可替代的重要作用。随着物联网技术的快速发展,智慧农业已成为了现代农业发展的新方向。基于此,本文设计并实现了一套基于物联网的智慧农业监测系统,系统采用ESP32作为主控板,并搭载多种传感器,实时采集与农作物

    2024年02月03日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包