新增备份监控与定时配置
This commit is contained in:
+11
-2
@@ -37,6 +37,7 @@ STORAGE_SECRET_ACCESS_KEY
|
||||
BACKEND_UID
|
||||
BACKEND_GID
|
||||
BACKUP_DIR
|
||||
BACKUP_STATUS_DIR
|
||||
BACKUP_RESTORE_DIR
|
||||
BACKUP_OSS_URI
|
||||
BACKUP_PASSPHRASE
|
||||
@@ -92,15 +93,23 @@ RAM 凭证只授予该 Bucket 的列举、读取、写入对象权限,不要
|
||||
./scripts/backup-online.sh prune
|
||||
```
|
||||
|
||||
后台“数据备份”页面只读取 `${BACKUP_STATUS_DIR}/status.json`;该目录以只读方式挂载给 backend,不包含备份载荷。首次部署后先生成状态摘要:
|
||||
|
||||
```bash
|
||||
./scripts/backup-status.sh write
|
||||
```
|
||||
|
||||
推荐 cron(以部署用户运行,并把日志写到受限目录):
|
||||
|
||||
```cron
|
||||
* * * * * cd /srv/hfb_sys && ./scripts/archive-binlog.sh archive >> /data/backups/archive-binlog.log 2>&1
|
||||
30 4 * * * cd /srv/hfb_sys && ./scripts/backup-online.sh full >> /data/backups/full-backup.log 2>&1
|
||||
# 每分钟读取后台定时配置,按需归档 binlog 和执行全量热备。
|
||||
* * * * * cd /srv/hfb_sys && ./scripts/backup-scheduler.sh >> /data/backups/backup-scheduler.log 2>&1
|
||||
15 5 * * * cd /srv/hfb_sys && ./scripts/backup-online.sh prune >> /data/backups/prune.log 2>&1
|
||||
10 5 * * 0 cd /srv/hfb_sys && ./scripts/archive-binlog.sh verify >> /data/backups/archive-verify.log 2>&1
|
||||
```
|
||||
|
||||
全量备份时间、是否启用定时任务和 binlog 间隔在后台“数据备份”页面配置;宿主机 cron 必须保留每分钟的调度器入口。不要将 Docker socket、备份目录或恢复操作暴露给 backend。
|
||||
|
||||
OSS 生命周期建议:`mysql/full/daily/` 30 天、`weekly/` 60 天、`monthly/` 365 天、`mysql/binlog/` 至少 45 天。时间点恢复窗口受最早全量备份和 binlog 保留期共同限制。
|
||||
|
||||
每周必须在隔离目录做一次恢复演练,绝不向生产容器回放:
|
||||
|
||||
@@ -87,6 +87,8 @@ services:
|
||||
TZ: Asia/Shanghai
|
||||
volumes:
|
||||
- ../backend/logs:/app/logs
|
||||
# 仅挂载备份状态摘要,后端无法读取备份文件、Docker socket 或 OSS 凭证文件。
|
||||
- ${BACKUP_STATUS_DIR:-/data/backups/status}:/var/run/hfb-backup-status:ro
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
|
||||
Reference in New Issue
Block a user