步骤1 安装java11
官网文档是3.1.1的,去github上下安装包是3.4.1的,3.1.1的基于java8 而最新版的是基于java11的
1
2
sudo apt update
sudo apt install openjdk-11-jdk
ubuntu apt换源后更新遇到 无法解析的错误
Could not resolve 'mirrors.aliyun.com'
解决方案:
1 2 3 vi /etc/resolv.conf nameserver 8.8.8.8 nameserver 114.114.114.114
如果安装了多个java 可以配置默认版本
1
sudo update-alternatives --config java
步骤2 安装服务
可以选择 wget去github上获取,也可以手动下载完(wget慢的话),远程传上去
windows上 scp命令在C:\Windows\System32\OpenSSH>下
scp命令格式
scp 文件地址 [/* 目录下所有文件] linux系统登录名@linux IP 地址:Linux路径
发现 会报connection refused
解决方案:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 配置sshd服务 1、打开文件 vi /etc/hosts.allow 2、添加 sshd:ip1 sshd:ip2 3、重启sshd服务 service sshd restart 4、查看服务启动状态 service ss hd status // 没有sshd服务 需要先安装服务 $ sudo apt update $ sudo apt install openssh-server $ sudo systemctl start sshd // 如果路径+permission denied 多半是权限不够 比如/opt目录 可以 $ sudo chmod 777 /opt
步骤3 安装PostgreSQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# install **wget** if not already installed:
sudo apt install -y wget
# import the repository signing key:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
# add repository contents to your system:
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
# install and launch the postgresql service:
sudo apt update
sudo apt -y install postgresql-12
sudo service postgresql start
wget参数 –quiet(-q) 不输出; -O 使用其他名称来保存文件;
apt-key命令用来管理Debian软件包密钥,
add
将下载的key添加到本地trust数据库中;tee 命令 将标准输入保存到指定文件中
一旦安装了PostgreSQL您可能想要创建一个新用户或为主要用户设置密码。
以下说明帮助你设置PostgreSQL用户密码
1
2
3
4
sudo su - postgres
psql
\password
\q
su 命令 switch user的缩写,
-
表示login使shell为登录shell;psql 命令 进入 postgresql的命令行模式
\password 输出密码 \q 退出
然后,按“Ctrl+D”返回主用户控制台并连接到数据库以创建Thingsboard DB:
1
2
3
psql -U postgres -d postgres -h 127.0.0.1 -W
CREATE DATABASE thingsboard;
\q
-U user -d 数据库 -W 密码提示
编辑ThingsBoard配置文件
1
sudo nano /etc/thingsboard/conf/thingsboard.conf
nano 也是文本编辑器 也可以用其他的
将“PUT_YOUR_POSTGRESQL_PASSWORD_HERE”替换postgres用户真实密码
1
2
3
4
5
6
7
8
9
10
11
# DB Configuration
export DATABASE_ENTITIES_TYPE=sql
export DATABASE_TS_TYPE=sql
export SPRING_JPA_DATABASE_PLATFORM=org.hibernate.dialect.PostgreSQLDialect
export SPRING_DRIVER_CLASS_NAME=org.postgresql.Driver
export SPRING_DATASOURCE_URL=jdbc:postgresql://localhost:5432/thingsboard
export SPRING_DATASOURCE_USERNAME=postgres
export SPRING_DATASOURCE_PASSWORD=PUT_YOUR_POSTGRESQL_PASSWORD_HERE
export SPRING_DATASOURCE_MAXIMUM_POOL_SIZE=5
# Specify partitioning size for timestamp key-value storage. Allowed values: DAYS, MONTHS, YEARS, INDEFINITE.
export SQL_POSTGRES_TS_KV_PARTITIONING=MONTHS
步骤4 选择消息队列服务
选择下面消息中间件代理服务之前的通信。
-
内存 默认队列适用于开发环境很有用请勿用于生产环境。
-
Kafka 对于本地和私有云部署可以独立于云服务供应商生产环境中使用。
-
RabbitMQ 如果没有太多负载并且已经具备一定的使用经验建议使用此方式。
-
AWS SQS 如是你打算在AWS上使用ThingsBoard则可以使用此消息队列。
-
Google发布/订阅 如果你打算在Google Cloud上部署ThingsBoard则可以使用此消息队列。
-
Azure服务总线 如果你打算在Azure上部署ThingsBoard则可以使用此消息队列。
-
Confluent云 基于Kafka的完全托管的事件流平台。
开发阶段可以先用 内存,后续再布置其他的消息队列服务
步骤5 低性能模式[可选]
步骤6 运行安装脚本
安装完服务 配置完数据库
1
2
# --loadDemo option will load demo data: users, devices, assets, rules, widgets.
sudo /usr/share/thingsboard/bin/install/install.sh --loadDemo
步骤7 启动服务
sudo service thingsboard start
通过 localhost:8080
访问webui
如果在安装脚本的执行过程中指定了-loadDemo则可以使用以下默认凭据:
系统管理员: sysadmin@thingsboard.org / sysadmin 租户管理员: tenant@thingsboard.org / tenant 客户: customer@thingsboard.org / customer
步骤8 配置HTTPS [可选]
配置HAProxy以启用HTTPS
您可能要使用HAProxy配置HTTPS访问。
如果您在云端托管ThingsBoard并为您的实例分配了有效的DNS名称,则可以这样做。
请按照此指南安装HAProxy并使用有效的SSL证书。
故障排除
ThingsBoard日志存储在以下目录中:
1
/var/log/thingsboard
执行如下命令检查后面是否有错误:
1
cat /var/log/thingsboard/thingsboard.log | grep ERROR
参考文档
[基于Ubuntu服务器安装ThingsBoard | ThingsBoard中文网](http://www.ithingsboard.com/docs/user-guide/install/ubuntu/) |