Nachdem Sie die Installation von ZFS unter Ubuntu 20.04 abgeschlossen haben, besteht der nächste Schritt darin, einige Konfigurationen mit Ihren Festplatten vorzunehmen. Es gibt viele Möglichkeiten mit ZFS, und wofür Sie sich entscheiden, hängt davon ab, wie viele Laufwerke Ihnen zur Verfügung stehen und was Ihre Speicherziele sind. Möchten Sie sich bei Ihrem Speicherarray zum Beispiel lieber auf Geschwindigkeit oder Redundanz konzentrieren? Hast du 3 Festplatten oder 20? Was ist mit der Verschlüsselung?
Für welche Art von Konfiguration Sie sich auch entscheiden, wir zeigen Ihnen in diesem Handbuch, wie Sie beginnen können. Lesen Sie weiter, während wir grundlegende Verwendungsbefehle in ZFS behandeln und zpools, RAID-Z, Verschlüsselung und mehr einrichten.
In diesem Tutorial lernen Sie:
- So installieren Sie ZFS unter Ubuntu 20.04
- Wie man Zpools erstellt und zerstört
- Konfigurieren Sie verschiedene Ebenen von RAID und RAID-Z
- So verwenden Sie die Verschlüsselung mit ZFS
ZFS auf Ubuntu 20.04
Kategorie | Anforderungen, Konventionen oder verwendete Softwareversion |
---|---|
System | Ubuntu 20.04 Focal Fossa installiert oder aktualisiert |
Software | ZFS-Dienstprogramme |
Andere | Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl. |
Konventionen | # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden |
Voraussetzungen
Das einzige, was Sie brauchen, um mit ZFS zu beginnen und unserem Leitfaden zu folgen, ist Ubuntu 20.04 Focal Fossa, einige Festplatten, die Sie in Ihren Speicher-Arrays verwenden möchten, und die auf Ihrem System installierten ZFS-Dienstprogramme. Wenn Sie ZFS noch nicht installiert haben, können Sie ein Terminal öffnen und zfsutils-linux
installieren Paket mit diesen beiden Befehlen:
$ sudo apt update $ sudo apt install zfsutils-linux
Mit dem folgenden Befehl im Terminal können Sie überprüfen, ob ZFS installiert ist:
$ zfs --versionÜberprüfen Sie die ZFS-Version, um sicherzustellen, dass ZFS auf Ihrem System installiert ist
Grundlegende Verwendung und Befehle von ZFS
Wir haben einige Festplatten in unserem Testsystem, die wir mit ZFS verwenden möchten. In diesem Abschnitt zeigen wir Ihnen verschiedene Dinge, die Sie damit machen können.
Wenn Sie neue Festplatten an Ihr System anschließen, adressiert ZFS sie mit ihrem Gerätenamen – normalerweise so etwas wie /dev/sda
oder ähnliches. Sie können die fdisk
verwenden Befehl, um zu sehen, welche Festplatten Sie zur Verfügung haben.
$ sudo fdisk -lDer Befehl fdisk zeigt uns alle Festplatten auf unserem System, die in zpools verwendet werden können
ZFS-Speicherpools erstellen und löschen
ZFS funktioniert durch „Pooling“ von Festplatten. Diese Pools (allgemein als „zpools“ bezeichnet) können für verschiedene RAID-Level konfiguriert werden.
Der erste Zpool, den wir uns ansehen werden, ist ein RAID 0. Dies funktioniert, indem Sie Ihre Daten auf mehrere Festplatten verteilen. Wenn eine Datei aus dem Speicherpool gelesen oder in ihn geschrieben wird, arbeiten alle Festplatten zusammen, um einen Teil der Daten darzustellen. Dies bietet Ihnen einen Geschwindigkeitsschub für Ihre Lese- und Schreibgeschwindigkeiten, aber es tut nichts für die Redundanz. Tatsächlich führt jeder Festplattenausfall im Pool zu einem vollständigen Datenverlust.
$ sudo zpool create mypool /dev/sdb /dev/sdcDer zpool status Befehl zeigt unseren RAID 0 Striped zpool
Dieser Befehl hat einen ZFS-Speicherpool namens „mypool“ mit zwei Festplatten erstellt, /dev/sdb
und /dev/sdc
. Sie können jederzeit Details zu Ihren Speicherpools anzeigen, indem Sie diesen Befehl ausführen:
$ zpool status
Und Sie können einen präziseren Bericht Ihrer ZFS-Speicherpools anzeigen, indem Sie Folgendes ausführen:
$ zpool listAusgabe des zpool list-Befehls
Ihr neu erstellter Pool wird automatisch für Sie montiert und Sie können ihn sofort nutzen. Ein nettes Feature von ZFS ist, dass Sie keinen langwierigen Partitionierungs- (bei Verwendung ganzer Festplatten) oder Formatierungsprozess durchlaufen müssen. Der Speicher ist einfach sofort zugänglich.
$ df -hT | grep zfsVerwenden Sie den Befehl df, um Ihren gemounteten zpool anzuzeigen
Wenn Sie dem Pool eine weitere Festplatte hinzufügen möchten, sehen Sie sich diesen Befehl an, in dem wir die Festplatte /dev/sdd
hinzufügen zu unserem zuvor erstellten mypool
Speicherpool:
$ sudo zpool add mypool /dev/sdd
Dass das Laufwerk zum zpool hinzugefügt wurde, können Sie am zpool status
erkennen Befehl.
Wir können unseren zpool jederzeit mit folgendem Befehl zerstören:
$ sudo zpool destroy mypoolZerstörung unseres Zpools
Im Fall von RAID 0-Zpools können Sie keine Festplatte aus dem Pool entfernen, ohne den Pool vollständig zu zerstören und alle Daten zu verlieren. ZFS bietet viele verschiedene Optionen, von denen einige das Entfernen oder Versagen von Festplatten ermöglichen, während die Integrität des Pools erhalten bleibt.
Andere Arten von ZFS-Speicherpools werden auf die gleiche Weise erstellt, wie wir es Ihnen oben gezeigt haben, aber Sie müssen ein zusätzliches Argument im zpool
angeben Befehl beim Erstellen des Pools. Sehen wir uns einige Beispiele an.
Ein gespiegelter Speicherpool ist das Äquivalent von ZFS zu RAID 1. Dadurch erhalten Sie Redundanz, da alle Ihre Daten von einer Festplatte auf eine oder mehrere andere gespiegelt werden. Um einen gespiegelten Speicherpool zu erstellen, verwenden Sie die folgende Befehlssyntax:
$ sudo zpool create mypool mirror /dev/sdb /dev/sdcErstellen eines gespiegelten (RAID 1) Zpools
Natürlich können dem Pool weitere Festplatten hinzugefügt werden, um zusätzliche Redundanz zu schaffen.
Werfen wir nun einen Blick auf RAID-Z-Pools. RAID-Z ist RAID 5 sehr ähnlich, verbessert es jedoch mit höherer Geschwindigkeit und vermeidet einige der häufigsten Fehler, die mit RAID 5 verbunden sind.
RAID-Z bietet Ihnen Geschwindigkeit plus Redundanz durch Striping auf Blockebene und verteilte Parität. Es sind drei RAID-Z-Typen verfügbar, je nachdem, wie viel Parität Sie wünschen.
- raidz1 (oder nur raidz) – einzelne Parität
- raidz2 – doppelte Parität
- raidz3 – dreifache Parität
So können Sie einen RAID-Z-Pool erstellen. Verwenden Sie raidz2
oder raidz3
anstelle von raidz
in diesem Befehl, wenn Sie mehr Parität wünschen (denken Sie daran, dass Sie in diesem Fall auch zusätzliche Festplatten benötigen):
$ sudo zpool create mypool raidz /dev/sdb /dev/sdc /dev/sddErstellen eines RAID-Z-Zpools
Verschlüsselung auf ZFS
Nachdem Sie Ihren ZFS-Speicherpool erstellt haben, können Sie die Verschlüsselung darauf mit den folgenden Befehlen konfigurieren. Für dieses Beispiel verwenden wir immer noch unseren RAID-Z-Pool mit drei Festplatten namens mypool.
$ sudo zfs create -o encryption=on -o keylocation=prompt -o keyformat=passphrase mypool/encrypted
Sie werden aufgefordert, zweimal eine Passphrase für die Verschlüsselung einzugeben.
Verschlüsselung mit ZFS konfigurieren
Ein neues Verzeichnis wird unter /mypool/encrypted
erstellt , und alles in diesem Verzeichnis ist verschlüsselt. Bei jedem Neustart müssen Sie das verschlüsselte Dataset manuell mounten. Achten Sie darauf, das -l
zu verwenden Flag beim Mounten verschlüsselter Datensätze. Sie werden aufgefordert, die zuvor gewählte Passphrase einzugeben.
$ sudo zfs mount -l mypool/encryptedMounten des verschlüsselten ZFS-Datensatzes
Schlussfolgerung
ZFS ist ein Dateisystem, das sich auf Hochverfügbarkeit und Datenintegrität konzentriert. Es ist perfekt für Speicher-/NAS-Server und alle Umgebungen, in denen Lese- und Schreibgeschwindigkeiten zusammen mit Festplattenredundanz entscheidend sind.
In diesem Handbuch haben wir einige grundlegende Verwendungsbefehle für ZFS in Ubuntu 20.04 Focal Fossa kennengelernt. Wir haben Ihnen gezeigt, wie Sie mit zpools beginnen können, ZFS auf Ihrem eigenen System zu konfigurieren, aber die Konfiguration für ZFS kann weitaus umfangreicher werden.