Hallo liebes
Tagebuch Blog
Bevor ich von Intel auf neues Mainboard und Ryzen CPU + neue Platten umgestiegen bin habe ich erstmal auf Buster geupgraded.
Dazu noch Kernel aus Backports.
5.2.0-0.bpo.3-amd64 Ist zwar nicht letzte generation Ryzen, aber ich wollte sicher sein.
Dann ZFS installiert, geguckt ob sich das Modul laden liest bevor ich auf neue Hardware umgestiegen bin.
Den ZFS pool will man gerne mit id der Festplatte erstellen und nicht
/dev/sdX. Aber das ist ja heutzutage bei fstab auch nicht anders.
ll /dev/disk/by-id/ata*
Code: Alles auswählen
sudo zpool create -o ashift=12 -O mountpoint=none tank0 raidz2 ata-WDC_WD80EZAZ-11TDBA0_XXXXX ....
ashift=12 sollte ZoL gerne selber erkennen, aber ich habe es explicit nochmal angegeben. 512 vs 4k Sektoren Festplatten.
mountpoint=none ist Wichtig, komme ich gleich zu.
tank0 Names des pools. Sollte Serverubergreifent einzigartig sein habe ich mir sagen lassen. Wenn man mal exportiert und woanders importiert etc.
Dann die liste der Festplatten IDs.
Code: Alles auswählen
sudo zfs set compression=lz4 tank0
sudo zfs set compression=on tank0
sudo zfs set recordsize=1M tank0
sudo zfs set dedup=off tank0
sudo zfs set relatime=on tank0
Komprimierung immer an, ZFS findet selber raus wenn es sich nicht lohnt. Und CPU heutzutage sind recht fix.
Recordsize optimiert fuer grosse Daten. Ich habe andere Datasets mit kleinerer recordsize. Mehr dazu hier:
https://jrs-s.net/2019/04/03/on-zfs-recordsize/
Dedub will ich nicht. Braucht angeblich richtig viel ram und ich habe auch nicht so viele duplizierte Daten das es sich lohnen wuerde.
relatime=on wegen angeblich besserer Performance. Ich glaube default wird immer gespeichert wenn jemand die Datei liest? Mit relatime=on wird es aehnlich wie XFS oder EXT sein.
Code: Alles auswählen
sudo zfs create -o encryption=aes-256-gcm -o keyformat=passphrase -o keylocation=prompt -o mountpoint=/media/raid tank0/main
Oder mit keyfile:
Code: Alles auswählen
sudo zfs create -o encryption=aes-256-gcm -o keyformat=raw -o keylocation=file:///home/niemand/ich_nackt.jpeg -o mountpoint=/media/raid tank0/main
Dann habe ich ein "haupt" Dataset erstellt und ein mountpoint gegeben. Eigentlich kann man auch den ganzen pool (tank0) verschluesseln. Aber so kann ich immernoch datasets erstellen die nicht Verschluesselt sind.
Dann habe ich weitere Datasets unter dem verschluesseltem tank0/main erstellt. Die sind dann auch gleich eingebunden und verschluesselt. Erscheinen also als einfache Ordner:
So ein dataset kann ich ein anderes recordsize geben, individuel snapshot erstellen und diese dann mit zfs send offsite absichern.
6 mal 8 TB, bei raidz2 sind 31.8 TB, oder 29 TiB
Davon wird aber noch slop space abgezogen. Sowas aehnliches wie die bei Debian oft uebliche 5% root Reserve.
Am ende habe ich ~28TiB freien speicher.
df -h sagt mir 27T, kein Plan warum.
__________________________________
Noch nicht sicher warum, aber beim befuellen das ist der Pool auch gleich erstmal degraded. Da hatte ich email notification noch nicht aufgesetzt und es zufaellig mitbekommen.
Sas Kabel oder vielleicht HBA Karte. Vielleicht ein Wackel. Ist hier alles etwas provisorisch aufgebaut. HBA hat auch erst spaeter ein Lueft bekommen.
Mal sehen.
Aber resilver (rebuild des pools) ging automtisch los als ich die Festplatte an einem anderen sas Stecker angeschlossen habe.
__________________________________
Als alles rueberkopiert wurde und ich den torrent Klienten wieder angeschmissen habe stellte ich fest das einige Daten korrupt waren :0
wat.jpeg
Vorher hatte ich ein "raid' durch mergerfs. Beim kopieren auf das neue NAS habe ich aber auf die Individuellen Festplatten zugegriffen. Irgendwie war in einer Handvoll Daten der Wurm drinne. Die waren dann auf zwei Festplatten, und auf der einen davon nur so halb.
Kein plan, mergerfs wieder gemountet, davon fix rsync auf das ZFS raid. ~100Gb kopiert und alles war komplett.
_________________________________
Noch habe ich keine Hardwarebeschleunigung. Aber fix ist upstream fertig und wird sogar backportet. Yay.
_________________________________
MTA Email einrichten so das der ZFS Zed dings bums mail benutzten konnte war richtig kacke.
viewtopic.php?f=8&t=175245
Laeuft jetzt aber. Und smart kann mir auch email senden.
_________________________________
lm-sensors kann leider nicht mit neuen Ryzen boards umgehen.
Aber hier gibt es abhilfe, mal sehen ob ich dazu komme:
https://github.com/electrified/asus-wmi-sensors
Muss sagen ZFS ist nett. Einfach zu verstehen als lvm ist es alle mal.