Datastore auf BTRFS so viel schneller als auf ZFS?

JensF

Well-Known Member
Feb 14, 2020
125
31
48
Kurz zum Setup: Alter Server mit 2x Xeon X5570 CPUs (Quad-Cores mit HT aktiviert), 32gb RAM, 6x 146GB SAS 10k HDDs an einen IBM M1115 auf HBA geflashed (LSA2008), 1x SATA-SDD für den PBS (billige Sandisk Consumer)
Backup-Speed mit ca. 130MB/sek (CPU ohne AES, daher TLS-Speed unterirdisch) für meine Zwecke aber okay. CPU läuft beim Backup gerade mal auf 30% bis 50% Last. Wenn jemand weiß, wie man beim PBS-Backup mehr CPU-Kerne zuweisen kann, oder TLS deaktivieren, dann immer raus damit.
Die 6 SAS-HDDs hatte ich eine Weile im einem ZFS-RAID0 laufen und einen Teil der SSD als specialdevice für die Metadaten.
Storage ist also um die 850GB groß und reicht für 3 Backups.
Garbage Collect dauerte immer etwas mehr als 3 Minuten, ein full verify nach den Backups knapp 1:50h. Ohne specialdevice dauerte GC um die 25 Minuten.
Nun hab ich zu Testzwecken aus den ZFS-RAID0 ein BTRFS-RAID0 gemacht und den Datastore mit den gleichen Einstellungen wieder angelegt und eine Woche laufen lassen.
Das Backup läuft immer noch nicht schneller (was ja auch logisch ist), aber der GC und verfy sind einiges schneller!
GC ist jetzt in 12 Sekunden fertig. Ein full verify nach dem Backup dauert keine 30 Minuten.
Wohl gemerkt bei der gleichen Hardware! Da wurde nichts verändert. Klingt für mich fast zu gut um wahr zu sein.
Hab noch keinen Restore der Daten seit der Umstellung durchgeführt. Dazu fehlt mir etwas die Zeit. Wird am Wochenende nachgeholt.
Wie sind Eure Erfahrungen mit BTRFS?

Nachtrag zum RAID0: Ja ich weiß, wenn eine HDD crashed ist alles weg. Ist aber kein Problem. Da laufen auch noch Backups auf ein NAS und ein RDX (da hat der PBS nix mit zu tun). Daher kein Problem, wenn da mal was kaputt geht. Alles dreifach gesichert.
 
Last edited:
Ja, ZFS ist da etwas langsamer.
ZFS hat dafür mehr Features. In deinem Setup kannst du das ruhig so laufen lassen. Bei Raid0 macht BTRFS eh kein Bit Rot Detection, bei ZFS weiß ich das nicht. BTRFS funktioniert auch gut im Raid1, nur Raid5 und 6 sind bei BTRFS noch mit einigen Bugs behaftet. Dann lieber RaidZ.
 
Etwas langsamer? Ein GC auf ZFS 25-30 Minuten. Auf BTRFS 12 Sekunden!
Man sieht schön im Task dass er auch was macht. Je GC fliegen 55-60 GB an Daten weg.
 
Hat er bei beiden GC, gleich viel gelöscht? Wenn ein GC bei ZFS soooo lange braucht, werden die Metadaten extrem langsam verarbeitet. War das zufällig, als die Consumer SSD als Special Device drin war? Die sind bei writes schnell langsamer als HDDs. Wenn Special Device, dann eine schnelle SAS oder besser NVMe SSD.
 
  • Like
Reactions: news
Nein, das war bevor ich die billig-SSD als Special dazunahm. Mit SSD waren es 3 Minuten.
Daher der Vergleich ohne SSD. Bei BTRFS ist ja auch keine SSD als "Special" dabei.
 
Nein, das war bevor ich die billig-SSD als Special dazunahm. Mit SSD waren es 3 Minuten.
Daher der Vergleich ohne SSD. Bei BTRFS ist ja auch keine SSD als "Special" dabei.
BTRFS funktioniert auch ganz anders und bringt auch kein Volume Manager oder Diskpooling mit. Das ZFS Dateiystem ist ja nur noch der letzte Teil vom großen Featureset. Im Serverbereich und wenn du Diskpooling betreiben möchtest, ist ZFS die richtige Wahl. Beim Homelab kommst du gut mit BTRFS zurecht. Ich kenne auch einige kleine PBS mit XFS, die gut laufen, aber mit ZFS unbenutzbar wären.
 
Hab ganz vergessen, hier nochmal upzudaten. Restores liefen ohne Probleme und es sind tatsächlich auch Daten im Backup!
Den PBS lass ich jetzt erstmal so laufen und kann jeden mit normalen HDDs für den PBS nur empfehlen, das auch mal zu testen.
Nächster Test: Mein RDX-Laufwerk umformatieren und das ganze an einen zweiten PBS nochmal neu aufsetzen.
Mit ZFS, XFS oder EXT4 war die Geschwindigkeit des RDX so unterirdisch, dass es nicht praktikabel war. Klar kann man 6x 10k SAS-HDDs im Raid0 nicht mit einer einzelnen 5.4k RDX-HDD vergleichen, aber so ein Test bringt Gewissheit.
 
Ich denke USB3 ist hier nicht der "Bremser". Die HDDs im Cartridge kann nicht mehr wie 130 MB/s, bei einen kontinuierlichen Datenstrom wie bei großen Dateien. Was ja für unsere Zwecke auch reicht. Bei den kleinen Chunks vom PBS sieht das wieder ganz anders aus. Zumindest mit ZFS, XFS und EXT4. Da wären RDX-SSDs natürlich wieder besser.
 
Je nachdem warum du RDX nutzen möchtest ist der Ansatz eventuell nicht optimal. Für Archivierung ist RDX oder Tape eine Lösung, für Backup schon weniger, da dir das Medium allein nichts bringt und du den Server eh brauchst für den Restore. Ich halte es mit der 3-2-1 Regel so, dass der dritte oft auch ein PBS ist, der eingehend die Firewall dicht hat und sich per Pull die Backups holt. Wer auf Dienstleister wie Tuxis keine Lust hat, kann sich ja auch einen kleinen Server mieten. Dann hat man seine Backups offsite und selbst unter Kontrolle.
 
In ZFS war immer relatime eingestellt und der BTRFS mount point steht auch auf relatime.
 
Last edited:
  • Like
Reactions: JensF and Falk R.
2x Xeon X5570 CPUs (Quad-Cores mit HT aktiviert), [... ] CPU ohne AES, daher TLS-Speed unterirdisch
Ich habe auch noch alte Hardware aus der Generation und die X56er Reihe hat schon AES, also wenn du da ein paar Euro ausgeben möchtest hast du direkt AES dabei und auch gerne einen 6-Kerner.
 
Unser tägliches Backup dauert gerade mal 16 Minuten und in das alte Schätzchen wird nichts mehr investiert. Aber trotzdem danke. :)
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!