ZFS

Erste Schritte mit ZFS unter Ubuntu

Erste Schritte mit ZFS unter Ubuntu

Einführung

ZFS ist ein Dateisystem, das ursprünglich mit Solaris geliefert wurde, aber später in vielen Unix- und Linux-Betriebssystemen angepasst wurde. Der Hauptvorteil des ZFS-Dateisystems besteht darin, dass es Zettabytes an Daten unterstützt und 128 Bit hat. Daher wird es oft in großen Unternehmensservern und von Datensammlern wie Regierungsbehörden verwendet. Im Gegensatz zu anderen Dateisystemen ist ZFS resistent gegen Datenfäule auf Festplatten, da es die Integrität der Daten beim Speichern bewahrt und keine Partitionierung erforderlich ist, wenn dem bestehenden RAID weitere Festplatten hinzugefügt werden. ZFS ist aufgrund seiner enormen Vorteile im Grunde die Zukunft der Unix-Dateisysteme. Es ist jedoch unwahrscheinlich, dass es für einen durchschnittlichen Heimanwender in absehbarer Zeit sehr nützlich ist, aber Serveradministratoren sollten ZFS und seine Vorteile kennen. Dieser Artikel zeigt also, wie Sie ZFS auf Ubuntu-Servern problemlos verwenden können.

Wie installiert man ZFS

Die Installation von ZFS ist so einfach wie jedes andere Paket, aber es muss mit Root-Zugriff installiert werden. Um Root-Zugriff zu erhalten, verwenden Sie sudo su, das dann zur Eingabe des Administratorpassworts auffordert. Nach Eingabe des Passworts erhält der Benutzer Root-Zugriff. Sobald der Root-Zugriff erlangt wurde, verwenden Sie den install-Befehl zusammen mit dem Paketnamen - zfs, um zfs im System zu installieren. Die Installation dauert eine Weile, aber sobald es abgeschlossen ist, wird es benachrichtigt.

     sudo su

     apt install zfs

So konfigurieren Sie ZFS

Sobald ZFS im System installiert ist, muss als nächstes ein Pool (auch bekannt als Zpool) erstellt werden. Ein Pool besteht aus einer Gruppe von Festplatten, die miteinander kombiniert werden, und innerhalb dieses Pools befinden sich Datensätze, in denen die Daten tatsächlich gespeichert sind. In dieser Phase wird ein Pool und ein Datensatz erstellt.

Geben Sie entweder lsblk ein, um Blockgeräte im System aufzulisten, oder ls -l /dev/sd*, um alle /dev-Blöcke aufzulisten. In beiden Fällen wird eine Liste der von Ubuntu erkannten Blockgeräte zurückgegeben. In diesem Tutorial wird davon ausgegangen, dass das System über mehrere Festplatten verfügt, die tatsächlich zu einem Pool zusammengefasst sind.

Vor dem Erstellen eines Pools. Auf jeder Festplatte muss eine GUID-Partitionstabelle erstellt werden. Partitionstabelle ist eine Art Schema, das bei der Partitionierung der Festplatten hilft. Zpool erfordert, dass die Festplatten darüber verfügen, bevor der Pool erstellt wird. Verwenden Sie die folgenden Befehle, um die Partitionstabelle auf den an die Systeme angeschlossenen Ersatzfestplatten zu erstellen. hier sind Ersatzfestplatten /dev/sdb und /dev/sdc

     parted /dev/sdb      mklabel GPT      q      parted /dev/sdc      mklabel GPT      q 

Sobald die Partitionstabelle auf jeder Festplatte erstellt wurde, erstellen Sie jetzt den zpool. Da hier nur zwei Festplatten verwendet werden, verwenden Sie Spiegelgruppen, aber wenn es 3 oder mehr Festplatten gibt, verwenden Sie raidz, und für 4 oder mehr verwenden Sie raidz2-Befehle. Spiegelung wird auch als RAID 1 bezeichnet, das Daten nahtlos von einem Laufwerk auf ein anderes kopiert, was sehr nützlich ist, um die Datenredundanz zu erhöhen.

     zpool vol0-Spiegel erstellen /dev/sdb /dev/sdc

An dieser Stelle ist bereits ein Pool erstellt, jetzt erstellen Sie den Datensatz, wo eigentlich die Daten enthalten sind, die Dateien, Verzeichnisse, speichert.

Ein Format zur Erstellung von Datensätzen geht wie folgt…

     zfs erstellen / < directory name>

Verwenden Sie dieses Format und erstellen Sie ein paar Verzeichnisse, wie im folgenden Screenshot zu sehen.

     zfs erstellen vol0/dondilanga_files

     zfs erstellen vol0/dondilanga_images

     zfs create vol0/dondilanga_music

     zfs erstellen vol0/dondilanga_movies

     zfs erstellen vol0/dondilanga_games

Das Erstellen des Datensatzes reicht nicht aus, um eine funktionierende Dateistruktur zu haben, es müssen auch die richtigen Berechtigungen (siehe Linux-Dateiberechtigungen) gesetzt werden. Die Berechtigungseinstellung ist recht einfach, da sie dem Standardformat für Berechtigungssätze folgt.

     chown -R Benutzername:Gruppenname /poolname/dataset

     chown -R dondilanga:users /vol0/dondilanga_files

So überwachen Sie ZFS

Die Überwachung umfasst normalerweise das Überprüfen des Poolstatus, IO-Statistiken, Auflisten der verfügbaren Pools, Auflisten bestimmter Details des Pools, Anzeigen des Poolstatus im ausführlichen Modus, Auflisten von ZFS-Dateisystemen usw. Diese Informationen bieten wertvolle Einblicke in die Pools und Datensätze und sind sehr nützlich, um Entscheidungen in Bezug auf die ZFS-Dateisysteme zu treffen.

Überprüfen des Gesundheitszustands des Pools

     zpool-Status

Überprüfen der Input/Output (IO)-Statistiken für die Pools

     zpool iostat

Verfügbare Pools auflisten

     zpool-Liste

Listen Sie besondere Details des Pools auf

     zpool list -o Name,Größe,Kapazität

Siehe Liste der Dateisysteme (Datensatz) Im Pool.

     zfs-Liste

Sehen Sie sich die Statistiken des Pools alle 15 Sekunden an.

     zpool iostat -v 15

So verwalten, optimieren und warten Sie ZFS

Dieses Segment behandelt die verschiedenen Arten von Pools, wie man sie erstellt, Blockgeräte in Pools erstellt, Pools zerstört oder entfernt (das Entfernen ist nützlich, wenn ein Pool auf einer USB-Festplatte oder einem ähnlichen Wechselspeicher erstellt wird), verschiedene Eigenschaften auf . setzen Becken, Montage und Demontage.

Verschiedene Arten von Pools

Es gibt 4 Hauptpooltypen, und jeder hat seinen eigenen Zweck, sie zu erstellen. Normalerweise wird hier der RAID-Typ beim Erstellen eines Pools berücksichtigt. Wie bereits beschrieben muss der Typ beim Anlegen des Pools mit angegeben werden. Dieses Tutorial verwendet den Spiegelpooltyp, ansonsten gibt es raidz für RAID5, raidz2 für RAID5 mit Duell-Parität und wenn keine Redundanz beteiligt ist, wird kein Pooltyp angegeben.

Stripe- oder Nicht-Redundanz-Gruppen können zum Beispiel so viel wie Festplatten haben… wie im folgenden Befehl. Jede sd* stellt eine neue virtuelle/physische Festplatte dar, und alle können mit dem folgenden Befehl unter dem Namen vol1 zu einem einzigen Pool zusammengefasst werden.

     zpool create vol1 /dev/sdb /dev/sdc /dev/sdd

Wie im folgenden Screenshot zu sehen, sind jetzt alle oben genannten Festplatten Teil des Pools vol1, der erweitert werden kann, um die Komponenten mit zu sehen zpool iostat Befehl.

Im Gegensatz zum obigen Beispiel werden Festplatten in der Spiegelgruppe paarweise gruppiert.

     zpool vol1 Spiegel erstellen /dev/sda /dev/sdb Spiegel/dev/sdc /dev/sdd

Blockgerät in einem Pool erstellen

Blockgeräte sind Datensätze, die im Pool erstellt werden und zu Beginn eine vordefinierte Größe haben. Wenn beispielsweise ein Blockgerät mit einer Größe von 1 GB erstellt wird, wiegt dieses bestimmte Blockgerät 1 GB. Im folgenden Beispiel wird gezeigt, wie Sie ein Blockgerät in einem bestehenden Pool erstellen.

     zfs create -V /

     zfs create -V 1GB vol0/dondilanga_new1

Einen Pool zerstören

Zweifellos ist es wichtig zu wissen, wie man einen Pool zerstört, genauso wie man einen erstellt, aber dies muss äußerst sorgfältig erfolgen, da es keine Möglichkeit gibt, ihn zurückzunehmen, wenn er weg ist, da das Löschen dauerhaft ist, es sei denn, die Daten werden an anderer Stelle gesichert.

     zpool zerstören poolname

     zpool zerstören vol0

Nachdem der Pool gelöscht wurde, können Sie versuchen, den verfügbaren Pool mit dem Listenparameter im Befehl zpool aufzulisten. Wenn er "keine Pools verfügbar" zurückgibt, bedeutet dies, dass das Löschen erfolgreich war.

Entfernen/Wiederherstellen eines Pools

Was dies bedeutet, entfernen Sie den Pool vorübergehend aus dem System und binden Sie ihn bei Bedarf wieder ein. Dies ist sehr nützlich, wenn ein Pool auf einer USB-Festplatte/-Festplatte oder einem anderen tragbaren Gerät erstellt wird. Webadministratoren können einen Pool auf ihrer tragbaren Festplatte erstellen, Systemdaten darauf kopieren, aushängen und zur Verwendung mit nach Hause nehmen. Die folgenden Befehle zeigen, wie Sie einen Pool entfernen und wieder mounten.

     zpool export poolname

     zpool export vol0

     zpool import poolname

     zpool import vol0

Hinzufügen einer neuen Festplatte zum Pool

Da es viele Pooltypen gibt, können die Festplatten auf verschiedene Weise zum Pool hinzugefügt werden. Die übliche Methode zum Hinzufügen einer Festplatte ist die als Ersatz. Was es bedeutet, wenn eine der Festplatten nicht funktioniert, wird die Ersatzfestplatte verwendet, um die defekte zu ersetzen. Eine Ersatzfestplatte wird wie folgt hinzugefügt.

Hier werden die verfügbaren Festplatten aufgelistet. Wie im folgenden Screenshot zu sehen. Die Festplatte sdd ist derzeit für das Betriebssystem verfügbar; daher wird es hier verwendet.

     ls -l /dev/sd*

Wie üblich wird es zuerst formatiert, bevor es zum Pool hinzugefügt wird. Die folgenden Befehle formatieren die Festplatte mit dem GUID-Partitionsschema.

     getrennt /dev/sdd

     mklabel GPT

     q

Sobald es formatiert ist, fügen Sie es mit dem folgenden Befehl zum Pool hinzu.

     zpool vol0 spare /dev/sdd . hinzufügen

Geben Sie dann zpool status -v ein, um alle verfügbaren Festplatten in zpools aufzulisten. Wie im folgenden Screenshot zu sehen ist, sind die Ersatzlaufwerke als „Spares“ gekennzeichnet und werden nur verwendet, wenn die Hauptlaufwerke ausgefallen sind.

So erstellen Sie Snapshots auf ZFS?

Snapshot ist eine exakte Nachbildung eines bestimmten Zpools und wird mit dem Befehl zfs erstellt, wie im folgenden Screenshot gezeigt. Der Erstellungsprozess von Schnappschüssen ist ein Spaziergang im Park, obwohl einige Tutorials es komplizierter als nötig machen. Das Format des Befehls zum Erstellen von Schnappschüssen ist.

     zfs-Schnappschuss [email protected]

     zfs-Schnappschuss [email protected]_snapshot

Einen Schnappschuss wiederherstellen

Das Wiederherstellen eines Snapshots im Pool ist genauso einfach wie das Sichern. Alles was Sie tun müssen, ist seinen Namen zusammen mit dem Poolnamen anzugeben. Beachten Sie, dass beim Zurückspeichern eines Snapshots in den Pool die derzeit im Pool vorhandenen Daten überschrieben werden. daher muss es mit Bedacht gemacht werden.

     zfs-Rollback [email protected]

     zfs-Rollback [email protected]_snapshot

Schnappschuss löschen

Snapshots erstellen, wiederherstellen und löschen, all das geht mit ZFS walk einfach im Park. Der folgende Befehl löscht einfach den Snapshot aus dem System; und somit mehr Platz dafür freigeben.

     zfs zerstören [email protected]

     zfs zerstören [email protected]_snapshot

Kostenlose und Open-Source-Spiele-Engines für die Entwicklung von Linux-Spielen
Dieser Artikel behandelt eine Liste von kostenlosen und Open-Source-Spiele-Engines, die für die Entwicklung von 2D- und 3D-Spielen unter Linux verwend...
Shadow of the Tomb Raider für Linux Tutorial
Shadow of the Tomb Raider ist die zwölfte Erweiterung der Tomb Raider-Reihe – ein Action-Adventure-Franchise von Eidos Montrealdos. Das Spiel wurde vo...
So steigern Sie die FPS unter Linux?
FPS steht für Bilder pro Sekunde. Die Aufgabe von FPS besteht darin, die Bildrate bei Videowiedergaben oder Spielleistungen zu messen. In einfachen Wo...