修改部署文档

This commit is contained in:
haotian 2026-02-25 19:21:17 +08:00
parent 317a8b1097
commit 9b3915e73d

View File

@ -1,5 +1,25 @@
# RK3588 Media Server 部署指南 # RK3588 Media Server 部署指南
## 架构说明
```
┌─────────────────┐ ┌─────────────────┐
│ Media Server │ │ RK3588 Agent │
│ (systemd) │◄────│ (systemd) │
│ 高可用独立服务 │ │ 监控/控制 │
└─────────────────┘ └─────────────────┘
│ │
▼ ▼
RTSP 输出流 Web 管理界面
HLS 输出流 http://IP:9100
```
- **Media Server**: 独立的 systemd 服务,高可用(崩溃自动重启)
- **Agent**: 独立的 systemd 服务,通过 `systemctl` 监控和控制 Media Server
- **两者可独立重启**: 重启 Agent 不会影响 Media Server
---
## 快速开始 ## 快速开始
### 1. 编译 ### 1. 编译
@ -14,29 +34,24 @@ mkdir -p build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc) make -j$(nproc)
# 编译 Agent(可选,用于 Web 管理) # 编译 Agent
cd ../agent cd ../agent
GOOS=linux GOARCH=arm64 go build -o rk3588-agent_linux_arm64 ./cmd go build -o rk3588-agent_linux_arm64 ./cmd/rk3588-agent
``` ```
### 2. 安装 ### 2. 安装
使用统一脚本安装:
```bash ```bash
cd ~/apps/OrangePi3588Media cd ~/apps/OrangePi3588Media
sudo ./scripts/manage.sh install sudo ./scripts/manage.sh install
``` ```
安装过程会提示选择**配置文件** 安装过程会提示选择**配置文件**
- **配置文件**
- `test_cam1_face_det_rtsp_server.json` - 人脸检测(推荐) - `test_cam1_face_det_rtsp_server.json` - 人脸检测(推荐)
- `sample_cam1_native_rtsp_face.json` - 完整功能 - `sample_cam1_native_rtsp_face.json` - 完整功能
- `test_cam1_face_det_recog_rtsp_server.json` - 人脸识别 - `test_cam1_face_det_recog_rtsp_server.json` - 人脸识别
- `sample_cam1.json` - 完整功能(需手动修复) - `sample_cam1.json` - 完整功能(需手动修复)
Media Server 由 Agent 统一管理,可通过 Web 界面 `http://<设备IP>:9100` 查看状态和控制服务。
### 3. 查看状态 ### 3. 查看状态
```bash ```bash
@ -47,7 +62,7 @@ sudo ./scripts/manage.sh status
- 系统运行时间 - 系统运行时间
- NPU 负载 - NPU 负载
- Media Server 状态PID、CPU/内存、端口) - Media Server 状态PID、CPU/内存、端口)
- Agent 状态(如果安装) - Agent 状态
- 最近日志 - 最近日志
### 4. 卸载 ### 4. 卸载
@ -56,22 +71,14 @@ sudo ./scripts/manage.sh status
sudo ./scripts/manage.sh uninstall sudo ./scripts/manage.sh uninstall
``` ```
卸载会:
1. 停止所有服务
2. 删除 systemd 服务文件
3. 自动备份配置文件和模型到 `/root/rk3588-backup-时间戳/`
4. 提示是否删除安装目录
--- ---
## 升级 ## 升级
升级步骤与安装相同,脚本会自动处理:
```bash ```bash
cd ~/apps/OrangePi3588Media cd ~/apps/OrangePi3588Media
# 1. 拉取最新代码(如果是 git 仓库) # 1. 拉取最新代码
git pull git pull
# 2. 重新编译 # 2. 重新编译
@ -79,7 +86,10 @@ mkdir -p build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc) make -j$(nproc)
# 3. 重新安装(会自动备份旧配置) cd ../agent
go build -o rk3588-agent_linux_arm64 ./cmd/rk3588-agent
# 3. 重新安装
cd .. cd ..
sudo ./scripts/manage.sh install sudo ./scripts/manage.sh install
``` ```
@ -88,24 +98,47 @@ sudo ./scripts/manage.sh install
## 管理命令 ## 管理命令
Agent 统一管理 Media Server使用以下命令 ### Media Server独立服务
```bash ```bash
# 启动/停止/重启 Agent同时会启动/停止 Media Server # 启动/停止/重启
sudo systemctl start media-server
sudo systemctl stop media-server
sudo systemctl restart media-server
# 查看状态
sudo systemctl status media-server
# 查看日志
sudo journalctl -u media-server -f
```
### Agent独立服务
```bash
# 启动/停止/重启(不影响 Media Server
sudo systemctl start rk3588-agent sudo systemctl start rk3588-agent
sudo systemctl stop rk3588-agent sudo systemctl stop rk3588-agent
sudo systemctl restart rk3588-agent sudo systemctl restart rk3588-agent
# 查看 Agent 状态 # 查看状态
sudo systemctl status rk3588-agent sudo systemctl status rk3588-agent
# 查看日志 # 查看日志
sudo journalctl -u rk3588-agent -f sudo journalctl -u rk3588-agent -f
```
# Web 管理界面 ### Web 管理界面
```
http://<设备IP>:9100 http://<设备IP>:9100
``` ```
功能:
- 查看 Media Server 运行状态
- 启动/停止/重启 Media Server通过 systemctl
- 查看配置信息
--- ---
## 配置修改 ## 配置修改
@ -116,44 +149,30 @@ http://<设备IP>:9100
sudo nano /opt/rk3588-media-server/etc/media-server.json sudo nano /opt/rk3588-media-server/etc/media-server.json
``` ```
常用修改: 修改后重启 Media Server
- **修改 RTSP 输入源**:找到 `input_rtsp` 节点,修改 `url` 字段
- **修改输出端口**:找到 `publish` 节点,修改 `port` 字段
修改后重启服务:
```bash ```bash
# 独立模式
sudo systemctl restart media-server sudo systemctl restart media-server
# Agent 模式
sudo systemctl restart rk3588-agent
``` ```
--- ---
## 目录结构 ## 目录结构
安装后的目录结构:
``` ```
/opt/rk3588-media-server/ /opt/rk3588-media-server/
├── bin/ ├── bin/
│ ├── media-server # 主程序 │ ├── media-server # 主程序
│ └── plugins/ # 插件目录 │ └── plugins/ # 插件
│ ├── libinput_rtsp.so
│ ├── libai_yolo.so
│ └── ...
├── lib/ # 依赖库
├── etc/ ├── etc/
│ └── media-server.json # 配置文件 │ └── media-server.json # 配置文件
├── models/ # AI 模型 ├── models/ # AI 模型
├── logs/ # 日志目录 ├── logs/ # 日志
└── web/hls/ # HLS 输出目录 └── web/hls/ # HLS 输出
/opt/rk3588-agent/ # Agent 安装目录(如果使用) /opt/rk3588-agent/
├── rk3588-agent ├── rk3588-agent # Agent 程序
└── agent.config.json └── agent.config.json # Agent 配置
``` ```
--- ---
@ -163,37 +182,28 @@ sudo systemctl restart rk3588-agent
### 服务无法启动 ### 服务无法启动
```bash ```bash
# 查看详细错误 # Media Server 错误
sudo journalctl -u media-server -n 50 sudo journalctl -u media-server -n 50
# 或
# Agent 错误
sudo journalctl -u rk3588-agent -n 50 sudo journalctl -u rk3588-agent -n 50
``` ```
### 检查 NPU 是否正常 ### 检查 NPU
```bash ```bash
# 查看 NPU 负载
cat /sys/kernel/debug/rknpu/load cat /sys/kernel/debug/rknpu/load
# 查看 NPU 驱动
ls /dev/rknpu ls /dev/rknpu
``` ```
### RTSP 流无法播放 ### RTSP 测试
```bash ```bash
# 在设备上测试播放 # 本地测试
ffplay rtsp://localhost:8555/live/cam1_face_det ffplay rtsp://localhost:8555/live/cam1_face_det
# 测试输入源 # 远程测试
ffplay rtsp://输入源IP:端口/路径 ffplay rtsp://<设备IP>:8555/live/cam1_face_det
```
### 端口占用
```bash
# 查看端口占用
sudo ss -tlnp | grep -E "(8554|8555|9000|9100)"
``` ```
--- ---
@ -202,7 +212,4 @@ sudo ss -tlnp | grep -E "(8554|8555|9000|9100)"
- **硬件**: Orange Pi 5 Plus (RK3588) - **硬件**: Orange Pi 5 Plus (RK3588)
- **系统**: Ubuntu 22.04 LTS (ARM64) - **系统**: Ubuntu 22.04 LTS (ARM64)
- **依赖**: - **依赖**: RKNN Runtime, MPP, FFmpeg
- RKNN Runtime
- MPP (Media Process Platform)
- FFmpeg (带 rkmpp 支持)