# Server B 单机服务开机自启 Runbook ## 方案 生产进程继续由各自的 systemd unit 管理,使用 `lisglosips.target` 编组整套单 B 服务。`lisglosips-start-b` 是人工启动和开机后验收脚本,不直接常驻托管业务进程。 这种方式比 `rc.local`、桌面启动项或后台 shell 脚本更适合生产环境:systemd 能分别记录日志、限制权限、处理依赖、实施失败重启,并准确显示单个服务状态。 ## 自启范围 - 基础设施:Tailscale、MySQL、Redis、PostgreSQL、Nginx。 - 通信:OpenSIPS、RTPEngine、RTPEngine Recording、Redis AUTH Proxy、Redis 热路径加载。 - 应用:API、CDR Worker、Recording Worker、Config Publisher。 - 信令与监控:HEP、HOMER、Prometheus、Grafana、Node/MySQL/PostgreSQL/Redis Exporter。 - 定时任务:每日数据备份、每 5 秒录音整理。 ## 安装 ```bash sudo /opt/lisglosips/current/infra/server-b/s58/deploy-autostart.sh ``` 安装流程会备份已有文件、安装 target 和开机检查服务、启用四个应用实例、启动整套 target,并运行 API ready、Nginx、OpenSIPS 和 preflight 检查。失败时自动撤销本次新建的 enable 链接并恢复旧文件。 ## 日常操作 ```bash sudo systemctl start lisglosips.target sudo /usr/local/sbin/lisglosips-start-b systemctl status lisglosips.target lisglosips-boot-check.service systemctl --failed ``` 不建议使用 `kill`、`nohup` 或重复启动脚本托管进程。单个服务变更仍应使用 `systemctl restart `,避免无关服务中断。 ## 验收 安装后检查 `lisglosips.target`、`lisglosips-boot-check.service`、API、CDR Worker、Recording Worker、Config Publisher 是否 enabled。首次真正重启验收应安排维护窗口,记录重启时间、所有服务状态、API ready、当前通话 MI、录音入库和配置发布结果。