微服务服务组件部署_物联网平台_边缘计算网关

平台的服务组件可实际情况部署到多台服务器

💡 提示

下列【必须】的服务组件至少存在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.yml
cd /_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.yml
cd /_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    #查看管理界面日志

本文通过 YUQUE WORDPRESS 同步自语雀
云腾五洲-AI助理