rpki/deploy/arm64-installer/docs/README.zh-CN.md
2026-06-29 23:25:19 +08:00

3.3 KiB
Raw Permalink Blame History

ours RP ARM64 安装包使用说明

目标

本安装包用于在 linux/arm64 服务器上通过 Docker Compose 部署 ours RP并持续运行 all5 RIR 同步验证任务。

安装包内置 ours RP ARM64 runtime、Prometheus ARM64、Grafana ARM64 镜像部署时不需要现场拉取应用镜像。运行产物、状态数据库、日志、Prometheus 和 Grafana 数据均通过宿主机目录挂载保存。

快速开始

tar -xzf ours-rp-arm64-installer-*.tar.gz
cd ours-rp-arm64-installer-*

./install.sh
cp .env.example .env   # 如 install.sh 已自动创建,可直接编辑现有 .env
vim .env
./start.sh
./status.sh

默认配置:

  • RIRS=afrinic,apnic,arin,lacnic,ripe
  • MAX_RUNS=-1
  • INTERVAL_SECS=600
  • TAL_INPUT_MODE=file-live-ta
  • LIVE_TA_REFRESH_BEFORE_SNAPSHOT=1
  • PERIODIC_SNAPSHOT_RESET=0
  • PERIODIC_SNAPSHOT_MAX_DELTAS=100
  • HOST_DATA_DIR=/var/lib/ours-rp-arm64
  • SOAK_RESTART_POLICY=unless-stopped
  • MONITOR_PLATFORM=linux/arm64

首次启动语义

如果 HOST_DATA_DIR/runs 下没有成功 runstart.sh 会先启动核心 ours-rp-soak,等待第一轮 snapshot 成功后再启动 metrics、Prometheus 和 Grafana。

第一轮 snapshot 会先拉取 live TA避免 clean state 使用旧 fixture TA。

访问端口

默认端口:

  • metrics: http://<host>:9556/metrics
  • Prometheus: http://<host>:9090
  • Grafana: http://<host>:3000

Grafana 默认账号密码来自 .env

GRAFANA_ADMIN_USER=admin
GRAFANA_ADMIN_PASSWORD=admin

生产部署时应修改密码并限制外部访问。

数据目录

默认宿主机目录:

/var/lib/ours-rp-arm64/
  state/
  runs/
  logs/
  tmp/
  prometheus/
  grafana/

runs/run_XXXX/ 中包含每轮 report.jsonresult.ccrinput.cirvrps.csvvaps.csvstage-timing.json、日志和元数据。

定期 snapshot reset

新增配置:

PERIODIC_SNAPSHOT_RESET=0
PERIODIC_SNAPSHOT_MAX_DELTAS=100

语义:

  • 默认关闭,行为与旧版本一致;
  • 开启后,一次成功 snapshot 后最多连续执行 N 个成功 delta
  • 达到阈值后,下一轮强制跑 snapshot
  • 强制 snapshot 前只重置 active state/db,保留 runs/logs/state/rsync-mirror.env、Prometheus/Grafana 数据;
  • 周期计数保存在独立 lifecycle 文件 HOST_DATA_DIR/state/run-lifecycle-state.json,不依赖 runs/ 保留窗口;
  • lifecycle 文件损坏时会先备份为 run-lifecycle-state.json.corrupt.<timestamp>.<pid>,再从当前保留 run 尽力 bootstrap
  • 强制 snapshot 成功后旧 DB staging 会被删除,避免磁盘只是换目录继续增长。

可通过最新 run-meta.json 中的以下字段确认:

  • sync_mode
  • snapshot_reason
  • periodic_snapshot_delta_count
  • periodic_snapshot_forced
  • reset_db_cleanup_status

常用命令

./status.sh
./logs.sh ours-rp-soak --tail 200
./restart.sh
./stop.sh
./cleanup.sh --keep-runs 100 --execute
./uninstall.sh

如果做有限轮次验收,例如 MAX_RUNS=3,建议同时设置:

SOAK_RESTART_POLICY=no

否则 Compose 的 unless-stopped 策略会在容器正常退出后再次拉起下一轮。

uninstall.sh 默认不删除数据。只有显式执行:

./uninstall.sh --purge-data

才会删除 HOST_DATA_DIR