[Sammelthread] ZFS Stammtisch

Ahoi, mittlerweile ist mein 9211-8i eingebaut und befeuert 7 x 4 TB im RaidZ2, für den ESXI freigegeben per NFS komme ich aktuell auf gute 500MB/s in einer Windows7-VM gemessen. Klingt für mich mit aktivem Sync erstmal nicht so übel, oder? Per DD in Napp-IT gemessen 720MB lesen und 500MB schreiben

Jetzt kommen bei mir ein paar neue Fragen auf:

1. Es hieß, die Storage VM, soll nichts weiter tun, als ESXI den Datastore bereit stellen. Da aber ZFS ja einige weitere Vorteile hat: warum nicht auch regulär per SMB Dateien darauf ablegen? Wenn ich sonst immer nur Snapshots von ganzen VMDK mache (um z.B. die VM mit meinen Fotos zu sichern), dürfte der benötigte Platz doch trotz Differenz recht ordentlich ansteigen, oder?

2. Später muss das ganze ja auch irgendwo gesichert werden. Wie exportiere ich denn Snapshots? Das geht sicherlich nur auf einem anderen ZFS, oder auch auf einem normalen ext4 z.B.? Mein N40L soll der Backup Server sein. Aktuell noch als XPEnology mit NFS Freigabe. Das wird nicht reichen? Also Napp-IT per USB-Stick drauf packen? Wie regelt Ihr das im normalen Heimgebrauch? @gea: nein Dein Equipment geht ne Ecke über meins hinaus ;)
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Es spricht m. E. nichts dagegen bzw. viel dafür, SMB auch direkt von der Storage VM mit ZFS freizugeben.

Nur "höhere Dienste" (Plex, Streaming was weiß ich) werden eben auf eigene VMs ausgelagert.

Ich sichere meine Daten in der Tat über ZFS send/Receiver auf ein anderes Solarish System. Du kannst aber natürlich auch mit rsync oder anderen Tools Daten sichern.
 
Ahoi, mittlerweile ist mein 9211-8i eingebaut und befeuert 7 x 4 TB im RaidZ2, für den ESXI freigegeben per NFS komme ich aktuell auf gute 500MB/s in einer Windows7-VM gemessen. Klingt für mich mit aktivem Sync erstmal nicht so übel, oder? Per DD in Napp-IT gemessen 720MB lesen und 500MB schreiben

Jetzt kommen bei mir ein paar neue Fragen auf:

1. Es hieß, die Storage VM, soll nichts weiter tun, als ESXI den Datastore bereit stellen. Da aber ZFS ja einige weitere Vorteile hat: warum nicht auch regulär per SMB Dateien darauf ablegen? Wenn ich sonst immer nur Snapshots von ganzen VMDK mache (um z.B. die VM mit meinen Fotos zu sichern), dürfte der benötigte Platz doch trotz Differenz recht ordentlich ansteigen, oder?

2. Später muss das ganze ja auch irgendwo gesichert werden. Wie exportiere ich denn Snapshots? Das geht sicherlich nur auf einem anderen ZFS, oder auch auf einem normalen ext4 z.B.? Mein N40L soll der Backup Server sein. Aktuell noch als XPEnology mit NFS Freigabe. Das wird nicht reichen? Also Napp-IT per USB-Stick drauf packen? Wie regelt Ihr das im normalen Heimgebrauch? @gea: nein Dein Equipment geht ne Ecke über meins hinaus ;)

@fdiskc2000 du hast dich jetzt ein All-in-one gemacht. Versteh ich das Richtig?
Die 9211-8i per passthrough in ESXi direkt an die Storage-VM (z.B. OmniOS) durchgereicht. Dann dir ein Filesystem angelegt und NFS aktiviert. Dieses FS dann ESXi als datastore bereit gestellt.
Für dieses FS kannst du klar auch SMB aktivieren und direkt von deiner Win/Tux-Kiste neue/andere VM's drauf kopieren und einfach in ESXi reinnehmen, per Datastore-Browser, Rechtsklick auf die .vmx und zur Bestandsliste hinzufügen. Fertisch.

Das Exportieren geht z.B. mit einem napp-it pro oder mit der Replikation-Extention von napp-it, oder natürlich kannst du es auch händisch von der Console aus machen.
Nein, mit deinem XPEnology gehts glaub nicht.

Wie regelt Ihr das im normalen Heimgebrauch?
Siehe mein Footer. Ich hab einen alten Server genommen, die alten Platten reingepackt und über 18 HDDs ein RaidZ2 aufgezogen. Für den täglichen Gebrauch ist natürlich ein vdev mit 18 HDDs Blödsinn, für ein Backup reichts IMHO aber aus.
 
Zuletzt bearbeitet:
Zu den Details, Partitionen oder Slices kann man einiges bei Oracle nachlesen
z.B. https://docs.oracle.com/cd/E36784_01/html/E36834/gnwky.html#scrolltoc

Im Prinzip sieht es aber so aus, das man sich nur darum kümmern muss, wenn man spezielle Partitionierungen benötigt, z.B. für mehrere OS auf einer Platte oder mehrere Partitionen z.B. als L2Arc und Zil

Ansonsten muss man lediglich folgendes beachten
1. Man braucht eine Systemplatte < 2TB, idealerweise eine SSD ca 50GB
Bei der Installation "benutze die ganze Platte/ use whole disk" wählen.

2. Datenplatten für Pools muss man nicht vorbereiten. einfach nutzen und daraus vdevs bauen.
ZFS macht das schon. Lediglich wenn eine neue Platte gar nicht erkannt wird, einmal irgendwie mit irgendas initialisieren.

Ausnahme
Wenn man auf einer Platte einen Pool angelegt hatte und den nicht zerstört hatte, weigert sich ZFS die anders zu nutzen da es erkennt dass sie Teil eines ZFS Pools ist. Dann muss man die Platte initialisieren oder mit einem Fremdsystem z.B. ntfs formatieren damit ZFS die wieder nimmt.

Ok, super!
Also wenn man immer schön die ganze Platte nimmt, muss man gar nichts weiter tun, ausser vielleicht die Platte vorher low-level formatieren, sodass keinerlei MBR/GPT-Initialisierung und keinerlei Dateisystem (NTFS, EX4,..) drauf ist.
Der POOL ist dann auch auf anderen System importbar?

--
Es sind noch weitere Fragen meinerseits aufgetaucht:
Erstens:
Ist es richtig, dass ich direkt auf einem Pool ohne ein Dataset/Filesystem angelegt zu haben darauf arbeiten kann? Ist das Sinnvoll wenn man eh nur ein Dataset bräuchte?

Zweitens:
Welche ZFS Struktur empfehlt ihr?
Ist es besser eher eine flache Ordnerstruktur zu nutzen und somit viele eigenständige datasets/Filesysteme auf dem Pool zu erstellen oder lieber hierarchisch?
/data-pool/
/dataset-user1/
/dataset-user2/
/dataset-multimedia/
/dataset-email/
.....

Das können dann schon viele Datasets werden. Stellt das ein Problem dar?
Wie sichert man dann am besten alle datasets zusammen? Oder muss man alle einzeln sichern?

Drittens:
Jeweils eigene Datasets haben doch den Vorteil, dass ich z.B. für User1 die Compression aktivieren kann und z.B. für den multimedia-dataset die recordsize auf 1MB anheben kann, auch wenn dies nicht per default auf dem ganzen "data-pool" aktiviert ist, oder irre ich mich?
 
Zuletzt bearbeitet:
Danke Euch beiden. Es wird klarer ;)
@layerbreak: verstehst Du soweit richtig. Aber mir geht es darum nicht noch eine NAS VM zu installieren (ist klar das man die auf unterschiedlichen Diensten rüber kopieren kann), sondern meine Fotos, etc. direkt in der NAPPIT-VM per SMB (oder was auch sonst) zu speichern. Das ZFS also nicht nur als Speicher für die VM zu nutzen, sondern (in einem extra ZFS eben) meine normalen Dateien abzulegen. Dann profitieren die ja erst recht vom ZFS.

Ok, das mit dem Exportieren / send / receive muss ich mir dann mal in ruhe anschauen. Evtl. auch mal eine Eval-Lizenz beim gea beantragen. Gibts dir immer nur für 2 Tage? Nicht länger? Ist als Familienvater der das im Nachtjob testet nicht viel zeit :d
 
@layerbreak: verstehst Du soweit richtig. Aber mir geht es darum nicht noch eine NAS VM zu installieren (ist klar das man die auf unterschiedlichen Diensten rüber kopieren kann), sondern meine Fotos, etc. direkt in der NAPPIT-VM per SMB (oder was auch sonst) zu speichern. Das ZFS also nicht nur als Speicher für die VM zu nutzen, sondern (in einem extra ZFS eben) meine normalen Dateien abzulegen. Dann profitieren die ja erst recht vom ZFS.
Ich denke ich hab dich schon verstanden.
Aber du hast dir in ESXi eine VM angelegt, in der ist z.B. OmniOS und napp-it installiert - also nur rpool. In der VM wird nichts anderes gespeichert, als das BS und die benötigte Software, wie z.B. napp-it oder die Erweiterungen.
Dann hast du einen zweiten pool, in den Hilfen wird der immer 'tank' genannt, auf dem kannst soviel Dateisysteme anlegen, wie du willst. In 'tank' hast du ja auch das Dateisystem datastore für ESXi angelegt. Jetzt leg einfach noch eines an für deine genannten Fotos und aktiviere dort SMB und greif darauf dann zu.
Das kann dann so aussehen:
zfs.PNG
 
Zuletzt bearbeitet:
Wir meinen das gleiche und reden aneinander vorbei :d. NappIT kommt autom. mit dem rpool aus der OVA. Rein installiert. Dann habe ich einen Großen Pool über alle HDD als RaidZ2 erstellt und dann innerhalb des Pools mehrere ZFS-Dateisysteme (eins NFS, eins SMB/Daten). Bei Dir heissen die zufällig auch Pool. Wir meinen das gleiche ;) Passt also.
Muss ich nur noch das Backup gescheit hinbekommen.
 
Also wenn man immer schön die ganze Platte nimmt, muss man gar nichts weiter tun, ausser vielleicht die Platte vorher low-level formatieren, sodass keinerlei MBR/GPT-Initialisierung und keinerlei Dateisystem (NTFS, EX4,..) drauf ist.
Man muss einfach gar nichts tun, egal ob da vorher ntfs oder ext4 drauf war - einfach nutzen

Der POOL ist dann auch auf anderen System importbar?
Ja

Ist es richtig, dass ich direkt auf einem Pool ohne ein Dataset/Filesystem angelegt zu haben darauf arbeiten kann? Ist das Sinnvoll wenn man eh nur ein Dataset bräuchte?

Ist prinzipiell möglich da ein Pool auch nur ein ZFS Dateisystem ist. Ist aber nicht sinnvoll und nicht im Sinne des Erfinders. Gründe sind z.B. unterschiedliche Properties, Reservierungen etc. Auch wäre es blöd, später Dateisysteme anzulegen bei denen Pooleigenschaften vererbt werden,.

Welche ZFS Struktur empfehlt ihr?
Ist es besser eher eine flache Ordnerstruktur zu nutzen und somit viele eigenständige datasets/Filesysteme auf dem Pool zu erstellen oder lieber hierarchisch?
/data-pool/
/dataset-user1/
/dataset-user2/
/dataset-multimedia/
/dataset-email/
.....

Das können dann schon viele Datasets werden. Stellt das ein Problem dar?
Wie sichert man dann am besten alle datasets zusammen? Oder muss man alle einzeln sichern?

Auch zehntausende von Dateisystemen sind kein Problem für ZFS. Kommt darauf an, ob man es braucht jeweils eigene Eigenschaften, Quotas oder Reservierungen einstellen zu können. Ansonsten sowenig Dateisysteme wie möglich und die Struktur dann über einfache Ordner anlegen.

Wenn man per ZFS replikation sichert, geht das auf Ebene der Dateisysteme. Man kann das zwar rekursiv machen, fällt dann aber bei jeder Änderung der Dateisysteme auf die Nase. Rsync geht z.B. unabhängig davon, kann aber keine nfs4 ACL sichern und ist viel langsamer.

Jeweils eigene Datasets haben doch den Vorteil, dass ich z.B. für User1 die Compression aktivieren kann und z.B. für den multimedia-dataset die recordsize auf 1MB anheben kann, auch wenn dies nicht per default auf dem ganzen "data-pool" aktiviert ist, oder irre ich mich?

Korrekt, jedes Dateisystem kann seine eigenen ZFS Eigenschaften haben.


@fdiskc2000
Eine Verlängerung des Testzeitraums ist kein Problem, einfach eine pm oder mail mit dem Hostname schicken.
 
Zuletzt bearbeitet:
Für den täglichen Gebrauch ist natürlich ein vdev mit 18 HDDs Blödsinn, für ein Backup reichts IMHO aber aus.
Ich biete mehr: 19x 8TB Raidz3, 60% gefüllt / Backup der wichtigen Daten auf 5x 4TB Raidz1 (selbstredend in einem anderem System). *scnr*
 
Zuletzt bearbeitet:
Ich biete mehr: 19x 8TB Raidz3, 60% gefüllt / Backup der wichtigen Daten auf 5x 4TB Raidz1 (selbstredend in einem anderem System). *scnr*

Ich weis, habs in dem anderen Thread gelesen. Ich hoffe für dich, dass keine der SMR HDDs aussteigt und du ein resilver machen musst. Die Gefahr, dass dir da der ganze pool hinüber geht, wäre mir persönlich zu riskant.
Wenn ich es richtig überschlage müsstest du dann rund 60TB aus der Originalquelle wieder herstellen. :eek:
Aufgrund der SMR und der schieren Größe von 8TB, hätte ich lieber 2xvdev mit Raidz2 plus Spare Platte gemacht. Der Nettoverlust wäre nicht allzu groß gewesen.
 
Mal eine dumme Frage: wenn irgendwie Lowlevel Format und Smartmontools usw. alle nicht so zuverlässig die Fehler erkennen wie ZFS - könnte ich denn nicht dann einen TestPool auf der einzelnen fraglichen HDD anlegen, den dann ordentlich mit Daten zuschaufeln (bis ca. 80%) und dann darüber ein paarmal ein Scrub laufen lassen?

Nach meinem Verständnis kann ZFS dann zwar die Fehler nicht korrigieren, finden (wg. Checksums) müsste es etwaige Fehler doch aber trotzdem. Richtig?
 
Ich weis, habs in dem anderen Thread gelesen. Ich hoffe für dich, dass keine der SMR HDDs aussteigt und du ein resilver machen musst. Die Gefahr, dass dir da der ganze pool hinüber geht, wäre mir persönlich zu riskant.
Wenn ich es richtig überschlage müsstest du dann rund 60TB aus der Originalquelle wieder herstellen. :eek:
Aufgrund der SMR und der schieren Größe von 8TB, hätte ich lieber 2xvdev mit Raidz2 plus Spare Platte gemacht. Der Nettoverlust wäre nicht allzu groß gewesen.
"Die Hoffnung stirbt zuletzt"!
Dann hätte ch aber wiederum 2 Pools erstellen müssen, was wiederum zur Folge hat, daß ich mir wieder Gedanken um die Verteilung der Daten auf beide Pools machen müssen - Irgendwann wäre daß mit Sicherheit in eine "Datenschieberei" in massiver Grössenordnung ausgeartet.
Beide VDEVs in einen Pool bedeutet, daß der Pool kaputt ist, wenn ein VDEV kaputt ist > Der Redundanzlevel des Pools wäre Raidz2, da nur 2 beliebige Platten ausfallen dürfen.
 
Mal eine dumme Frage: wenn irgendwie Lowlevel Format und Smartmontools usw. alle nicht so zuverlässig die Fehler erkennen wie ZFS - könnte ich denn nicht dann einen TestPool auf der einzelnen fraglichen HDD anlegen, den dann ordentlich mit Daten zuschaufeln (bis ca. 80%) und dann darüber ein paarmal ein Scrub laufen lassen?

Nach meinem Verständnis kann ZFS dann zwar die Fehler nicht korrigieren, finden (wg. Checksums) müsste es etwaige Fehler doch aber trotzdem. Richtig?


1.
Smartmontools geben einem die Hoffnung, Probleme vorherzusagen bevor sie auftreten.
Oft trügt die Hoffnung.

2.
Wenn ZFS dann Probleme erkennt, dann sind das tatsächliche Probleme da damit korrupte Daten verbunden sind. Mit Redundanz sind die noch kein echtes Problem. Allerdings erkennt ZFS z.B. beim Zugriff oder einem Scrub nur Probleme auf belegten Datenblöcken.

3.
Ein Lowlevel Tool scannt alle Datenblöcke und erkennt damit Probleme unabhängig von der Belegung.
Das dauert bei großen Platten aber auch mal Tage.


Meist nutzt man die Tools in der Reihenfolge 1,2,3 (3 wenn 1 oder 2 Probleme melden)
 
Wenn also das lowlevel Tool nichts findet, spricht das sehr dafür, dass es nicht die Platte sondern irgend etwas anderes ist.

Dann ziehe ich als nächsten den ganzen Pool mal vom Onboard Controller (im AHCI Modus) auf einen LSI HBA plus externes Gehäuse mit eigener Stromversorgung um. Da ist ja dann quasi alles ausgetauscht und sollte funktionieren, zumal der 2. Pool in der Kiste am LSI bereits hängt und keinerlei Probleme macht.

Ich hasse Fehlersuche... ;)
 
OmniOS 151017 Februar beta mit SMB 2.1
Es gibt ein Update für OpenSSH das den Bug der Januar Beta mit sudo behebt.
Auch napp-it läuft damit wieder

aus der Mailliste
Based on illumos-omnios master commit cc70d5b, uname -v reports "omnios-cc70d5b".

And omnios-build master commit 45f0d7b.

New with this update:

- Case-sensitivity now in ZFS test suite.

- GLDv3 improvement (by OmniTI's own Dale Ghent) which should produce less confusing dladm(1M) output.

- SunSSH and sudo now honor the illumos-bug-6057 ways of doing things. Please PLEASE look for other "last login" weirdness, but there shouldn't be any. If there is, PLEASE report it to this list ASAP.

- Speaking of SSH, OpenSSH now includes the full wad of Joyent work (modulo 1-2 small differences) to be more of a SunSSH replacement. If you haven't tried OpenSSH because you needed something from SunSSH, PLEASE try it now.


There is no new release media for this update, but I did update all of the packages, so you'll need to create a new BE and reboot.

Thanks,
Dan
 
Ja.
Bei OmniOS sind ungerade Nummern Beta (Omniti nennt die bloody)
und gerade Nummern stable.

Die nächste Stable 151018 auf dieser Basis kommt ca April.
 
Beschäftige mich gerade mit dem Thema ZFS Replication übers Netzwerk zu Backupzwecken. Kann mir jemand der Napp-It Pro Nutzer sagen, ob man vor den Replikationsjobs Scripte bzw. Befehle ablaufen lassen kann?

Zweck: Mein Backupsystem soll sonst im S5 schlafen und nur per WOL zum sichern geweckt werden (und sich danach wieder schlafen legen).
 
Wenn das Backupsystem unter Solaris läuft, wird WoL vermutlich nicht laufen. IPMI wäre die Alternative.
Ansonsten könnte man per "other Job" eigene Funktionen und Scripte einbauen die z.B. prüfen ob die Replikation noch läuft und ansonst den Rechner herunterfährt.
 
Wollte OmniOS mit Napp-It nehmen, Backupsystem ist ein HP Microserver Gen8. Das es mit WoL Probleme geben könnte habe ich nicht bedacht. Muss es bei Zeiten mal testen.
 
Den solltest du aber per ILO anbekommen....

Code:
ipmitool -H $IP_OR_FQDN -U $USERNAME -P $PASSWORD -I lanplus power on
 
Hallo zusammen. Umzug des Pools auf einen LSI-Kontroller (export/import) hat das Problem leicht verändert. Anstatt blauer Werte zeigt mir nappit zwar schwarze Zahlen (und das ist ja sonst immer gut ;) ), aber doch was anderes als "0" wie bei allen anderen Platten (und das ist dann wohl weniger gut).

Damit ich das Thema mal weiter eingrenzen kann - wofür stehen denn eigentlich die Buchstaben (blau hervorgehoben im screenshot):
Nappit-Pools.jpg

Danke vorab!
 
Wenn ein Platte ausfällt ist alles klar. Die ist dann offline und der Pool degraded.
Auch wenn durch Silent Data Errors/Datenrost Fehler auftreten ist alles klar. ZFS meldet einen Prüfsummenfehler und repariert den umgehend.

Unterhalb dieser tatsächlichen Fehler gibt es aber Meldungen der Platte oder des Plattentreibers über Auffälligkeiten. Die sammelt iostat seit dem letzten Start als Soft, Transfer und Harderrors. Die sind noch nicht bedenklich. Selbst ein einfacher Smartmontools check kann den Transfererror Zähler hochsetzen.

Tatsächliche Probleme wie z.B. bad blocks oder timeouts äußern sich unterhalb eines tatsächlichen Problems aber in diesen Werten. Wenn die plötzlich zunehmen kündigt sich meist ein Problem an. Das ist dann ähnlich wie smart Warnungen. Aber wie gesagt, alles Indizien, kein rauchender Colt. Wenn aber immer die gleiche Platte auffällig ist, würde ich die erden. Ob man dann damit einen Garantietausch begründen kann ist eine andere Frage.

https://blogs.oracle.com/chrisg/entry/iostat_e_whats_that_all
 
Eine kleine Frage zum Verhalten des Pool wenn ich compression und dedup nachträglich einschalte. Werden bereits bestehende Daten automatisch im Hintergrund gededupt und kompriert oder muss ich das für bestehende Daten manuell anstoßen?
 
Beides wirkt nur beim Schreiben. Man müsste das also manuell anstossen.

ps
Bei dedup den Extra RAM Bedarf vom mehreren GB/TB Daten einkalkulieren.
Meist ist ein etwas größerer Pool optimaler.
 
gibts fertige Tools / Scripte, die das neu schreiben übernehmen oder muss ich mir da ein eigenes Script bauen?
 
Wenn der Platz reicht
Ein ZFS Dateisystem umbenennen, dann zfs send auf den alten Namen. Bei Erfolg Dateisystem löschen.
 
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