Initial notes

This commit is contained in:
Valentin Brandl 2024-03-04 15:22:06 +01:00
commit 79ace47bf1
Signed by: vbrandl
GPG Key ID: CAD4DA1A789125F9

33
README.md Normal file
View File

@ -0,0 +1,33 @@
# NAS Setup
## Hardware
- [x] RPI 4
- [ ] Optional: kleine SSD/nvme für RPI OS
- [ ] Festplatten für Daten (spinning metal/HDD)
- [ ] Case für Festplatten, Stromversorgung usw
## Software/Setup
- [ ] RPI OS (NixOS weil reproduzierbar?)
- [ ] Stromverbrauch möglichst gering (HDD nach Inaktivität stoppen)
- [ ] Wie viele Festplatten -> Welches RAID Level (am einfachsten: 2 Platten, RAID 1 -> 1:1 Kopie auf beiden Platten)
- [ ] Verschlüsselung (wie entschlüsseln? Muss ggf immer manuell sein, aber wie, wenn man nicht zuhause ist?)
- [ ] Integrity: Bei Bitrot erkennen, welche der beiden RAID Disks den fehlerfreien Stand hat und wiederherstellen
- [ ] Filesystem? ext4 wäre naiv, Next Gen FS (btrfs/zfs mit CoW, data deduplication, atomic snapshots usw bestimmt cool)
- [ ] Unterschiedliche Setups skizzieren, aufsetzen und Performance testen (hauptsächlich read/write)
- [ ] Inkrementelle Backups: Nur beim initialen Backup müssen alle Daten einmal kopiert werden. Danach sollten nur noch veränderte Daten gesynct werden, dass es schneller geht
- [ ] Wie oft Backups erstellen ("kleine Sachen" wie Gitea, mozilla sync, mailserver täglich, große Sachen wie Nextcloud wöchentlich? Hier messen, wie lange die Backups wirklich brauchen)
- [ ] Versionierte Backups, um auch ältere Stände wieder herstellen zu können (Retention Policy? Für die letzten 2 Wochen täglich, für den aktuellen Stand stündlich, für das letzte Jahr monatlich und für immer ein jährliches Backup?)
## Sicherheit und Berechtigungen
- [ ] NAS muss sich Backup vom Server holen/pullen und nicht vom Server and NAS pushen. Sonst könnte ein potentiell kompromittierter Server ggf alte Backups löschen.
- [ ] Append Only Backups. Alte Backups und Daten dürfen nicht ohne weiteres gelöscht oder überschrieben werden können.
## Andere TODOs
- [ ] Server aufräumen, ggf sogar mal wieder komplett sauber und neu aufsetzen