[Sammelthread] ZFS Stammtisch

Erstmal kein Panik. Platten haben mit der Zeit Fehler (kein Problem) , gehen irgandwann aber auch kaputt.
Wenn die Fehler plötzlich zunehmen kann es gefährlich werden.

Dann mit smartmontools oder einem Herstellertool die Platte testen.
Eine Ersatzplatte zum schnellen Reagieren wäre aber nicht schlecht.

Bei den heutigen Riesenplatten würde ich aber ohnehin weggehen von Raid-Z1/ Raid5,
hin zu Raid Z2/ Raid6. Das überlebt auch den Ausfall zweier Platten. Wichtig, falls
mal eine Platte ausfällt und ein Rebuild (ohne Redundanz) Tage dauern kann.


Alles klar.

Ich benutze die Platten als NFS Data Store für meine VMWare Farm.
Da hängen jetzt 4 VMs dran und mit jeder VM wird es langsamer. Liegt es am Z1 Raid?
Oder ist meine 1GBit Leitung zur Storage der Flaschenhals?
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Es liegt am Raidz. Raidz(1-3) sind für große Datenmengen bei geringer Random IO. Wenn du mehrere VMs laufen lassen willst, nimm mehrere mirror vdevs (Raid10).
 
ESXi möchte wegen der besseren Datensicherheit syncron auf NFS schreiben und ZFS folgt diesen Wunsch auch als Voreinstellung. Dabei muss jede Schreibaktion sofort auf die Platte geschrieben und bestätigt werden. Das ist viel langsamer (bis zu 100x) als normale ZFS Schreibaktionen, die immer sequentiell erfolgen (Normale Schreiboperationen gehen in den RAM und werden nach 5s bei ZFS sequentiell geschrieben). Bei NFS zählt daher vor allem I/O Leistung. Und die ist bei Raid-Z1 nur so gut wie bei einer Platte (da für jede Schreibaktion erst alle Köpfe positioniert werden müssen).

Raid 10 mit 4 Platten hat im Vergleich dazu bei Lesen die vierfache I/O Leistung einer Platte und beim Schreiben die Doppelte. Daher bei ESXi datastore und NFS immer Mirrors machen. Wenn es dennoch zu langsam wird, entweder sync deaktivieren (hat Datenverlust bei Stromausfall zur Folge) oder eine ZIL Laufwerk hinzufügen. Damit sind sichere syncrone Schreibaktionen auch schnell zu bekommen.
 
Zuletzt bearbeitet:
Hey ho ;-)

Ich möchte demnächst einen ZFS-Filserver aufsetzen. Da ich am liebsten auf Linux bleiben möchte, würde ich das zfsonlinux kernelmodul benutzen.

Leider unterstützt Pool V28 ja bekanntlich keine Crypto von Haus aus.

Meine Frage lautet nun:

Auf welcher Ebene soll ich den Crypto Layer einfügen?

Unter ZFS, mit z.B LUKS block-level Encryption? Würde das ZFS irgendwie schaden, wenn es nicht mehr die "Rohdaten" auf die Platte schreiben kann, sondern alles nochmal verschlüsselt abgelegt wird? (Wie würde das ZFS beeinträchtigen wenn Lesefehler etc... auftreten?)

Ein Block device im Pool erzeugen und dann dieses Device verschlüsseln?

Über dem Dateisystem mit encfs?

Vielen Dank schon mal im Voraus :-)
 
Zuletzt bearbeitet:
[x] Ein extra verschlüsseltes Dateisystem unter Linux benutzen - ohne ZFS.
Du willst ja wohl ZFS wegen den Prüfsummen für Dateien und der "Selbstheilungsfunktionen" verwenden.
 
... oder eine ZIL Laufwerk hinzufügen. Damit sind sichere syncrone Schreibaktionen auch schnell zu bekommen.

Hallo Gea,

danke für die ausführliche Info.

Wie läuft das mit dem ZIL. Einfach eine Platte reinhängen, dann im nappit Menü auf Disk ADD und dann ZIL?

Wie groß sollte die Platte sein und sollte ich dann gleich zwei Platten nehmen und Spiegeln zwecks ausfallsicherheit?
Geht das überhaupt bei ZIL?

Gruß
 
[x] Ein extra verschlüsseltes Dateisystem unter Linux benutzen - ohne ZFS.
Du willst ja wohl ZFS wegen den Prüfsummen für Dateien und der "Selbstheilungsfunktionen" verwenden.

Ja am wichtigsten wären mir Datenintegrität, Ausfallsicherheit etc...

Also wäre ein ZFS Pool mit Block Device auf dem ich dann den Crypto Layer drüber lege und anschließend ext4 nutze die beste Möglichkeit oder?

Ich frag mich halt nur obs nicht irgendeine "Ideallösung" für das Cryptoproblem gibt, also die "reine" ZFS-Lehre(wobei ich Kompression + dedup nicht benötige) + Crypto ;-)
 
Ja am wichtigsten wären mir Datenintegrität, Ausfallsicherheit etc...
Wie viele HDDs welchen Typs willst du in welchem Raid verwenden? Existieren Backups auf 2-3 externen Datenträgern deiner wichtigen Daten?

Einfacher ist es die Verschlüsselung von bestehen Programmen zu benutzen. Entweder für Notizen, Container (solange diese nicht all zu groß geraten) oder Einträge in einer "Datenbank" ala keepass.
 
Wie viele HDDs welchen Typs willst du in welchem Raid verwenden? Existieren Backups auf 2-3 externen Datenträgern deiner wichtigen Daten?

Einfacher ist es die Verschlüsselung von bestehen Programmen zu benutzen. Entweder für Notizen, Container (solange diese nicht all zu groß geraten) oder Einträge in einer "Datenbank" ala keepass.

Ich würde 8-10 2TB Consumer-Platten (also die billigsten Platten, die aufzutreiben sind) mit raidz2 verwenden. (Performance ist mir nich sonderlich wichtig ;-) )
Backup existiert NICHT. Ich weiß Raid ersetzt kein Backup etc... aber 12-16TB zu backupen ist einfach zu teuer. Und die Ausfallsicherheit ist imo bei raidz2 ausreichend (Fileserver ist gut gekühlt und läuft < 4h pro Tag)

Zum Thema Verschlüsselung: Ist ein must have feature für mich. d.h. Wenn der Rechner aus ist MÜSSEN jegliche Daten verschlüsselt sein. (Meine Systeme sind grundsätzlich bis auf /boot verschlüsselt...)

Die einfachste Möglichkeit wäre natürlich jede Platte mit LUKS zu encrypten und ZFS die transparenten device-mapper als Devices zu geben.
Da ich noch nicht 100% hinter das Checksumming etc.. von ZFS gestiegen bin, würde ich gerne wissen, ob das Verwenden von transparent verschlüsselter Block-devices für ZFS einen Nachteil hat? (bezüglich Datensicherheit etc... bei raidz oder raidz2)

Normalerweise dürfte ZFS es eigetnlich herzlich egal sein, wenn durch einen Lesefehler der Platte und anschließendem "falschem" decrypt totaler Schwachsinn ankommt, da ja die Parity Platte(n) die korrekte Information leifert(n). Oder habe ich da etwas faslch verstanden?

Ach ja:

Ist es ratsam 5 * 2TB Platten mit Raidz zu betreiben? Ich würde das größere Raidz2 erst Ende des Jahres aufbauen, wenn die Plattenpreise sich etwas stabilisiert haben ;-)

Gibt es jemanden der Erfahrungen bezügl Ausfall von mehr als 1 Platte bei raidz hat? (Ich hab erlich gesagt nicht so richtig eine Vorstellung wie oft das wirklich vorkommt)
 
Zuletzt bearbeitet:
Der Ausfall mehrere Festplatten "zeitgleich" ist eher am Ende Ihrer Produktlebenszeit zu beobachten. Ansonsten bleibst du weiterhin von dem Problem von nicht lesbaren Sektoren betroffen. Da sind fünf HDDs a 2TB bei einer URE von 10^14 schon zu viel.
Wenn du wirklich 8-10 HDDs später in einem Raidset haben willst, würde ich dir eher zu Raidz3 raten - hier dürfen bis zu drei HDDs ausfallen.
 
Hey ho ;-)

Ich möchte demnächst einen ZFS-Filserver aufsetzen. Da ich am liebsten auf Linux bleiben möchte, würde ich das zfsonlinux kernelmodul benutzen.

Leider unterstützt Pool V28 ja bekanntlich keine Crypto von Haus aus.

Meine Frage lautet nun:

Auf welcher Ebene soll ich den Crypto Layer einfügen?


ich sehe da folgende Möglichkeiten mit ZFS

- unterhalb ZFS mit verschlüsselten devices, ZFS baut darauf einen Pool
kein Problem, ZFS sieht ja nur die Blockdevices und baut daraus einen normalen ZFS Pool.
Ich mache das jetzt auch so mit OpenIndiana/ ZFS28 und lofi- aes256 encrypted filedevices

- Verschlüssellung in ZFS, im Dateisystem
Bei ZFS momentan leider nur mit Solaris 11 möglich

- Verschlüssellung oberhalb ZFS
natürlich möglich, falls ein ZFS blockdevice erstellt und per iSCSI an ein anderes OS weitergereicht wird
daß die Daten dann verschlüsselt oder falls ein Gast verschlüsselte Container anlegt oder eine Anwendung die Daten verschlüsselt.

ZFSonLinux scheint zunehmend eine interessante Option (interessanter als Btrfs) zu werden.
Ich würde aber im Vergleichen durchaus OpenIndiana/Unix empfehlen. Der im Kernel integrierte SMB Server von Solaris ist einfach eine Klasse für sich und irgendwie ist Solaris "runder", da alles aus einer Hand. Die Anzahl der angepassten Anwendungen ist bei Linux viel höher, bei einem reinen Filer ist Solaris aber einfach nur Klasse.

ZFS ist da halt am Schnellsten und Stabilsten.

---------- Post added at 10:58 ---------- Previous post was at 10:41 ----------

Wie läuft das mit dem ZIL. Einfach eine Platte reinhängen, dann im nappit Menü auf Disk ADD und dann ZIL?

Wie groß sollte die Platte sein und sollte ich dann gleich zwei Platten nehmen und Spiegeln zwecks ausfallsicherheit? Geht das überhaupt bei ZIL?

Ja, einfach eine SSD dem Pool als Zil ('Schreibcache') hinzufügen. Mirror muss nicht mehr sein (Mit älteren ZFS Versionen war ein Pool verloren, falls die ZIL ausfiel, ist aber mit ZFS 28 kein Problem mehr).

Die Größe ist nicht das Problem. Sie muss ja nur wenige Sekunden syncrones Schreiben mitprotokollieren können. Als Hausnummer kann gelten, wenigestens 4 GB, max Hälfte des RAM. Hohe Scheibgeschwindigkeit und vor allem geringe Latenz sind aber besonders wichtig. Leider patzen da die SSDs weshalb wirklich schnelle Pools für sicheres syncrones Schreiben mit DRAM-Zils gemacht werden (ZeusRam, DDRDrive, richtig teuer)
 
Zuletzt bearbeitet:
Kann jemand bestätigen, dass die Email Benachrichtigung bei napp-it funktioniert? Hab schon einiges versucht, jedoch will diese nicht funktionieren.

Unbenannt.PNG
 
Google ist ein Problem da es nur TLS verschlüsselte Mails erlaubt.
napp-it (oder genauer die default Konfiguration bei Solaris) unterstützt das nicht.

Damit das funktioniert, müssen von Hand die entsprechenden Perl Module nachinstalliert werden
siehe napp-it Menü: jobs - TLS - help - readme first


Einfacher wäre ein "normaler" Mailaccount/ Weiterleitung/ Mailliste
 
Ich hoffe ihr koennt mir weiterhelfen...Habe mir mein erstes ZFS System gebaut...laeuft ohne Probleme bis auf die Transferrate....

Zu meinem System:

Mainboard: ASUS P8H67-V R.3.0

An diesem haengen alle Platten....Als System Platte kommt eine Vertex3 zum Einsatz. Die Platten fuer das Raid sind folgende:
http://www.amazon.de/Seagate-Barrac...X0UE/ref=sr_1_2?ie=UTF8&qid=1329093987&sr=8-2

Als Prozessor habe ich ein i5 eingebaut....Das System besitzt 8GB RAM.

Raid1z
mit 5mal 3TB

Zu meinem Problem:
Die Schreibperformance liegt bei 95mb/s fuer 5 min... danach geht diese schlagartig auf 5mb/s herunter... nach weiter 5min dann wieder hoch....
Ich gehe davon aus, dass ein cache voll laeuft...aber welcher? Oder ist der Onboard Controller von dem Board kacke?

Kennt jemand diese Probleme?
 
Zu meinem Problem:
Die Schreibperformance liegt bei 95mb/s fuer 5 min... danach geht diese schlagartig auf 5mb/s herunter... nach weiter 5min dann wieder hoch.... Ich gehe davon aus, dass ein cache voll laeuft...aber welcher? Oder ist der Onboard Controller von dem Board kacke?

Kennt jemand diese Probleme?

Der Onboard Sata Controller im AHCI Modus ist perfekt.
Das Problem liegt meist an den billigen Realtek Netzwerkkarten im Server oder den Clients.

Es ist wirklich schade, dass diese selbst in den teuren Desktopboards verbaut werden um 1 Euro 20 zu sparen. Daher der Rat, wenn möglich die Boards mit Intel Server Chipsatz zu nehmen. Die haben neben ECC und ausreichend schnellen PCIe Slots auch vernünftige Netzwerkchips (meist Intel) dabei.

Wenn möglich, eine Intel Netzwerkkarte einbauen und nochmal testen
 
Zuletzt bearbeitet:
Hallo Schalt,

testest Du gegen einen Windows7 Rechner. Da gab es doch häufig ein Problem mit dem TCP-Offload in dem Netzwerkkarten-Settings , der sich genau so äußerte. Oder?!
 
Ja, einfach eine SSD dem Pool als Zil ('Schreibcache') hinzufügen. Mirror muss nicht mehr sein (Mit älteren ZFS Versionen war ein Pool verloren, falls die ZIL ausfiel, ist aber mit ZFS 28 kein Problem mehr).

Die Größe ist nicht das Problem. Sie muss ja nur wenige Sekunden syncrones Schreiben mitprotokollieren können. Als Hausnummer kann gelten, wenigestens 4 GB, max Hälfte des RAM. Hohe Scheibgeschwindigkeit und vor allem geringe Latenz sind aber besonders wichtig. Leider patzen da die SSDs weshalb wirklich schnelle Pools für sicheres syncrones Schreiben mit DRAM-Zils gemacht werden (ZeusRam, DDRDrive, richtig teuer)

Also wenn dann eine SSD für ZIL, richtig?
Mit einer normalen HDD brauch also nicht anfangen.



Wenn ich denn Pool neuen aufbauen muss, wegen umstieg auf mehrer mirrors.
Empfiehlt es sich dann gleich ein ganzes Update der Kiste?

Habe zur Zeit SunOS openindiana 5.11 oi_148 i86pc i386 i86pc
mit nappit appliance v. 0.8g nightly Apr.16.2012

irgendwelche Vorteile in der neuen OI Version?

oder lieber never touch a running System?

Gruß
 
Welche Intel Netzwerkkarte kannst du empfehlen?

Intel Gigabit CT Desktop Adapter, 1x 1000Base-T, PCIe x1 (EXPI9301CT) | Geizhals Deutschland

Das ist die Referenz. Nahezu jedes OS hat Treiber dafür. Kann via PXE und iSCSI booten. iSCSI muss ich erst selbst testen. Meine müsste morgen kommen.

Intel Ethernet I350-T2 Server Adapter, 2x 1000Base-T, PCIe 2.0 x4 | Geizhals Deutschland Die hab ich als Onboard-Version. Treibermäßig schlechter unterstützt, weil neuer, läuft aber in ESXi. Soll Sachen wie SR-IOV können, die zwar ESXi noch nicht kann, aber das wird bestimmt noch kommen. PXE und iSCSI selbstverständich. Wenn du mehr als 1 Port pro Slot brauchst, wäre das meine Wahl bzw. auch die 4-Port-Version.
 
Also wenn dann eine SSD für ZIL, richtig?
Mit einer normalen HDD brauch also nicht anfangen.

Wenn ich denn Pool neuen aufbauen muss, wegen umstieg auf mehrer mirrors.
Empfiehlt es sich dann gleich ein ganzes Update der Kiste?

Habe zur Zeit SunOS openindiana 5.11 oi_148 i86pc i386 i86pc
mit nappit appliance v. 0.8g nightly Apr.16.2012

irgendwelche Vorteile in der neuen OI Version?

oder lieber never touch a running System?

Gruß

Selbst bei SSD's muss man auf hohe Schreibperformance und geringe Latenz achten-
nur damit lassen sich die sicheren sync-write Anforderungen wirklich beschleunigen.

Bei OI 148 würde ich wirklich updaten. Das war die allererste Beta mit Illumos Kernel.
OI151a3 ist vermutlich etwas schneller, hat viele Fehler beseitigt und viele Extraprogramme
setzen inzwischen OI 151 vorraus.
 
Also wenn dann eine SSD für ZIL, richtig?
Mit einer normalen HDD brauch also nicht anfangen.
Falls du für einen neuen Pool absolut keine SSD im Moment auftreiben kannst, würde eine HDD an der Stelle trotzdem verhindern, dass dein Pool durch das in-pool-ZIL fragmentiert. Leistungsmäßig würdest du nur einbüßen.
 
- unterhalb ZFS mit verschlüsselten devices, ZFS baut darauf einen Pool
kein Problem, ZFS sieht ja nur die Blockdevices und baut daraus einen normalen ZFS Pool.
Ich mache das jetzt auch so mit OpenIndiana/ ZFS28 und lofi- aes256 encrypted filedevices

Ich frage jetzt einfach noch mal ganz blöd nach: Man hat also definitiv KEINE Nachteile, außer eine niedrigere Performance, wenn man einen zpool auf einem LUKS device einrichtet? Das Checksumzeugs, Scrubben/Rebuilden etc. funktioniert genau so "gut" wie direkt ohne LUKS auf eine HDD?
 
Ich frage jetzt einfach noch mal ganz blöd nach: Man hat also definitiv KEINE Nachteile, außer eine niedrigere Performance, wenn man einen zpool auf einem LUKS device einrichtet? Das Checksumzeugs, Scrubben/Rebuilden etc. funktioniert genau so "gut" wie direkt ohne LUKS auf eine HDD?

ZFS kann auf beliebigen Blockdevices (RAW disks, files als device, volumes oder iSCSI targets) einen Pool anlegen.
Was sich unterhalb eines solchen Blockdevices abspielt, ist ZFS ziemlich egal.
 
Abend,

hat jemand von euch Erfahrung mit SSD als Cache / ZIL und Co unter ZFS? Was verwendet ihr für SSDs? Wie sieht der grobe Performancezuwachs aus? Ein wenig Erfahrungswerte zu dem Thema wär echt super :wink:
 
@gea

planst du vielleicht für die zukunft eine option, das man dem rootpool mirrordevices zufügen kann, so wie das nexenta schon bei der installation anbietet?
das wäre ein super sache. :)
 
Mit Illumian + napp-it geht das auch gleich bei der Installation (Installer von Nexenta). Ich hoffe, dass OI das auch noch integriert.
Im Moment ist ansonst Handarbeit angesagt (Oracle Solaris 11 Express: Mirroring Your ZFS Root Pool )

Im Moment plane ich das nicht in napp-it (Beschäftige mich momentan mit clustering/HA und hoffe, dass ich das integrieren kann)
 
Clustering/HA wäre ein super feature!

Ich habe aktuell ein merkwürdiges Problem:
Maschine mit oi_151a3 neu aufgesetzt, napp-it drauf, alten pool importiert, läuft soweit. Jetzt habe ich die email, jobs (scrub, status, etc.) eingerichtet, getestet und will den auto-service aktivieren, aber der bleibt auf disabled. Auf der Maschine lief vorher oi_151a2 mit 0.7l ohne Probleme. Dann habe ich testweise 0.7l installiert, aber dort lässt sich der auto service auch nicht einschalten.
Hat jemand ein Idee was ich falsch mache?
 
Clustering/HA wäre ein super feature!

Ich habe aktuell ein merkwürdiges Problem:
Maschine mit oi_151a3 neu aufgesetzt, napp-it drauf, alten pool importiert, läuft soweit. Jetzt habe ich die email, jobs (scrub, status, etc.) eingerichtet, getestet und will den auto-service aktivieren, aber der bleibt auf disabled. Auf der Maschine lief vorher oi_151a2 mit 0.7l ohne Probleme. Dann habe ich testweise 0.7l installiert, aber dort lässt sich der auto service auch nicht einschalten.
Hat jemand ein Idee was ich falsch mache?

Vielleicht hilft ein reset des root-PW
napp-it auto service won't start


Ich bin übrigens auf der Suche nach Personen, die etwas Erfahrung mit Clustering
(PaceMaker/Heartbeat) haben oder sich darin versuchen wollen.

Projekt: Ein OpenSource ZFS Cluster mit shared storage (Dual path SAS)
bzw zum Ausprobieren/Evaluation als komplett virtualisierte Lösung.


Hintergrund: Diese OpenSource Clustering Lösung wurde nach OpenIndiana portiert, und ich bin in Kontakt mit dem Entwickler, um eine Testinstallation zu dokumentieren und in napp-it als ready to use Lösung zu integrieren. Leider ist das für mich Neuland, ich bin aber gerade am Lernen, brauche aber Hilfe beim Aufbau eines Muster-Clusters

Aktueller Stand:
Aufbau eines (virtuellen ESXi) Clusters aus zwei nodes mit shared Storage (Virtuelle maschine mit iSCSI)

Diese Konfiguration kann jeder mit einem ESXi 5 nachbauen; Ziel ist ein lauffähiger, dokumentierter Storage-Cluster für Lau (NFS/CIFS, eventuell weitere Dienste)
Die Dokumentation (Shared document, Mitarbeit willkommen) gibts unter Booktype Sign In

Stufe 2:
Nach Tests, Aufbau in Hardware mit shared SAS storage.

Mehr Infos:
Mike Rowell – Technologist » Technologies
Clustering/ High Availablity - OpenIndiana - OpenIndiana Wiki


Bin gespannt, ob das Projekt Erfolg hat oder ob man einen hochverfügbaren ZFS Cluster nur wie momentan hinbekommt, indem man zigtausend Euro in ZFS Server mit Gold Support und shared SAS Storage und nochmal zigtausend Euro in RSF-1 Software investiert - selbst für erste Tests.
 
Zuletzt bearbeitet:
Für Dualport SAS brauchst du entweder eine entsprechende Backplane mit Expander die für SAS Dual-Domain ausgelegt ist - oder SFF-8482 Kabel - welche am anderen Ende zwei einzelne SATA-Stecker dran haben.
Auf Controllerseite würde sich ein LSI SAS HBA anbieten. Zumindest steht im MegaCLI etwas von Cluster Support drin. Damit dürfte das Dualpath Feature von SAS gemeint sein, dass zwei Controller zur Ausfallsicherheit auf ein und die selben HDDs Zugriff haben.

Das Problem dürfte nur sein, dass ZFS kein verteilt schreibendes Dateisystem (Cluster/shared) ist!

Ein ICP Vortex U160 SCSI Director wird dir wohl nicht viel helfen? Solch ein Relikt steht hier noch zweimal herum :)
Controllerkarten: SCSI-RAID-Controller | heise online Preisvergleich
 
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