Files
homelab-optimized/docs/admin/b2-backup-status.md
Gitea Mirror Bot 5b38f53cd9
Some checks failed
Documentation / Deploy to GitHub Pages (push) Has been cancelled
Documentation / Build Docusaurus (push) Has been cancelled
Sanitized mirror from private repository - 2026-03-21 09:31:10 UTC
2026-03-21 09:31:10 +00:00

115 lines
3.7 KiB
Markdown

# B2 Backblaze Backup Status
**Last Verified**: March 11, 2026
**B2 Endpoint**: `s3.us-west-004.backblazeb2.com`
**B2 Credentials**: `~/.b2_env` on homelab VM
---
## Bucket Summary
| Bucket | Host | Last Backup | Status |
|--------|------|-------------|--------|
| `vk-atlantis` | Atlantis (DS1823xs+) | 2026-03-11 | ✅ Healthy |
| `vk-concord-1` | Calypso (DS723+) | 2026-03-10 | ✅ Healthy |
| `vk-setillo` | Setillo (DS223j) | 2026-03-10 | ✅ Healthy |
| `vk-portainer` | Portainer backups (homelab VM) | 2026-03-10 daily | ✅ Active (encrypted .tar.gz) |
| `vk-mattermost` | Mattermost | — | ❌ Empty — not configured |
| `vk-games` | Unknown | — | Not verified |
| `vk-guava` | Unknown | — | Not verified |
| `b2-snapshots-*` | Unknown | — | Not verified |
---
## Hyper Backup Configurations (per host)
### Atlantis (DS1823xs+)
**Current Hyper Backup tasks** → bucket `vk-atlantis`:
- `/volume1/docker` — container data
- `/volume1/media` — media library
- `/volume1/photos` — photo library
- `/volume1/documents` — Paperless-NGX docs
- `/volume1/archive` — long-term archival (includes `paperless/` subfolder)
- `/volume2/` — NVMe volume data
**Recommended additions / changes:**
- ✅ Add `/volume2/photo/MobileBackup` (mobile photo backups)
- ❌ Remove `/downloads` if it's still in the task (redundant, large, rebuildable)
- Note: Paperless backup is already covered via `/volume1/archive/paperless/` (moved from `/volume2/backups/` this session)
### Calypso (DS723+)
**Current Hyper Backup tasks** → bucket `vk-concord-1`:
- `/volume1/docker` (partial — some subfolders excluded)
**Recommended additions:**
- `/docker/authentik` — SSO data and config
- `/docker/paperlessngx` — document management
- `/docker/immich` — photo library metadata
- `/docker/nginx-proxy-manager` — proxy config and SSL certs
- `/docker/headscale` — Headscale database and keys (critical!)
- `/docker/actual` — personal finance data
- `/blah/photos_backup_vish` — photo backup
### Setillo (DS223j) — Tucson, AZ
**Current Hyper Backup tasks** → bucket `vk-setillo`:
- `/volume1/backups` — backup destination
**Recommended additions:**
- `/homes/Setillo/Documents` — Edgar's documents (~114GB, Edgar.tar.gz)
- `/homes/vish/media` — vish media folder
**Recommended removals:**
- `/docker` — all containers are rebuildable, saves B2 cost
---
## Portainer Backup (vk-portainer)
Automated daily backups of all Portainer stack configurations:
- **Format**: Encrypted `.tar.gz` archives
- **Retention**: Multiple daily snapshots
- **Source**: Portainer backup API on homelab VM
- **Destination**: `vk-portainer` bucket
---
## Checking Bucket Status
```bash
# Source credentials
source ~/.b2_env
# List all buckets
aws s3 ls --endpoint-url https://s3.us-west-004.backblazeb2.com
# Check bucket contents / recent uploads
aws s3 ls s3://vk-atlantis/ --endpoint-url https://s3.us-west-004.backblazeb2.com --recursive | sort | tail -20
# Check bucket size
aws s3api list-objects-v2 --bucket vk-atlantis \
--endpoint-url https://s3.us-west-004.backblazeb2.com \
--query "sum(Contents[].Size)" --output text
```
---
## Mattermost Backup (vk-mattermost)
This bucket exists but is empty. Mattermost runs on `matrix-ubuntu` VM on Atlantis.
To configure, add a Hyper Backup task from Atlantis targeting:
- `/volume1/docker/mattermost` (config, database dumps)
Or configure a Mattermost-native backup export and push to B2 directly.
---
## Notes
- All active buckets use `us-west-004` region (Backblaze B2)
- Hyper Backup on Synology hosts handles encryption before upload
- B2 API key is stored in `~/.b2_env` and is compatible with AWS CLI S3 API
- The `sanitize.py` script redacts B2 credentials before public repo mirroring