So verwalten Sie geschichtete lokale Lagerung mit Stratis auf RHEL 8

So verwalten Sie geschichtete lokale Lagerung mit Stratis auf RHEL 8
Stratis ist eine lokale Lösung für das Management des Redhat-Teams, das mit RHEL 8 eingeführt wurde, mit dem Systemadministratoren erweiterte Speicherfunktionen konfigurieren können, wie z. B.:
  1. Poolbasierte Management
  2. Dünne Bereitstellung
  3. Dateisystem -Schnappschüsse
  4. Überwachung

Stratisd ist der Daemon hinter Stratis und hilft bei der Konfiguration von Speicherkomponenten im XFS-Dateisystem und im Gerätekarten-Subsystem. Im Moment unterstützt Stratis LVM logische Volumes, Festplatte, SSDs, Nvme, Und Iscis Speichergeräte.

Nehmen wir nun einen Tauchgang und schauen Sie uns einige grundlegende Schlüsselbegriffe an

  1. Blockdev: Dies ist eine Terminologie, die sich auf blockierte Geräte bezieht.
  2. Schwimmbad: Ein Pool kann entweder ein einzelnes oder mehrere Blockgeräte umfassen. Die Größe eines Stratis -Pools entspricht der Summe der Blockgeräte, die den Pool ausmachen.
  3. Dateisystem: Ein Dateisystem ist eine dünn bereitgestellte Schicht, deren Größe wächst, wenn weitere Informationen oder Daten hinzugefügt werden. Die Größe eines Dateisystems wird durch Stratis automatisch vergrößert, da die Daten fast auf die Größe des virtuellen Dateisystems wachsen.

Stratis besteht aus:

  1. Stratisd Dämon: Ein Daemon, mit dem ein Benutzer Blockgeräte verwalten kann.
  2. Stratis-Cli: Ein Befehlszeilen-Dienstprogramm, das mit Stratis einhergeht.

Installieren von Stratis auf RHEL 8

Nachdem wir Stratis, die, was es und seine Komponenten macht, kurz eingeführt hat, werden wir jetzt Stratis auf RHEL 8 installieren

Um Stratis auf RHEL 8 zu installieren, melden Sie sich als Root -Benutzer an und führen Sie den Befehl aus:

# DNF install Stratisd Stratis-Cli

Geben Sie bei der Aufforderung y ein, um mit der Installation fortzufahren. Wenn alles gut lief, sollten Sie in der Lage sein, die Ausgabe unten zu erhalten, die bestätigt, dass alles gut lief.

Führen Sie den Befehl aus, um die Installation der Stratis -Pakete zu bestätigen:

# RPM -q Stratisd Stratis -Cli

Startstratis -Service auf RHEL 8 starten

Führen Sie den Befehl aus, um den Stratis -Dienst zu starten, um den Befehl auszuführen:

# Systemctl aktivieren -jetzt Stratisd

Überprüfen Sie als nächstes den Status von Stratis, indem Sie den Befehl ausführen:

# Systemctl Status Stratisd

Aus dem obigen Ausgang können wir beobachten, dass Stratis in Betrieb ist.

Erstellen eines Stratis -Pools

Stellen Sie sicher, dass die Blockgeräte auf Ihrem System mit der Erstellung eines Stratis -Pools beginnen. Darüber hinaus müssen diese Geräte unmontiert und untätig sein. Zusätzlich muss Stratisd Daemon ausgeführt werden. In unserem Setup gibt es neben der primären Partition 5 Blockgeräte:

  1. /dev/xvdb
  2. /dev/xvdc
  3. /dev/xvdd
  4. /dev/xvde
  5. /dev/xvdf

Sie können einen Einblick in die vorhandenen Blockgeräte haben, indem Sie den Befehl ausführen:

# LSBLK

Außerdem ist es wichtig sicherzustellen, dass die Blockgeräte keine vorhandene Partitionstabelle haben.

Bestätigen Sie dies mit der Syntax:

# blkid -p /

Zum Beispiel

# blkid -p /dev /xvdb

Keine Ausgabe impliziert, dass auf den Blockgeräten keine Partitionstabelle vorhanden ist. Für den Fall, dass auf einem der Geräte eine Partitionstabelle vorhanden ist, können Sie die Partition mit dem Befehl auslöschen:

# WILEFS -A /

Erstellen eines Stratis -Pools von einem Blockgerät aus

Mit der Syntax können Sie einen Stratis -Pool aus einem einzigen Blockgerät erstellen:

# Stratis Pool erstellen

Zum Beispiel, um einen Pool zu erstellen Pool_1 Aus dem Blockgerät /dev/xvdb laufen:

# Stratis Pool erstellen Pool_1 /dev /xvdb

Um den erstellten Pool aufzulisten, rennen Sie:

# Stratis Poolliste

Aus der obigen Ausgabe können wir deutlich sehen, dass ein neuer Pool, Pool_1 wurde erschaffen.

Erstellen Sie einen Stratis -Pool aus mehreren Blockgeräten

Verwenden Sie, um einen Pool aus mehreren Geräten zu erstellen

# Stratis Pool erstellen

Um einen Pool aus zu erstellen /dev/xvdc Und /dev/xvdd Führen Sie den Befehl aus:

# Stratis Pool erstellen Pool_2/dev/xvdc/dev/xvdd/

Listen Sie erneut die verfügbaren Pools mit dem Befehl auf:

# Stratis Poolliste

Zu diesem Zeitpunkt sollten Sie 2 Pools haben: Pool_1 und Pool_2

Aus der obigen Ausgabe können wir deutlich beachten, dass Pool_2 doppelt so groß ist wie Pool_1, da er zwei Blockgeräte umfasst, von denen jedes ein physisches Volumen von 10 GB hat.

Erstellen eines Dateisystems aus einem Pool aus

Aus einem der zuvor erstellten Stratis -Pools können Sie ein Dateisystem mit der folgenden Syntax erstellen:

# Stratis fs erstellen

Zum Beispiel zum Erstellen eines Dateisystems FS_1 aus Pool_1 Führen Sie den Befehl aus:

# Stratis fs erstellen pool_1 fs_1

Außerdem können Sie mehr als 1 Dateisystem aus einem Pool erstellen. Im zweiten Pool erstellen wir 2 Dateisysteme:

FS_2
& fs_3
# Stratis fs erstellen pool_2 fs_2
# Stratis fs erstellen pool_2 fs_3

Um die neuen Dateisysteme anzuzeigen, finden Sie nun aus:

# Stratis FS -Liste

Verwenden Sie die Syntax, um Dateisysteme in einem bestimmten Pool aufzulisten

# Stratis FS -Liste

Führen Sie zum Beispiel den Befehl aus:

# Stratis FS List Pool_1

Für Pool_2 rennen:

# Stratis FS List Pool_2

Wie erwartet haben wir 2 Dateisysteme im zweiten Pool.

An diesem Punkt das leiten LSBLK Der Befehl ergibt eine Ausgabe ähnlich wie unten:

So montieren Sie ein Stratis -Dateisystem

Um auf die Dateisysteme zuzugreifen, müssen wir sie zunächst montieren. Der erste Schritt besteht darin, Mountspunkte für jedes der Dateisysteme zu erstellen. Dies ist in der folgenden Tabelle zusammengefasst

Dateisystem Einhängepunkt
FS_1 /Lagerung
FS_2 /Datenbank
FS_3 /Backup

Erstellen Sie also den ersten Mountspunkt für das Dateisystem in Pool_1

# Mkdir /Speicherplatz

Anschließend das Dateisystem montieren

# Mount /Stratis /Pool_1 /FS_1 /Speicherplatz

Um das zweite Dateisystem zu montieren, befolgen Sie die gleiche Prozedur:

# Mkdir /Datenbank

Montieren Sie das Dateisystem:

# Mount /Stratis /Pool_2 /fs_2 /Datenbank

Und schließlich für das letzte Dateisystem:

# Mkdir /Backup

Montieren Sie das Dateisystem:

# Mount /Stratis /Pool_2 /FS_3 /Backup

Sie können die Existenz der Mountspunkte mit dem Befehl bestätigen:

# df -th | Grep Stratis

Machen Sie Stratis -Dateisysteme anhaltend

Die Dateisysteme, die wir gerade erstellt haben. Um sie anhaltend zu machen, müssen wir sie dem hinzufügen /etc/fstab Datei.

Lassen Sie uns zunächst die UUID der Dateisysteme wie gezeigt abrufen

# blkid -p/stratis/pool_1/fs_1
# blkid -p/stratis/pool_2/fs_2
# blkid -p/stratis/pool_2/fs_3
# echo "uUid = 9161da55-6c4b-4761-9da9-1b3999945964 /Speicherplatz
XFS Standards 0 0 "| sudo tee -a /etc /fstab
# echo "uUid = ddfa4252-a9d6-4c10-8981-e7dbd56450ee /Datenbank
XFS Standards 0 0 "| sudo tee -a /etc /fstab
# echo "uUid = 512BC0B7-182E-46ED-9FBD-D5BE4D055FCF /BACKUP
XFS Standards 0 0 "| sudo tee -a /etc /fstab

Sie können die Hinzufügung der Dateisysteme zum Hinzufügen der Dateisysteme bestätigen /etc/fstab wie gezeigt:

Führen Sie den Befehl aus:

# Systemctl Daemon-Reload

Dann alle Dateisysteme montieren

# Mount -a

Hinzufügen eines Blockgeräts zu einem Stratis -Pool

Fügen Sie einen Blockgerät zu einem vorhandenen Stratis -Pool hinzu, und führen Sie den Befehl aus:

# Stratis Pool Add-Data

Zum Beispiel, um das Blockvolumen hinzuzufügen /dev/xvde Zu Pool_1 Führen Sie den Befehl aus:

# Stratis Pool Add-Data Pool_1 /Dev /XVDE

Überprüfen Sie nun die Größe von Pool_1

# Stratis Poolliste

Wie beobachtet, die Größe von Pool_1 hat sich als Ergebnis des zusätzlichen Blockgeräts verdoppelt.

Erstellen eines Stratis -Snapshots

Ein Stratis -Dateisystem ist eine genaue Kopie oder Nachbildung eines anderen Stratis -Dateisystems. Es enthält den gleichen Inhalt wie das Original -Dateisystem. Es kann jedoch später ein Schnappschuss geändert werden, und es werden Unterschiede zwischen dem Snapshot und dem Original -Dateisystem bestehen.

Hier sind einige Dinge, die Sie auch wissen sollten:

  1. Ein Schnappschuss eines Dateisystems ist einfach ein weiteres Replikat -Dateisystem.
  2. Sie müssen kein Dateisystem montieren, um einen Snapshot daraus zu erstellen.
  3. Ein schnappschrottes Dateisystem kann das Original -Dateisystem überleben, aus dem es erstellt wurde

Verwenden Sie zum Erstellen eines Snapshots die Syntax:

# Stratis FS Snapshot

Zum Beispiel zum Erstellen eines Schnappschusss aufgerufen snapshot_1 In Pool_1 Führen Sie den Befehl aus

# Stratis FS Snapshot Pool_1 FS_1 Snapshot_1

Dies wird ungefähr 30 Sekunden dauern.

Führen Sie aus, um die Erstellung des Schnappschusss zu bestätigen:

# Stratis -Dateisystemliste

In diesem Fall wird der Befehl sein:

# Stratis Filesystem List Pool_1

Zusätzlich können Sie das Datumsattribut hinzufügen (-$ (Datum +%y-%M-%d) leicht zu identifizieren, wann der Schnappschuss erstellt wurde. Erstellen wir einen weiteren Schnappschuss mit dem zweiten Pool.

# Stratis FS Snapshot Pool_2 FS_2 Snapshot_2-$ (Datum +%y-%M-%d)

Um den neu erstellten Stratis Snapshot aufzulisten, geben Sie den Befehl aus:

# Stratis Filesystem List pool_2

Aus der obigen Ausgabe können wir einen Schnappschuss sehen, der in erstellt wurde Pool_2 mit einem Date -Tag.

So können Sie mit einem Dateisystem zu einem früheren Schnappschuss zurückkehren

Um mit einem Dateisystem in einen früheren Schnappschuss zurückzukehren.

# Umount /Stratis //Dateisystem

Zum Beispiel in Pool_2 zurückkehren zu snapshot_2 Das Dateisystem entlasten FS_2

# Umount/Stratis/Pool_2/fs_2

Erstellen Sie als Nächstes eine Kopie des Snapshots aus dem Original -Dateisystem

# Stratis Dateisystem Snapshot
Snapshot FS-Mountpoint

Der Befehl wird sein:

# Stratis Filesystem Snapshot Pool_2 Snapshot_2-2019-11-15 Datenbank

Montieren Sie den Snapshot mithilfe des Dateisystem -Mountspunkts schließlich

# Mount /Stratis /Pool_2 /fs_2 /Datenbank

Entfernen eines Stratis -Snapshots

Um einen Stratis -Snapshot zu entfernen, montieren Sie zunächst den Schnappschuss.

# Umount /snapshot_mountpoint

Um den in erstellten Schnappschuss zu entfernen, Pool_2, den Mountpoint wie gezeigt entfernen

# Umount /Datenbank

Als nächstes fahren Sie fort und zerstören Sie den Schnappschuss:

# Stratis -Dateisystem zerstören

Der Befehl wird sein:

# Stratis Dateisystem zerstören Pool_2 Snapshot_2-2019-11-15

Versuchen Sie nun, die Dateisysteme in pool_2 aufzulisten. Sie werden bemerken, dass der Schnappschuss jetzt weg ist.

# Stratis Filesystem List pool_2

Entfernen eines Stratis -Dateisystems

Um ein Dateisystem loszuwerden, entlasten Sie das Dateisystem zunächst mit der folgenden Syntax:

# Umount/Stratis/Pool/Dateisystem

Zum Beispiel, um das Dateisystem zu entfernen FS_1 In Pool_1, Zuerst nicht wie gezeigt abgebildet:

# Umount/Stratis/Pool_1/fs_1

Zerstören Sie das Dateisystem mit der folgenden Syntax:

# Stratis Filesystem zerstören Pool FS

In unserem Szenario wird der Befehl sein:

# Stratis Dateisystem zerstören Pool_1 FS_1

Um zu bestätigen, dass das Dateisystem erfolgreich entfernt wurde, führen Sie den Befehl aus:

# Stratis Filesystem List Pool_1

Wie Sie beobachten können, existiert das Dateisystem nicht mehr.

Entfernen eines Stratis -Pools

Lassen Sie uns zuletzt sehen, wie Sie einen Stratis -Pool entfernen können.

Um einen Stratis -Pool zu entfernen, müssen Sie alle Dateisysteme und Schnappschüsse im Pool, wie wir in den vorherigen Unterthemen gesehen haben.

Da auf Pool_1 noch ein Schnappschuss vorhanden ist

# Umount /Speicherung

Zerstören Sie das Dateisystem als nächstes.

# Stratis Dateisystem zerstören Pool_1 Snapshot_1

Entfernen Sie mit dem jetzt entfernten Snapshot den Befehl mit dem Befehl

# Stratis Pool zerstören Pool_1

Listen Sie nun die verfügbaren Pools auf:

# Stratis Poolliste

Zu entfernen Pool_2 , Listen wir zunächst die Dateisysteme auf

# Stratis Filesystem List pool_2

Entfernen und zerstören Sie die Dateisysteme wie gezeigt

# Umount/Stratis/Pool_2/fs_3
# Stratis Dateisystem zerstören Pool_2 FS_3
# Stratis -Dateisystem Zerstörepool_2 Datenbank

Zerstören Sie den Pool und listen Sie die Pools auf

# Stratis Pool zerstören Pool_2
# Stratis Poolliste

Perfekt ! Alle Pools sind jetzt weg. Wir sind dorthin zurückgegangen, wo wir angefangen haben ! Sie können erneut bestätigen, indem Sie die Sperrgeräte mit dem Befehl auflisten:

und wie Sie es verwenden können, um Blockgeräte zu verwalten, Schnappschüsse, Dateisysteme und Pools zu erstellen und sie auch zu entfernen. Ihre Gedanken und Feedback sind sehr willkommen.