rpki/deploy/arm64-installer/docs/operations.en.md
2026-06-29 16:47:47 +08:00

1.7 KiB

Operations Guide

Install

./install.sh

The installer is idempotent:

  • existing .env is kept;
  • existing Docker/Compose installation is reused;
  • repeated loading of packaged ours RP, Prometheus and Grafana ARM64 images is safe;
  • existing data directory is reused.

Start

./start.sh

Start without waiting for the first snapshot:

./start.sh --no-wait-first-run

Stop and Restart

./stop.sh
./restart.sh

Status Checks

./status.sh
./self-check.sh

Important checks:

  • Docker/Compose availability;
  • runtime, Prometheus and Grafana images exist;
  • HOST_DATA_DIR is writable;
  • Compose config is valid;
  • latest run status;
  • metrics, Prometheus and Grafana endpoints.

status.sh also prints:

  • periodic_snapshot_reset
  • periodic_snapshot_max_deltas

Upgrade

Extract the new package into a new directory and explicitly reuse the existing .env through the upgrade script:

./upgrade.sh --reuse-env-from /path/to/old-installer/.env

If the new package directory already has a .env, the upgrade script keeps it.

Upgrade does not delete:

  • runs/
  • logs/
  • state/rsync-mirror
  • runtime configuration referenced by .env
  • Prometheus / Grafana data

To validate periodic forced snapshot behavior, temporarily set:

PERIODIC_SNAPSHOT_RESET=1
PERIODIC_SNAPSHOT_MAX_DELTAS=2

Then confirm the latest run-meta.json contains:

snapshot_reason=periodic_snapshot_delta_limit

After validation, restore:

PERIODIC_SNAPSHOT_MAX_DELTAS=100

Cleanup

./cleanup.sh --keep-runs 100
./cleanup.sh --keep-runs 100 --execute

Cleanup is dry-run by default. Add --execute after reviewing the output.