[Sammelthread] ZFS Stammtisch

@gea Leider ist mein Mainboard eine kleine Prinzessin die ihren eigenen Kopf hat, ich bekomme den DOS-USB-Stick nicht gebootet, an einem älteren Notebook hat es super funktioniert

@asche77 Ich habe mit geparted auf der Konsole den hdparm-Befehl ausgeführt, leider ist die Einstellung nicht permanent.
Laut https://www.thomas-krenn.com/de/wiki/SSD_Over-Provisioning_mit_hdparm soll libata.ignore_hpa auf 0 (Kernel/Modul) gesetzt werden.

Ich verwende aber kein Linux. Also werde ich eine Partition/Slice anlegen und nicht verwenden. Das müsste den selben Effekt haben. Hatte gea nicht auf anandtech.com verlinkt wegen Overprovisioning? (war interessant :-)

@asche77 Du hast mich ertappt, die SAS-HDD waren beim Server schon dabei. Er wurde aus verschiedenen Gründen bisher nicht genutzt, jetzt wird es langsam Zeit ihn einzusetzen.
Beitrag automatisch zusammengeführt:

btw, der DL360G9 hat 4 Gigabit-Nic, wenn ich Link Aggregation mache, komme ich auf 4x 1 Gb. Imho reichen die SAS-HDD aus (hoffentlich)
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Große, sequentiell gelesene Files können auf HDD. Alles was Random I/O ist (Datenbanken und -dateien, viel gelesene geschriebene kleine Dateien (auch von Applikationen) ) gehört heute nur noch auf SSD, nicht nur System-Images von VMs.
Sprich wenn die FiBu ständig Dateien schreibt und liest, gehören diese Dateien ebenso auf SSD und haben auf HDD performancetechnisch nichts mehr verloren.

- Ferner: Dir ist hoffentlich klar, dass Link-Aggregation nicht funktioniert, wenn nicht alle Beteiligten (Server, Client, Switches) das können. Einem einzelnen Client hilft das gar nix.
- Für Random I/O und kleine Files wirst Du mit HDDs gerademal wenige MB/s pro Client bekommen.
 
Zuletzt bearbeitet:
Produktiv-System: der HP DL360G9 wird auf einen TP-LINK T1600G-52PS geschaltet (wahrscheinlich mit 2x 1Gb), die komplette Verkabelung in der Firma ist auf 1 Gb (leider noch mit ein paar 100Mb, wegen defekter Kabel in der Wand). Der Workflow ist normale Bürotätigkeit, kein Multimedia oder große Datenbanken (bis auf die 3 FiBu/Lohn-Plätze, nur die FiBu läuft auf einem HPDL360G8 mit WinSRV2012Ess). Momentan läuft ein ML110G5 mit 4x WD-Black 250G auf einem puren FreeBSD-System mit Samba, es hat sich noch Keiner beschwert wegen dem Durchsatz.

@gea: Der Fehler ist immer vor dem Monitor :-), nach umstellen auf CSM läuft jetzt der 1. Test mit hdat auf einem FreeDOS. Das Programm hat die M.2, die SATA und sogar die NVMe erkannt. HBA ist nach dem Löschen der SSD´s erfolgreich eingerichtet (muss mich nur noch mit der Page-Size bezüglich der Sektorgrenzen beschäftigen, mit HBA 25% hat es erst mal funktioniert)

btw, wie macht Ihr es mit den Home-User-Verzeichnissen, legt Ihr pro User ein Dataset fest oder ein Dataset für alle User (immer unter dem Gesichtspunkt der Sicherheit/Datenschutz)?
 
Zuletzt bearbeitet:
btw, wie macht Ihr es mit den Home-User-Verzeichnissen, legt Ihr pro User ein Dataset fest oder ein Dataset für alle User (immer unter dem Gesichtspunkt der Sicherheit/Datenschutz)?
Mein Ansatz
Wenn man mit einem eigenen Key je User/Gruppe verschlüsseln möchte geht das technisch nur mit je einem Dateisystem. Auch Quota und Reservation arbeiten je Dateisystem. Wenn das kein Thema ist, alles so einfach wie möglich halten, also nur ein allgemeines Dateisystem je Share wie Medien, Familie, Buchhaltung, Forschung etc. Datensicherheit erfolgt im Wesentlichen über Snaps auf das Dateisystem (z.B. aktuelle Stunde, 4 x alle 15 Min, aktueller Tag, 24x stündlich, akuelle Woche, 7x täglich, etc). Auf diesem Share dann normale Ordner je Jahr, User oder Bereich anlegen und mit Datei-ACL auf Gruppen oder User abschotten.

Berücksichtigen sollte man das Backupkonzept. Üblicherweise nutzt man da ZFS Replikation. Das syncronisiert Dateisysteme auch mit offenen Dateien auch bis Petabyte unter Hochlast mit min 1 Min Delay. Man kann den ganzen Pool recursiv sichern. Ich mache immer eine Replikation je Dateisystem. Ist erheblich flexibler und bei Problemen hat man nicht die riesigen Ersttransfers.
 
Zuletzt bearbeitet:
Liebe Forumskollegen,

da ich hier ab und zu ma quer lese... habe ich mal ein paar Fragen zu meinen Gedanken... 🙈

Kurz: ich bin mit Linux bisher nicht sehr bewandert, ich habe ein Synology NAS (DS3617xs+Expansion Unit) und hatte geplant, hier mal ein Upgrade durchzuführen, Hauptgründe: Sicherheit (Dateisystem), Encryption (Performance) und Geschwindigkeit im 10gb Netz - hier ist beim BTRFS mit der Encryption leider der Speed auf ~250MB/Sek gedeckelt...

Ziel: 10-25GB LAN mit entsprechender Auslastung bei Sequenziellen Lese/Schreibvorgängen.

Das neue System soll in ein 24HDD Rack-Case verfrachtet werden, ich dachte an einen neuen Intel Xeon E-2378 8Core/16Thread mit 128GB ECC RAM. Als Filesystem für 24x 8TB Seagate EXOS HDD sollte ein ZFS zum Einsatz kommen (ZFS Raid-Z3? oder alternativen? Aktuell läuft das klassisch als 2x RAID10 -> wir wären die Rebuildzeiten im Notfall? Kann ZFS auch "RAID10"?) Da ein RAID Controller ja keinen Sinn macht, wird wohl ein Broadcom 24 Port HBA zum Einsatz kommen um die Platten 1zu1 durch zu schleifen. Das System darf gerne auf eine andere Platte (Intel Optane? NVMe/PCIe Karte?).

Welches OS macht hier jetzt Sinn? TrueNAS? OmniOS? Irgendwas mit Solaris?
Kriege ich es überhaupt hin, die 10GB LAN auszureizen (Daten verschlüsselt) oder ist hier ZFS der Falsche Ansatz? Die Shares sollen zu 100% SMB werden, da nur Windows Maschinen darauf zugreifen sollen.

Und bevor ich hier weiter Plane (Geld/Hardware) würde ich gern mal von den Profis wissen: macht das überhaupt so Sinn, was ich mir da vorstelle? Bzw. habe ich dann auch die von mir erwartete Performance? Gäbe es Alternativen?

Vielen Dank schon mal im Voraus :)
 
(ZFS Raid-Z3? oder alternativen? Aktuell läuft das klassisch als 2x RAID10 -> wir wären die Rebuildzeiten im Notfall? Kann ZFS auch "RAID10"?
Bei 24 Platten würde man auf jeden Fall mehrere vdevs anlegen - also ähnlich wie RAID x0. Vorschlag: 3x8 oder 4x6, daher 3-4x RAIDZ2 vdev -- das ähnelt RAID60. Mehr vdevs = mehr IOPS = mehr parallele Zugriffe und "Schwuppdizität".

Das System darf gerne auf eine andere Platte (Intel Optane? NVMe/PCIe Karte?).
Völliger overkill. Das OmniOS selbst (auch so gut wie jedes andere NAS-System) bootet und schreibt dann meistens nur noch logs auf die Platte. Da tut es eine einfache, kleine, billige SATA SSD.

Welches OS macht hier jetzt Sinn? TrueNAS? OmniOS? Irgendwas mit Solaris?
Was Dir von der Bedienung am besten zusagt. TrueNAS = nette Oberfläche, aber "fett" (viel RAM), OmniOS = Kommandozeile oder napp-it, dafür "schlank". Solaris = keine updates ohne Zahlung.

Kriege ich es überhaupt hin, die 10GB LAN auszureizen (Daten verschlüsselt) oder ist hier ZFS der Falsche Ansatz? Die Shares sollen zu 100% SMB werden, da nur Windows Maschinen darauf zugreifen sollen.
- CPU mit hoher single core performance.
- viel RAM. Soviel wie reinpasst. (32GB aufwärts)
- Vermutlich ist es für 10G hilfreich, zwei (enterprise) NVME SSDs (als mirror = ähnlich RAID1) als special vdev für kleine Dateien und Metadaten dem pool hinzuzufügen.
- Cache SSD lohnt allermeistens auch nicht -- special vdev bringt mehr.
- SLOG braucht es bei SMB nicht.
- Betriebssystem muss vermutlich etwas getuned werden.
- Im Übrigen müssen andere beisteuern die 10G betreiben.

Und bevor ich hier weiter Plane (Geld/Hardware) würde ich gern mal von den Profis wissen: macht das überhaupt so Sinn, was ich mir da vorstelle? Bzw. habe ich dann auch die von mir erwartete Performance? Gäbe es Alternativen?
Lies mal etwas im "10G" thread.
 
10g Performance von den Clients aus kommt an, das ist das kleinste Problem 😊 geht mir hier wirklich nur um den Filer, aber danke schonmal für den Input!. Melde mich morgen wieder 👍
 
ZFS Verschlüssellung arbeitet nicht ganz so schnell wie Verschlüssellung direkt zur Festplatte. Dafür kann man je Dateisystem einen eigenen Schlüssel haben. Mann muss also nur die Dateisysteme aufmachen die man gerade benötigt. Auch kann man ein verschlüsseltes Dateisystem "Raw, ohne vorherige Entschlüssellung" backuppen. Schlüssel kann man (napp-it) per Eingabe, Schlüssel auf Platte (USB Stick, iSCSI), webbasierter Keyserver oder SMB bereitstellen. Auf Wunsch gesplittet auf zwei Dateien/Keyserver mit auto-unlock beim Booten.

10G verschlüsselt geht mit potentem Server problemlos sofern man kein sync verschlüsselt braucht (Schutz des RAM-Schreibcaches). Da fallen ganz kleine Datenpackete an die sich ganz schlecht (langsam) verschlüsseln lassen.

vgl https://napp-it.org/doc/downloads/epyc_performance.pdf
 
Zuletzt bearbeitet:
eine Epyc CPU wäre leider finanziell ein wenig Overkill :) ich habe keinen akuten Zeitdruck, evt. warte ich noch die Saphirre Rapids Gen von Intel ab.
Was ich bisher gelesen hab: mehr Power pro CPU Kern ist besser als mehrere CPU Kerne, korrekt? Also die Singlecore Leistung zählt hier hauptsächlich? Kann ZFS die AES-NI Features der CPUs nutzen?

Und was @asche77 schreibt: ich baue mir quasi in dem Setup 4x "RAID6" (RaidZ2) vdev mit jeweils 6 Platten, habe dann die Kapazität von deren 4 (anstatt 3 wie im RAID10 aktuell) und lege über diese 4 vdev einen "Pool" (Quasi wie ein RAID60), sodass es als eine große Disk angesprochen wird? Wie bindet man dann in den Pool diese "special" vdev mit dem Mirror ein? Schreibt das System dann quasi alle Daten erst auf die SSDs und schiebt die danach in den großen Pool oder wie funktioniert das?

Und laut dem PDF wären das in meinem Anwendungsfall die Werte von async/enc, wenn ich slog nicht brauche?
 
Ich nutze meine Systeme als All in One (ESXi mit virtualisierter Storage VM). Da machen viele Cores Sinn. Für ein Barbone Setup nicht notwendig. Ich habe Tests mit 8 Cores statt 16 gemacht, Performance war ziemlich identisch.

AES wird unterstützt

Pool Layout
Man legt einen neuen Pool an, z.B. mit einem Z2 aus 6 Platten. Diesen Pool kann man um weitere vdevs erweitern, also ein oder mehrere weitere Z2, ein Slog oder L2Arc oder ein special vdev (immer Mirror machen) um darauf Metadaten, small io, einzelne Dateisysteme oder dedup Daten abzulegen.
 
dann habe ich denke ich erstmal soweit alle Infos, wenn das Projekt dann 2022 startet und ich die entsprechende Hardware zur Verfügung habe (scheitert aktuell an den CPUs/Board/RAM) und ich noch Fragen haben sollte melde ich mich wieder (y) Vielen Dank!
 
Bevor Du dann die "falschen" SSD (SATA/nvme) kaufst, besser nochmal fragen hier. Denn die sollten möglichst PLP (Power loss protection) haben.
 
ja, soweit war ich schon :-) Danke!
 
Würde der Ansatz mit ZFS und all seinen Vorteilen gehen, angenommen mit napp-it direkt auf dem Blech?

Ich finde die Idee irgendwie witzig mit den USB Karten. Genau das Bundle mit dem Board habe ich noch hier liegen btw.

 
Eh nein, das ist Pfusch hoch 10.
Niemand moechte sein Storage am USB Port haengen haben.
 
Wobei meine an eSata hängen. Immer noch. 96TB zur Zeit. Und das nach 10 Jahren. Man stelle sich das vor. Hat sich mehr als gerechnet 8-)

Ich habe letztens 2TB Platten aus der Zeit von dem Foto ausgetauscht, die hatten 7 Jahre Uptime auf dem Buckel Und zig tausende Parkzyklen.
 
Zuletzt bearbeitet:
So, habe jetzt den Dell H330 (LSI 3008) bekommen und probegesteckt.

Habe gerade im Bios des Controllers gesehen, dass man diesen von RAID auf HBA umstellen kann.
Muss man jetzt trotzdem noch auf die "eigene" HBA IT Firmware flashen (TrueNas)?

Danke!

LG
 
Muss man jetzt trotzdem noch auf die "eigene" HBA IT Firmware flashen (TrueNas)?
Keine Ahnung; ich kenne nur das hier, was flashen jdfs nahelegt:

 
Keine Ahnung; ich kenne nur das hier, was flashen jdfs nahelegt:



Danke!

Den Beitrag hab ich in der Zwischenzeit auch gefunden.

Puh, Flash mit meinem Gigabyte-Board war eine Aufgabe - Dos ging nicht, EFI war nötig ...


Aber, jetzt läuft er als HBA330!


LG
 
Wahrscheinlich kein (reines) Napp-IT Problem, aber ich komm nicht auf die Lösung.

Welchen Haken hab ich falsch gesetzt, wenn ich beim verschieben auf einem Netzlaufwerk die Berechtigungen mit verschiebe? Folgendes Problem:

Ich hab in der Vergangenheit auf einem Windows 10-Client meine Downloads durchgeführt und erstmal auf einer lokalen Partition gespeichert. Anschließend hab ich sie auf ein Netzlaufwerk verschoben, welches statisch eingebunden war.

Seit kurzem führe ich auf meinem AIO-Rechner (ESXi, Napp-IT, ihr wisst schon...) in einer Ubuntu 20.0.4 LTS aus unterschiedlichen Gründen (Sicherheit, Lizenzen, weg von Windows,..) meine Downloads aus. In dem Ubuntu hab ich über /etc/fstab das Netzlaufwerk dauerhaft gemountet (//server/share /mnt/share cifs credentials=/home/user/.cifscredentials 0 0).

Die Downloads werden nach //server/share/downloads/unsortiert/* gespeichert. Auf diesen Ordner hat nur Ubuntu und ein Client (aktuell noch Win10) Zugriff. Wenn die Downloads durch sind, sortiere ich sie mit dem Win10-Client weg nach //server/share/sortiert/*. Auf diesen Ordner haben wiederum mehrere Gruppen Zugriff.

Mein Problem: Die Berechtigungen von //server/share/downloads/unsortiert/* werden an von den neuen Downloads / den Unterordner geerbt und wenn ich die Daten nach //server/share/sortiert/* verschiebe, behalten die Ordner die Berechtigungen die sie vom unsortiert-Ordner geerbt haben. Ich muss dann erstmal die Rechte von //server/share/sortiert/ an die darin liegenden Dateien durchvererben oder händisch die Rechte anpassen, damit die Gruppen an die Dateien kommen.
 
Zuletzt bearbeitet:
Edit: Hab noch ein "Problem" was mich jetzt schon Stunden gekostet hat. Für heut geb ich auf und geh ins Bett.

Betrifft denk ich direkt Napp-IT und ich glaub ja bald an einen Bug.

Ich hab mehrere ZFS-Filesystems, alle verschlüsselt, alle auf dem selben Pool.

Ich bekomm es auf dem älteren ZFS-FS nicht hin, in der Freigabe nur die Ordner freizugeben/auflisten zu lassen, die gesehen werden sollen.
Bei einem jüngeren ZFS-FS was ich als Test angelegt hab, klappt das aber ohne Probleme.

Beide ZFS-Filesystems haben bei den SMB-ACL everbody@ drin stehen mit identischer Berechtigung. Bei den Folder-ACLs jeweils root und ein oder zwei Gruppen die da was sehen sollen.

Beide Shares sind identisch berechtigt.

Woran kann das liegen? Ich find keinen Unterschied in den Settings....
 
Ich werfe Mal das Stichwort "Access Based Enumeration (ABE)" in den Raum. Viel mehr als das kann ich aber nicht beitragen.
 
Über ABE bin durch deine Hinweis gerade gestolpert. Das Filesystem welches Ordner ausblenden kann, hat tatsächlich im Property sharesmb das Value abe=true drin stehen.

Wo aktiviere ich das?
 
Zuletzt bearbeitet:
Über ABE bin durch deine Hinweis gerade gestolpert. Das Filesystem welches Ordner ausblenden kann, hat tatsächlich im Property sharesmb das Value abe=true drin stehen.

Wo aktiviere ich das?

Das kann mein beim Freigeben eines Dateisystems ein/ausschalten
 
Ja, tatsache. Das hab ich bisher natürlich nicht gemacht. Ich hab aber festgestellt, dass ABE bei verschlüsselten Laufwerken nach dem reboot + unlock scheinbar wieder verworfen wird? Zumindest laut Webinterface taucht das ,a nicht mehr auf nach dem unlock. Bei unverschlüsselten Dateisystemen bleibt das ,a nach dem reboot erhalten.

Ich hab gerade mal eine Mail an support@napp-it.org geschickt, weil ich noch ein anderes Problem hab, was (ebenfalls) nach Bug ausschaut.
 
Ich habe die Mail gerade beantwortet. Ist aber eventuell für alle interessant

1. ABE bei unlock wird aktuell nicht beachtet. Ich habe das auf die todo Liste gesetzt.

2. Wenn man ACL auf einen Ordner setzt, auch mit Vererbung (egal ob aus napp-it oder Windows) so hat das nur Auswirkung auf neu angelegte Dateien und die Frage ob man generell Zugriff auf diesen Ordner hat. Windows arbeitet so. Möchte man die ACL von vorhandenen Dateien ändern so geht das in napp-it über acl reset (current folder) oder in Windows über Eigenschaft > Sicherheit > Erweitert eines Ordners. Dann auch da auch die ACL für den Ordner setzen und "Alle Berechtigungseinträge für untergeordnete Objekte durch vererbbare Berechtigungseinträge von diesem Objekt ersetzen" anklicken. ACL reset in napp-it geht lokal etwas schneller, in Windows übers Netz etwas langsamer dafür meist einfacher und in deutsch. Ich selber setze ACL auch in Windows indem ich mich als root per SMB (hat Vollzugriff) anmelde außer es muss sehr schnell abgearbeitet sein oder ich benötige deny Regeln. Die muss man lokal in Solaris/napp-it setzen. Ich würde allen vor allem am Anfang nahelegen, ACL über Windows zu setzen.

3. unterschiedliche Rechte von Share und enthaltene Ordner
da kommt die Vererbung ins Spiel z.B. setzt man ACL auf die oberste Ebene einer Freigabe mit "nur diesen Ordner". Dann können Berechtigte nur auf diesen Ordner zugreifen und z.B. Dateien/Ordner anlegen. Will man für einen enthaltenen Ordner andere Rechte so geht man wieder in Windows für diesen Ordner auf Eigenschaft > Sicherheit > Erweitert und wählt da "Vererbung deaktivieren". Dann kann man entweder alle Rechte entfernen oder in eigenständige ACL für diesen Ordner umwandeln, wieder mit eigenen Vererbungsregeln für diesen Ordner oder enthaltene Ordner. Um unterschiedliche Rechte für ein Share und enthaltene Ordner zu haben ist also ein mehrstufiges Vorgehen von "oben nach unten" notwendig.


OmniOS/ Solaris verhält sich was ACL angeht exakt wie Windows mit ntfs Dateisystem. Solaris nutzt sogar Windows sid als Rechtereferenz anstatt Unix uid/gid und bietet eine Windows kompatible Gruppenverwaltung die Gruppen in Gruppen beherrscht. Einzige Ausnahme sind Deny Regeln. Windows beachtet zuallererst Deny Regeln, dann Allow während Solaris wie bei einer Firewall die Reihenfolge der Regeln beachtet.

Zusätzlich kann man Vererbung auch mit der ZFS Eigenschaft aclinherit steuern. "Normales" Windows Verhalten hat man mit aclinherit=passthrough. Man kann aber auch eine restriktivere ACL Vererbung neuer Dateien erzwingen oder z.B. owner (hat Vollzugriff auf neue Dateien) entfernen.
 
Update:
Ich habe in der aktuellen 21.dev das Wiederherstellen von Sharename und ABE nach lock/unlock bzw auto unlock nach reboot integriert.

ps
Dass das bisher nicht funktionierte war kein Bug sondern lag daran dass dieses Verhalten in ZFS nicht unterstützt ist (ABE ist kein ZFS Property sondern eine Einstellung beim Sharen). Ein Wiederherstellen von ABE oder Sharename musste ich per Software und user-definierten ZFS Eigenschaften integrieren.
 
Das ging fix. Danke. Werde noch auf deine Mail antworten, aber aktuell kam das hier noch dazwischen:

1639678873872.png


Selbe Maschine, direkt danach:

1639679157118.png


Edit: Nach dem Ping hats erst nach wie vor nicht geklappt, nach dem traceroute dann aber schon:

1639679257391.png


Ist wohl weil ich mehrere Netzwerkinterfaces konfiguriert hab und nur eines ins Internet darf.


Nochmal Edit: Kann bestätigen, dass ABE nach unlock jetzt funktioniert. Top.
 

Anhänge

  • 1639678916508.png
    1639678916508.png
    2,6 KB · Aufrufe: 48
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh