blumeops/docs/reference/storage/backups.md
Erich Blume ce1f696bd8 Add Reference section with 24 technical reference cards
Phase 2 of documentation restructuring. Creates docs/reference/ with:

Services (16):
- alloy, argocd, borgmatic, 1password, forgejo, grafana
- jellyfin, kiwix, loki, miniflux, navidrome, postgresql
- prometheus, teslamate, transmission, zot

Infrastructure (3):
- hosts - Device inventory
- tailscale - ACLs, groups, tags
- routing - DNS domains and port mappings

Kubernetes (2):
- cluster - Minikube specs
- apps - ArgoCD application registry

Storage (2):
- sifaka - Synology NAS configuration
- backups - Backup policy

All cards use wiki-links for cross-referencing and include YAML
frontmatter with title and tags for Quartz.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 13:22:19 -08:00

84 lines
2 KiB
Markdown

---
title: Backup Policy
tags:
- storage
- backup
---
# Backup Policy
Daily automated backups from [[infrastructure/hosts\|Indri]] to [[storage/sifaka\|Sifaka]] NAS.
## Schedule
| Time | Frequency | System |
|------|-----------|--------|
| 2:00 AM | Daily | [[services/borgmatic\|Borgmatic]] |
## What Gets Backed Up
### Directories
| Path | Description | Priority |
|------|-------------|----------|
| `~/code/personal/zk` | Zettelkasten notes | Critical |
| `/opt/homebrew/var/forgejo` | Git repositories | Critical |
| `~/.config/borgmatic` | Backup config | High |
| `~/Documents` | Personal documents | High |
| `~/Pictures` | Photos | Medium |
### Databases
| Database | Host | Method |
|----------|------|--------|
| miniflux | [[services/postgresql\|pg.ops.eblu.me]] | pg_dump stream |
| teslamate | [[services/postgresql\|pg.ops.eblu.me]] | pg_dump stream |
## What Is NOT Backed Up
| Data | Reason |
|------|--------|
| ZIM archives (`~/transmission/`) | Re-downloadable via torrent |
| Prometheus metrics | Ephemeral, in k8s PVC |
| Loki logs | Ephemeral, in k8s PVC |
| devpi cache | Re-fetchable from PyPI |
## Retention Policy
| Period | Retention |
|--------|-----------|
| Daily | 7 backups |
| Monthly | 12 backups |
| Yearly | 1000 backups |
## Backup Target
Repository: `/Volumes/backups/borg/` on [[storage/sifaka\|Sifaka]]
## Monitoring
Metrics exposed to [[services/prometheus\|Prometheus]]:
- `borgmatic_up` - Repository accessible
- `borgmatic_last_archive_timestamp` - Last backup time
- `borgmatic_repo_deduplicated_size_bytes` - Disk usage
Dashboard: "Borgmatic Backups" in [[services/grafana\|Grafana]]
## Recovery
```bash
# List archives
ssh indri 'mise x -- borgmatic list'
# Extract specific path from latest
ssh indri 'mise x -- borgmatic extract --archive latest --path /some/path'
# Check repository health
ssh indri 'mise x -- borgmatic check'
```
## Related
- [[services/borgmatic\|Borgmatic]] - Backup system details
- [[storage/sifaka\|Sifaka]] - Backup storage
- [[services/postgresql\|PostgreSQL]] - Database backups