第七部分:部署与运维文档

7.1 部署方案

7.1.1 软件部署架构

  • 负载均衡:Nginx(HTTPS卸载)
  • 后端服务:Spring Boot(jar包),systemd管理,3节点集群
  • 前端:Vue打包静态文件,Nginx托管
  • 数据库:MySQL主从+读写分离,InfluxDB集群
  • 消息中间件:Kafka(数据采集缓冲)
  • MQTT Broker:EMQX集群(3节点)

7.1.2 部署步骤(摘要)

  1. 安装Docker及docker-compose(或K8s)
  2. 拉取镜像:MySQL, InfluxDB, EMQX, Redis, Kafka, 后端服务镜像
  3. 配置环境变量:数据库连接、JWT密钥、MQTT地址
  4. 执行数据库初始化脚本(schema.sql,seed.sql)
  5. 启动所有容器,验证健康检查
  6. 配置Nginx反向代理与SSL证书(Let's Encrypt)
  7. 硬件设备配置:烧录固件,配置平台域名

7.1.3 硬件部署指导

  • 温湿度传感器:室内壁挂,离地1.5米,避免阳光直射
  • 控制终端:靠近被控设备,确保Wi-Fi信号强度≥-70dBm
  • 通信模块天线竖直向上,远离金属遮挡

7.2 运维手册

7.2.1 日常巡检项

  • 每日:检查服务进程、磁盘使用率、数据库连接数
  • 每周:查看错误日志,清理过期数据
  • 每月:安全补丁更新,性能容量评估

7.2.2 常见问题处理

问题现象可能原因处理步骤
设备无法接入Broker挂掉docker ps 检查EMQX,重启容器
数据显示延迟Kafka积压增加消费者实例或扩容
控制指令超时设备网络差检查设备RSSI,建议移近路由器

7.2.3 备份与恢复

  • 数据库每日全量备份脚本(mysqldump + influx backup)
  • 备份保留到OSS,保留30天
  • 恢复:停止服务 → 恢复备份 → 重启验证