基于Ubuntu服务器安装ThingsBoard
步骤1. 安装Java 11
注:java版本取决于安装的ThingsBoard版本,如:
· ThingsBoard-3.4.1 —— Java 11
· ThingsBoard-3.1.1 —— Java 8
(官网安装教程写的是3.1.1版本,这里安装最新版本3.4.1)
安装命令:sudo apt install openjdk-11-jdk
检查命令:java -version
可以使用以下命令配置哪个版本是默认版本:
sudo update-alternatives --config java
步骤2. 安装ThingsBoard服务
下载安装包
wget https://github.com/thingsboard/thingsboard/releases/download/v3.4.1/thingsboard-3.4.1.deb
安装服务
sudo dpkg -i thingsboard-3.4.1.deb
注:如果下载速度太慢,可采用两种解决方案
- 更换下载源
- 通过其他客户端下载好,再用scp命令传输至服务器上
安装完成未报错的话,可用以下命令看服务的安装路径:
whereis thingsboard
步骤3. 配置数据库
ThingsBoard能够使用SQL或hybrid数据库方式。 有关更多详细信息请参见相应的体系结构页面。
将PostgreSQL用于开发和生产环境ThingsBoard团队建议负载(<5000消息/秒)。
使用托管的PostgreSQL服务器对于ThingsBoard实例而言都是一种经济高效的解决方案。
PostgreSQL安装
|
|
安装了PostgreSQL后可创建一个新用户或为主要用户设置密码
|
|
然后,按Ctrl+D
返回主用户控制台并连接到数据库以创建 Thingsboard DB
|
|
ThingsBoard配置
编辑ThingsBoard配置文件,添加下列配置
sudo vim /etc/thingsboard/conf/thingsboard.conf
|
|
将 PUT_YOUR_POSTGRESQL_PASSWORD_HERE
替换刚刚创建的postgres用户密码
步骤4. 选择消息队列服务
选择下面消息中间件代理服务之前的通信。
- 内存 默认队列适用于开发环境很有用请勿用于生产环境。
- Kafka 对于本地和私有云部署可以独立于云服务供应商生产环境中使用。
- RabbitMQ 如果没有太多负载并且已经具备一定的使用经验建议使用此方式。
- AWS SQS 如是你打算在AWS上使用ThingsBoard则可以使用此消息队列。
- Google发布/订阅 如果你打算在Google Cloud上部署ThingsBoard则可以使用此消息队列。
- Azure服务总线 如果你打算在Azure上部署ThingsBoard则可以使用此消息队列。
- Confluent云 基于Kafka的完全托管的事件流平台。
默认使用内置的内存队列无需其他配置。
步骤5. 运行安装脚本
安装ThingsBoard服务并更新数据库配置后,执行以下脚本:
|
|
步骤6. 启动服务
执行以下命令以启动ThingsBoard:
sudo service thingsboard start
启动成功后,可以打开Web UI进行查看:
http://localhost:8080/(localhost换成相应服务器IP即可)
如果在安装脚本的执行过程中指定了_-loadDemo ,_则可以使用以下默认凭据:
- 系统管理员: sysadmin@thingsboard.org / sysadmin
- 租户管理员: tenant@thingsboard.org / tenant
- 客户: customer@thingsboard.org / customer
注: 如果是1-2核CPU或1-2G内存的计算机请等待90秒后启动界面。
故障排除
ThingsBoard日志存储在以下目录中:
/var/log/thingsboard
执行如下命令检查后面是否有错误:
cat /var/log/thingsboard/thingsboard.log | grep ERROR