平台的服务组件可实际情况部署到多台服务器
💡 提示
下列【必须】的服务组件至少存在1个节点才能提供完整的业务功能。例如:核心服务、规则引擎和设备接入服务3个服务组件。
💡提示
在进行微服务组件部署前,需要对启动脚本java-start.sh添加执行权限。
chmod +x /_makeFile/services/_image/java-start.sh⚠️ 警告
首次部署或升级部署时,需要先删除可执行文件xjar,对应的部署包thingsKit.xjar和xjar.go必须一对一匹配。
⚠️ 警告
必须先启动【核心服务】进行数据库数据的初始化。
第1/3步:核心服务
修改服务配置
💡 提示
扩展核心服务时需要刷新Nginx的配置文件。
⚠️ 警告
使用在集群内唯一的标识符替换【服务名】,服务名重复会引起功能混乱。
⚠️ 警告
首次启动核心服务启动单个节点即可,等待初始化数据库成功后再启动其他节点。
💡 提示
【核心服务名】需要替换为【规范的服务名】后执行命令。
服务名命名规范:功能名+IP地址,例如:core235。
cd /_makeFile/services/core
#把docker-compose.yml文件中的服务名,替换为core1
sed -i 's/服务名/核心服务名/g' docker-compose.ymlcd /_makeFile/services/core
echo TB_SERVICE_ID: 核心服务名 >.env查看配置修改情况
cat docker-compose.yml|grep 服务名⚠️ 警告
如果还可以找到内容【服务名】说明配置文件编辑失败。
(可选)修改数据库账号密码
💡 提示
如果没有使用相关功能,直接忽略改操作。
查看脚本配置的账号和密码
💡 提示
【SPRING_DATASOURCE_USERNAME】数据库用户名环境变量
【SPRING_DATASOURCE_PASSWORD】数据库密码环境变量
docker-compose up -d
docker inspect core服务容器名|grep SPRING高可用的关系数据库(Pgpool)
💡 提示
在所有的Pgpool节点执行pgpool的命令。
pg_md5 -f ./etc/pgpool.conf -m -u 用户名 密码分布式数据库(Cassandra)
💡 提示
Cassandra数据库安装后,默认的用户名和密码都是【cassandra】
CREATE ROLE IF NOT EXISTS 用户名 WITH SUPERUSER = true AND LOGIN = true AND PASSWORD = '密码';ALTER ROLE cassandra WITH SUPERUSER = false AND LOGIN = false;启动
docker-compose up -d查看日志
docker-compose logs --tail=200 -f #查看管理界面日志第2/3步:规则引擎
修改服务配置
⚠️ 警告
使用在集群内唯一的标识符替换【服务名】,服务名重复会引起功能混乱。
💡 提示
【规则引擎服务名】需要替换为【规范的服务名】后执行命令。
服务名命名规范:功能名+IP地址,例如:rule235。
cd /_makeFile/services/rule
#把docker-compose.yml文件中的服务名,替换为core1
sed -i 's/服务名/规则引擎服务名/g' docker-compose.ymlcd /_makeFile/services/rule
echo TB_SERVICE_ID: 规则引擎服务名 >.env查看配置修改情况
cat docker-compose.yml|grep 服务名⚠️ 警告
如果还可以找到内容【服务名】说明配置文件编辑失败。
启动
sudo docker-compose up -d查看日志
sudo docker-compose logs --tail=200 -f #查看管理界面日志第3/3步:设备接入服务
修改服务配置
💡 提示
扩展设备接入服务时需要刷新Haproxy的配置文件。
⚠️ 警告
使用在集群内唯一的标识符替换【服务名】,服务名重复会引起功能混乱。
(推荐)mqtt设备接入
💡 提示
【设备接入服务名】需要替换为【规范的服务名】后执行命令。
服务名命名规范:功能名+IP地址,例如:mqtt235。
cd /_makeFile/services/transport_mqtt
sed -i 's/服务名/设备接入服务名/g' docker-compose.yml(可选)tcp设备接入
💡 提示
【设备接入服务名】需要替换为【规范的服务名】后执行命令。
服务名命名规范:功能名+IP地址,例如:tcp235。
cd /_makeFile/services/transport_tcp_udp
sed -i 's/服务名/设备接入服务名/g' docker-compose.yml(可选)http设备接入
💡 提示
【设备接入服务名】需要替换为【规范的服务名】后执行命令。
服务名命名规范:功能名+IP地址,例如:http235。
cd /_makeFile/services/transport_http
sed -i 's/服务名/设备接入服务名/g' docker-compose.yml(可选)gbt28181设备接入
💡 提示
【设备接入服务名】需要替换为【规范的服务名】后执行命令。
服务名命名规范:功能名+IP地址,例如:gbt235。
cd /_makeFile/services/transport_gbt28181
sed -i 's/服务名/设备接入服务名/g' docker-compose.yml查看配置修改情况
cat docker-compose.yml|grep 服务名⚠️ 警告
如果还可以找到内容【服务名】说明配置文件编辑失败。
启动
sudo docker-compose up -d查看日志
sudo docker-compose logs --tail=200 -f #查看管理界面日志(可选)脚本引擎
修改服务配置
💡 提示
如果配置环境变量JS_EVALUATOR的值为【remote】时,集群中至少存在一个脚本引擎的服务组件。
⚠️ 警告
使用在集群内唯一的标识符替换【服务名】,服务名重复会引起功能混乱。
💡 提示
服务名命名规范:功能名+IP地址,例如:executor235。
cd /_makeFile/services/js-executor
#把docker-compose.yml文件中的服务名,替换为core1
sed -i 's/服务名/executor235/g' docker-compose.yml查看配置修改情况
cat docker-compose.yml|grep 服务名⚠️ 警告
如果还可以找到内容【服务名】说明配置文件编辑失败。
启动
cd /_makeFile/services/js-executor
sudo docker-compose up -d查看日志
sudo docker-compose logs --tail=200 -f #查看管理界面日志