101 lines
1.6 KiB
Markdown
101 lines
1.6 KiB
Markdown
# 运维手册
|
||
|
||
## 安装
|
||
|
||
```bash
|
||
./install.sh
|
||
```
|
||
|
||
安装脚本是幂等的:
|
||
|
||
- 已有 `.env` 不覆盖;
|
||
- 已安装 Docker/Compose 则跳过;
|
||
- 包内 ours RP、Prometheus、Grafana ARM64 镜像重复加载是安全的;
|
||
- 数据目录已存在则复用。
|
||
|
||
## 启动
|
||
|
||
```bash
|
||
./start.sh
|
||
```
|
||
|
||
如需后台启动后不等待首轮 snapshot:
|
||
|
||
```bash
|
||
./start.sh --no-wait-first-run
|
||
```
|
||
|
||
## 停止和重启
|
||
|
||
```bash
|
||
./stop.sh
|
||
./restart.sh
|
||
```
|
||
|
||
## 状态检查
|
||
|
||
```bash
|
||
./status.sh
|
||
./self-check.sh
|
||
```
|
||
|
||
重点检查项:
|
||
|
||
- Docker/Compose 可用;
|
||
- runtime、Prometheus、Grafana 镜像存在;
|
||
- `HOST_DATA_DIR` 可写;
|
||
- Compose 配置合法;
|
||
- 最新 run 状态;
|
||
- metrics、Prometheus、Grafana endpoint。
|
||
|
||
`status.sh` 还会显示:
|
||
|
||
- `periodic_snapshot_reset`
|
||
- `periodic_snapshot_max_deltas`
|
||
|
||
## 升级
|
||
|
||
把新安装包解压到新目录后,推荐通过升级脚本显式复用旧 `.env`:
|
||
|
||
```bash
|
||
./upgrade.sh --reuse-env-from /path/to/old-installer/.env
|
||
```
|
||
|
||
如果新目录已经存在 `.env`,升级脚本会保留它,不覆盖。
|
||
|
||
升级不会删除以下数据:
|
||
|
||
- `runs/`
|
||
- `logs/`
|
||
- `state/rsync-mirror`
|
||
- `.env` 对应的运行配置
|
||
- Prometheus / Grafana 数据
|
||
|
||
验证定期 forced snapshot 时,可临时设置:
|
||
|
||
```bash
|
||
PERIODIC_SNAPSHOT_RESET=1
|
||
PERIODIC_SNAPSHOT_MAX_DELTAS=2
|
||
```
|
||
|
||
然后检查最新 `run-meta.json` 应出现:
|
||
|
||
```bash
|
||
snapshot_reason=periodic_snapshot_delta_limit
|
||
```
|
||
|
||
验证完成后恢复:
|
||
|
||
```bash
|
||
PERIODIC_SNAPSHOT_MAX_DELTAS=100
|
||
```
|
||
|
||
## 清理
|
||
|
||
```bash
|
||
./cleanup.sh --keep-runs 100
|
||
./cleanup.sh --keep-runs 100 --execute
|
||
```
|
||
|
||
默认 dry-run,确认后加 `--execute`。
|