跳到主要内容

RustPBX 操作手册

本章节面向日常运维/值班同学,聚焦“如何保持系统稳定运行”。如需了解功能原理,请参考《概览》《基础配置》《路由、Trunk 与计费》等章节。

1. 日常巡检

  • 早班巡检:登录控制台首页查看节点健康、并发呼叫、失败率,如异常立即进入 Diagnostics。
  • 日志核查:关注 callrecordproxyconsole 三类日志;建议通过集中化日志平台设置关键字告警。
  • 容量余量:记录上一日的峰值 CPS、并发数,与可承载上限对比,作为扩容依据。
  • 告警处理:建立告警分级 SOP(P1/P2/P3),保证 5 分钟内响应。

(此处可插入“运维仪表盘”截图)

2. 变更与发布流程

  1. 配置准备:在 Git 仓库(config/config.toml)创建分支,提交 MR/PR,并触发自动化语法校验。
  2. 灰度策略
    • 路由变更:先在低权重 DID 上验证;
    • 分机/队列:利用测试账号演练;
    • 计费模板:使用沙箱号段对比旧模板。
  3. 执行 Reload:严格按照《诊断工具》章节进行 Preflight 检查,再在控制台或 API 执行 Reload。
  4. 回滚:如出现异常,立即恢复上个 Git Tag,并重新 Reload;在 Diagnostics → Routing/Trunks 再次验证,直至测试结果与变更前一致。

3. 运行中常用操作

  • 紧急封禁:通过 config/acl/ 或控制台快速封 IP/分机,防止恶意呼叫;操作完成后记得 Reload ACL。
  • 限流/限额:借助频率限制或队列容量控制按需降载。
  • 录音调取:在 Call Records 中按 call_id 搜索,导出录音与信令,满足合规或客户投诉调查。
  • 批量任务:可使用自研脚本调用 API,批量重置分机密码、同步计费模板等。

4. 备份与合规

  • 配置:将 config/config.toml 纳入 Git,搭配 CI 做格式与安全检查。
  • 数据库:若使用 PostgreSQL,建议每日逻辑备份 + 每周全量快照;SQLite 部署需确保文件在可靠存储上。
  • 录音/CDR:按法规保留 180/360 天,推荐同步到对象存储并建立生命周期策略。
  • 审计:记录所有 Reload/变更操作,可在控制台或 Git commit 中追溯责任人。

5. 自动化与可观测性

  • 健康探针:通过 GET /health(由 handler::ami 提供)监控数据库、SIP 线程与配置加载状态,可直接接入负载均衡或 Prometheus blackbox。
  • 日志/Tracing:利用 log_levellog_file 控制 tracing 输出,集中采集 access.logcallrecord 事件,结合告警条件触发 NOC。
  • 合成监控:使用 examples/perfcli.rs 或第三方拨测定时呼叫,验证真实业务路径,并将结果与 Diagnostics Evaluate 输出对比。
  • 告警联动:在 ChatOps/NOC 中订阅 /health、日志关键字及数据库指标,确保 P1/P2 告警自动转派。

6. 操作安全红线

  • 禁止在生产环境直接修改编译后的二进制或数据库结构,所有变更必须通过 Git 交付。
  • Reload 前必须有两人复核关键配置(Trunk、Routing、计费)。
  • 非工作时段的重大变更需提前报备并预留回滚窗口。

(此处可插入“操作流程”或“值班清单”截图)

遵循以上操作准则,可确保 RustPBX 在 7x24 的语音业务中保持稳定与可预测性。