⚠️ 警告
文档中的修改,在集群中的所有节点需要保持一致。
第1/6步:修改依赖软件的集群节点信息
1/3:服务器节点配置IP
💡 提示
配置文件【miscroservice_base.env】默认包含5个服务器节点的环境变量。根据实际使用的服务器节点数修改环境变量。
💡 提示
改配置项与KAFKA和ZOOKEEPER集群部署相关。
编辑配置文件
cd /_makeFile
sed -i 's/集群节点01/服务节点01的网卡(内网)IP/g' miscroservice_base.env
查看结果
cat miscroservice_base.env|grep 集群节点
⚠️ 警告
如果还可以找到文本【集群节点01】说明配置文件编辑失败。
2/3:调整Zookeeper集群的服务节点数
💡 提示
配置文件默认使用1个服务节点部署。结合实际情况调整集群的节点数。
编辑配置文件
cd /_makeFile
sed -i 's/#nodes3//g' miscroservice_zookeeper.env
sed -i 's/#nodes3//g' miscroservice_zookeeper.env
sed -i 's/#nodes5//g' miscroservice_zookeeper.env
查看结果
cat miscroservice_zookeeper.env|grep #nodes3
⚠️ 警告
如果还可以找到文本【#nodes3】说明配置文件编辑失败。
3/3:调整Kafka集群的服务节点数
💡 提示
配置文件默认使用1个服务节点部署。结合实际情况调整集群的节点数。
编辑配置文件
cd /_makeFile
sed -i 's/ #nodes3//g' miscroservice_kafka.env
sed -i 's/ #nodes3//g' miscroservice_kafka.env
sed -i 's/ #nodes5//g' miscroservice_kafka.env
查看结果
cat miscroservice_kafka.env|grep #nodes3
⚠️ 警告
如果还可以找到文本【#nodes3】说明配置文件编辑失败。
(可选)分布式数据库cassandra
💡 提示
cassandra将以【服务节点01】为基础进行集群组网。
💡 提示
设备上报的遥测数据使用分布式数据库存储时,必须部署Cassandra。
编辑配置文件
cd /_makeFile
sed -i 's/集群节点01/服务节点01的网卡(内网)IP/g' miscroservice_cassandra.env
查看结果
cat miscroservice_cassandra.env|grep 集群节点01
⚠️ 警告
如果还可以找到文本【集群节点01】说明配置文件编辑失败。
第2/6步:修改redis软件集群配置
💡 提示
默认为单节点部署,需要多节点集群部署时,执行命令开启集群部署。
编辑容器编排文件
cd /_makeFile/redis
sudo sed -i "s/#masterdeploy//" docker-compose.yml
查看结果
cat docker-compose.yml | grep masterdeploy
⚠️ 警告
如果搜索到文本【masterdeploy】,说明文件编辑失败。
第3/6步:(可选)修改minio软件配置
💡 提示
默认为单节点部署,需要多节点集群部署时,执行命令开启集群部署。
1/3:(可选)集群数据目录
编辑配置文件
数据目录
cd /_makeFile/minio
sudo sed -i "s|/data #cluster|集群数据目录|" docker-compose.yml
域名解析
cd /_makeFile/minio
sudo sed -i "/extra_hosts:/s/^#//" docker-compose.yml
域名解析
💡 提示
需要将文本【hostname解析】替换后执行命令。
例如1: – minio1:192.168.1.235
例如2: – minio2:192.168.1.236
例如3: – minio3:192.168.1.237
例如4: – minio4:192.168.1.238
例如5: – minio5:192.168.1.239
⚠️ 警告
minio集群有几个节点,就执行几次。
cd /_makeFile/minio
sed -i '/extra_hosts:/a - hostname解析' docker-compose.yml
查看结果
cat docker-compose.yml | grep 'data #cluster'
⚠️ 警告
如果通过关键字【data #cluster】搜索到的文本不包含你修改的内容,说明文件编辑失败。
2/3:(可选)集群服务地址
编辑配置文件
💡 提示
需要将文本【集群服务地址】替换后执行命令。
例如:192.168.1.240:9000
cd /_makeFile
sudo sed -i "s|/MINIO_ACCESS_ADRESS|集群服务地址|" miscroservice_minio.env
查看结果
cat miscroservice_minio.env | grep MINIO_ACCESS_ADRESS
⚠️ 警告
如果文本包含文本【MINIO_ACCESS_ADRESS】,说明文件编辑失败。
3/3:应用访问地址
编辑配置文件
💡 提示
需要将文本【应用访问地址】替换后执行命令。
例如:192.168.1.240:9000
cd /_makeFile
sudo sed -i "s|MINIO_ACCESS_ADRESS|应用访问地址|" miscroservice_app_application_storage.env
查看结果
cat miscroservice_app_application_storage.env | grep MINIO_ACCESS_ADRESS
⚠️ 警告
如果文本包含文本【MINIO_ACCESS_ADRESS】,说明文件编辑失败。
第4/6步:修改Nginx软件配置文件
编辑配置文件
💡 提示
将集群内所有【核心服务】的访问地址添加到nginx配置文件中,以便提供负载均衡功能。
节点1的核心服务访问地址,例如:192.168.1.235:8080
cd /_makeFile/webserver
sudo sed -i "/server localhost:8080/aserver 核心服务访问地址;" nginx.template
查看结果
cat nginx.template | grep server
⚠️ 警告
如果通过关键字【server】搜索到添加的配置文本,说明文件编辑成功。
第5/6步:修改Haproxy软件配置文件
设备接入服务:MQTT
编辑配置文件
💡 提示
需要将文本【节点别名1 访问服务的IP或域名:端口】替换后执行命令。
例如:节点mqtt01 192.168.1.235:1883
cd /_makeFile/loadbalance/conf
sed -i '/设备接入协议MQTT负载均衡节点/a server 节点别名1 访问服务的IP或域名:端口 check inter 5s resolvers docker_resolver resolve-prefer ipv4' haproxy.cfg
查看结果
cat haproxy.cfg | grep server
⚠️ 警告
如果通过关键字【server】搜索到添加的配置文本,说明文件编辑成功。
设备接入服务:TCP
编辑配置文件
💡 提示
需要将文本【节点别名1 访问服务的IP或域名:端口】替换后执行命令。
例如:节点tcp01 192.168.1.235:8088
cd /_makeFile/loadbalance/conf
sed -i '/设备接入协议TCP负载均衡节点/a server 节点别名1 访问服务的IP或域名:端口 check inter 5s resolvers docker_resolver resolve-prefer ipv4' haproxy.cfg
查看结果
cat haproxy.cfg | grep server
⚠️ 警告
如果通过关键字【server】搜索到添加的配置文本,说明文件编辑成功。
设备接入服务:HTTP
编辑配置文件
💡 提示
需要将文本【节点别名1 访问服务的IP或域名:端口】替换后执行命令。
例如:节点http01 192.168.1.235:8082
cd /_makeFile/loadbalance/conf
sed -i '/设备接入协议HTTP的负载均衡节点/a server 节点别名1 访问服务的IP或域名:端口 check inter 5s resolvers docker_resolver resolve-prefer ipv4' haproxy.cfg
查看结果
cat haproxy.cfg | grep server
⚠️ 警告
如果通过关键字【server】搜索到添加的配置文本,说明文件编辑成功。
第6/6步:修改服务组件的配置信息
1/4:服务中心Zookeeper
💡 提示
需要将文本【集群内所有ZOOKEEPER节点的访问地址】替换后执行命令。
例如:192.168.1.235:2181,192.168.1.236:2181,192.168.1.237:2181
编辑配置文件
cd /_makeFile
sed -i 's/ZOOKEEPER_ACCESS_ADRESS/集群内所有ZOOKEEPER节点的访问地址/g' miscroservice_app_common.env
查看结果
cat miscroservice_app_common.env|grep ZOOKEEPER_ACCESS_ADRESS
⚠️ 警告
如果还可以找到文本【ZOOKEEPER_ACCESS_ADRESS】说明配置文件编辑失败。
2/4:消息中间件
💡 提示
需要将文本【集群内所有KAFKA节点的访问地址】替换后执行命令。
例如:192.168.1.235:9092,192.168.1.236:9092,192.168.1.237:9092
编辑配置文件
cd /_makeFile
sed -i 's/QUEUE_ACCESS_ADRESS/集群内所有KAFKA节点的访问地址/g' miscroservice_app_common.env
查看结果
cat miscroservice_app_common.env|grep QUEUE_ACCESS_ADRESS
⚠️ 警告
如果还可以找到文本【QUEUE_ACCESS_ADRESS】说明配置文件编辑失败。
3/4:缓存Redis
编辑配置文件
💡 提示
环境变量中,部署包默认使用的是REDIS的单体模式。
二选一:单体模式
💡 提示
需要将文本【集群内所有REDIS节点的访问地址】替换后执行命令。
例如:192.168.1.235
cd /_makeFile
sed -i 's/CACHE_ACCESS_HOST/集群内所有REDIS节点的IP/g' miscroservice_app_common.env
二选一:集群模式
💡 提示
需要将文本【集群内所有REDIS节点的访问地址】替换后执行命令。
例如:192.168.1.235:6379,192.168.1.236:6379,192.168.1.237:6379
cd /_makeFile
sed -i 's/=standalone/=cluster/g' miscroservice_app_common.env
sed -i 's/CACHE_ACCESS_ADRESS/集群内所有REDIS节点的访问地址/g' miscroservice_app_common.env
查看结果
cat miscroservice_app_common.env|grep CACHE_ACCESS_ADRESS
⚠️ 警告
如果还可以找到文本【CACHE_ACCESS_ADRESS】说明配置文件编辑失败。
4/4:关系数据库Postgresql
💡 提示
需要将文本【集群内PGSQL节点的IP】替换后执行命令。
例如:192.168.1.235
💡 提示
需要将文本【集群内PGSQL服务的端口】替换后执行命令。
例如:5432
编辑配置文件
cd /_makeFile
sed -i 's/DB_ACCESS_IP_NO_PORT/集群内PGSQL节点的IP/g' miscroservice_app_application_storage.env
sed -i 's/DB_ACCESS_ONLY_PORT/集群内PGSQL服务的端口/g' miscroservice_app_application_storage.env
查看结果
cat miscroservice_app_application_storage.env|grep DB_ACCESS_IP_NO_PORT
⚠️ 警告
如果还可以找到文本【DB_ACCESS_IP】说明配置文件编辑失败。
(可选)图片存储Minio
💡 提示
图片文件默认本地存放,环境变量【FILE_STORAGE_TYPE】的值为minio时,必须安装minio。
编辑配置文件
💡 提示
需要将文本【Minio节点的访问地址】替换后执行命令。
例如:192.168.1.235:9000
cd /_makeFile
sed -i 's/MINIO_ACCESS_ADRESS/Minio节点的访问地址/g' miscroservice_app_application_storage.env
查看结果
cat miscroservice_app_application_storage.env|grep MINIO_ACCESS_ADRESS
⚠️ 警告
如果还可以找到文本【MINIO_ACCESS_ADRESS】说明配置文件编辑失败。
(可选)分布式数据库Cassandra
💡 提示
设备上报的遥测数据使用分布式数据库存储时,必须部署Cassandra。
编辑配置文件
💡 提示
需要将文本【集群内所有CASSANDRA节点的访问地址】替换后执行命令。
例如:192.168.1.235:9042,192.168.1.236:9042,192.168.1.237:9042
cd /_makeFile
sed -i 's/CASSANDRA_ACCESS_ADRESS/集群内所有CASSANDRA节点的访问地址/g' miscroservice_app_application_storage.env
查看结果
cat miscroservice_app_application_storage.env|grep CASSANDRA_ACCESS_ADRESS
⚠️ 警告
如果还可以找到文本【CASSANDRA_ACCESS_ADRESS】说明配置文件编辑失败。