Konfigurieren Sie den ISCSI -Speicherserver auf CentOS 8

Konfigurieren Sie den ISCSI -Speicherserver auf CentOS 8
In diesem Artikel werde ich Ihnen zeigen, wie Sie ISCSI Storage Server auf CentOS 8 konfigurieren können. Also lasst uns anfangen.

Grundlagen von ISCSI:

Der ISCSI -Speicherserver wird verwendet, um Blockgeräte wie HDD/SSD -Partitionen oder LVM -Partitionen oder Blockdateien im Netzwerk zu teilen. ISCSI -Clients können diese Aktien über das Netzwerk genauso verwenden, genau wie die gewöhnliche Festplatte oder SSD, die darauf montiert sind. Der ISCSI -Client kann diese Festplatten formatieren, montieren und Dateien und Verzeichnisse wie gewohnt speichern.

Abb. 1: ISCSI Server-Client-Architektur

Jeder ISCSI -Client verfügt über eine Initiator -ID, mit der eine Verbindung zu den Zielen auf dem Server hergestellt wird.

Die Ziele sind Freigaben auf dem ISCSI -Server. Jedes Ziel besteht aus einem einzigartigen Namen (IQN), dem Pfad des Blockgeräts (i.e. Festplattenpartition oder Blockdatei), die Initiator-ID, die eine Verbindung zu diesem Ziel herstellen kann, und ein optionales Benutzername-Password-Basis-Authentifizierungssystem.

In Abb. 1 ermöglicht der ISCSI -Speicherserver 3 Initiatoren (3 ISCSI -Clients), eine Verbindung zu 4 Zielen herzustellen. Initiator01 kann eine Verbindung zu target01 Und target02, Initiator02 kann eine Verbindung zu target03, Und Initiator03 kann eine Verbindung zu target04.

ISCSI -Ziel- und Initiator -Namenskonventionen:

Der ISCSI -Zielname und der Initiatorname müssen eindeutig sein.

Das Zielnamenformat lautet:

iqn.Yjyy-mm.Reverse-Domain-Namen: Zielname

Beispiel:

iqn.2020-03.com.LinuxHint: www, iqn.2020-03.com.LinuxHint: Protokolle,
iqn.2020-03.com.LinuxHint: User-Bob usw.

Das Initiator -Benennungsformat lautet:

iqn.Yjyy-mm.Reverse-Domain-Name: Initiator-Namen

Beispiel:

iqn.2020-03.com.LinuxHint: Initiator01, IQN.2020-03.com.LinuxHint: Initiator02,
iqn.2020-03.com.LinuxHint: Initiator03 usw.

Netzwerktopologie:

Abb. 2: Die in diesem ISCSI -Serverartikel verwendete Netzwerktopologie

Die in diesem Artikel verwendete Netzwerktopologie ist in Abb. 2 angegeben. Hier konfiguriere ich eine CentOS 8 -Maschine als ISCSI -Server. Der ISCSI -Server verfügt über eine statische IP -Adresse 192.168.20.197. Der ISCSI -Client ist ebenfalls im Netzwerk 192.168.20.0/24. Es kann also auf den ISCSI -Server zugreifen.

Einrichten der statischen IP -Adresse:

Sie müssen eine statische IP -Adresse auf Ihrem CentOS 8 -Computer einrichten, die Sie als ISCSI -Server konfigurieren werden. Um eine statische IP -Adresse auf CentOS 8 einzurichten.

Der CentOS 8 -Computer, den ich als ISCSI -Server in diesem Artikel konfigurieren werde, enthält die statische IP -Adresse 192.168.20.197. Es wird für Sie anders sein. Stellen Sie also sicher, dass Sie es von nun an durch Ihre ersetzen.

$ ip a

Installieren von ISCSI -Server -Tools:

Aktualisieren Sie zunächst den DNF -Paket -Repository -Cache wie folgt:

$ sudo dnf makecache

Du musst haben targetcli Tool installiert auf dem CentOS 8 -Computer, das Sie als ISCSI -Server konfigurieren möchten.

Installieren targetcli, Führen Sie den folgenden Befehl aus:

$ sudo dnf install targetcli

Um die Installation zu bestätigen, drücken Sie Y und dann drücken Sie .

targetcli sollte installiert werden.

Nun, um zu testen, ob die targetcli Tool funktioniert, starten Sie targetcli folgendermaßen:

$ sudo targetcli

targetcli sollte starten.

targetcli funktioniert perfekt.

> ls

Beenden Sie nun aus dem TargetCli -Tool heraus.

> Beenden

Starte jetzt Ziel Service wie folgt:

$ sudo systemctl starten Ziel

Fügen Sie nun dem Systemstart wie folgt den Zieldienst hinzu:

$ sudo systemctl aktivieren Ziel

Dateiblöcke teilen:

Sie können Dateiblöcke als Speichergeräte über ISCSI freigeben.

Erstellen Sie zunächst ein neues Verzeichnis, in dem Sie alle Dateiblöcke wie folgt aufbewahren möchten:

$ sudo mkdir -pv /iscsi /Blöcke

Starten Sie nun TargetCli wie folgt:

$ sudo targetcli

Erstellen Sie nun eine neue 1 GB Dateio Backstore Web1 in dem Weg /iscsi/blocks/web1.img folgendermaßen:

>/BackStores/Dateio erstellen Web1/ISCSI/Blocks/Web1.IMG 1G

Der Web1 1 GB -Dateiblock sollte im Pfad erstellt werden /iscsi/blocks/web1.img

> ls /

Erstellen Sie nun ein neues ISCSI -Ziel iqn.2020-03.com.LinuxHint: Web folgendermaßen:

> /iscsi erstellen iqn.2020-03.com.LinuxHint: Web

Das ISCSI -Ziel iqn.2020-03.com.LinuxHint: Web sollte erstellt werden.

> ls /

Navigieren Sie nun wie folgt zur TPG (Zielportalgruppe) des Ziels:

> /iscsi /iqn.2020-03.com.LinuxHint: web/tpg1/

So sollte das TPG des Ziels aussehen.

> ls

Erstellen Sie nun eine LUN aus dem Web1 Dateio Backstore haben Sie früher erstellt.

> luns/create/backstores/fileio/web1

Lun 0 sollte erstellt werden.

> ls

Erstellen Sie nun eine ACL für den Initiator iqn.2020-03.com.LinuxHint: Init1 Damit der ISCSI -Client auf die LUNs in diesem Ziel zugreifen kann.

> ACLS/ erstellen IQN.2020-03.com.LinuxHint: Init1

Eine ACL sollte erstellt werden und lun 0 sollte ihm zugeordnet werden.

> ls

Speichern Sie nun die Konfiguration.

> / SaveConfig

Beenden Sie nun aus der TargetCli -Schnittstelle heraus.

> Beenden

Teilen von HDD/SSD- oder HDD/SSD -Partitionen:

Sie können auch die gesamte HDD/SSD oder eine oder mehrere HDD/SSD -Partition über ISCSI teilen. Wenn Sie die gesamte HDD/SSD teilen, sind die Partitionen dieses HDD/SSD auch vom Initiator oder dem ISCSI -Client zugänglich.

Suchen Sie zunächst den Namen HDD/SSD oder HDD/SSD -Partitionsname, den Sie mit dem folgenden Befehl teilen möchten:

$ sudo lsblk

Hier, nvme0n2 ist der SSD -Name und nvme0n2p1, nvme0n2p2 Und nvme0n2p3 sind die Partitionen dieser SSD.

Starten Sie nun TargetCli wie folgt:

$ sudo targetcli

Erstellen Sie nun einen Block -Backstore Daten1 Verwenden der HDD/SSD- oder HDD/SSD -Partition wie folgt.

> /Backstores /Block erstellen Daten1 /dev /nvme0n2p1

NOTIZ: Hier habe ich die SSD -Partition verwendet /dev/nvme0n2p1.

Der Daten1 Block Backstore sollte erstellt werden.

> ls /

Erstellen Sie nun ein neues ISCSI -Ziel iqn.2020-03.com.LinuxHint: Daten folgendermaßen:

> / iscsi / erstellen iqn.2020-03.com.LinuxHint: Daten

Ein neues ISCSI -Ziel sollte erstellt werden.

> ls /

Navigieren Sie nun wie folgt zum TPG des Ziels:

> /iscsi /iqn.2020-03.com.LinuxHint: Data/TPG1/

Die TPG des Ziels sollte wie folgt aussehen.

> ls

Erstellen Sie nun eine neue LUN aus dem Daten1 Block Backstore, die Sie früher erstellt haben.

> luns/create/backstores/block/data111

Eine neue LUN sollte erstellt werden.

> ls

Erstellen Sie nun eine ACL für den Initiator iqn.2020-03.com.LinuxHint: Init1 Damit der ISCSI -Client auf die LUNs in diesem Ziel zugreifen kann.

> ACLS/ erstellen IQN.2020-03.com.LinuxHint: Init1

Eine ACL sollte erstellt werden und lun 0 sollte ihm zugeordnet werden.

> ls

Speichern Sie nun die Konfiguration.

> / SaveConfig

Beenden Sie nun aus der TargetCli -Schnittstelle heraus.

> Beenden

Konfigurieren von Firewall:

Ermöglichen Sie nun den Zugriff auf den ISCSI -Port 3260 über die Firewall wie folgt:

$ sudo firewall-cmd --add-service = iscsi-target --permanent

Führen Sie den folgenden Befehl aus, damit die Änderungen wirksam werden sollen:

$ sudo firewall-cmd-Reload

Installieren von ISCSI -Client -Tools:

Auf dem ISCSI -Kunden müssen Sie haben ISCSI-Initiator-Utils Paket installiert, um auf die gemeinsam genutzten ISCSI -Speichergeräte zuzugreifen.

Aktualisieren Sie zunächst den DNF -Paket -Repository -Cache wie folgt:

$ sudo dnf makecache

Installieren Sie jetzt ISCSI-Initiator-Utils Paket auf dem Client -Computer wie folgt:

$ sudo dnf installieren iscsi-initiator-utils

Um die Installation zu bestätigen, drücken Sie Y und dann drücken Sie .

ISCSI -Client -Dienstprogramme sollten installiert werden.

Öffnen Sie nun die /etc/iscsi/initiatorname.iscsi Konfigurationsdatei wie folgt:

$ sudo vi/etc/iscsi/initiatorname.iscsi

Setzen Sie nun Ihren Initiatornamen auf Initiatorname und speichern Sie die Datei.

Scannen Sie nun wie folgt nach den Zielen:

$ sudo iscsiadm -m Discovery -t sendTargets -P 192.168.20.197

Jetzt können Sie sich wie folgt bei den Zielen anmelden:

$ sudo iscsiadm -m Knoten -Login

Die ISCSI -Speichergeräte sollten an Ihren Client beigefügt werden, wie Sie im Screenshot unten angezeigt werden können.

$ sudo lsblk

Beginnen Sie jetzt die iscsi Und iscsid Dienstleistungen wie folgt:

$ sudo systemctl starten iscsi
$ sudo systemctl starten iscsid

Der iscsi Und iscsid Dienstleistungen sollten ausgeführt werden.

$ sudo systemctl status iscsi iscsid

Fügen Sie nun die hinzu iscsi Und iscsid Service zum Systemstart wie folgt:

$ sudo systemctl aktivieren iscsi
$ sudo systemctl aktivieren iscsid

Montage der ISCSI -Festplatte:

Sie können die ISCSI -Datenträger dauerhaft auf dem ISCSI -Client verwenden /etc/fstab Datei.

Formatieren Sie zunächst die ISCSI -Festplatte, wenn sie nicht bereits formatiert ist.

$ sudo mkfs.ext4 -l data /dev /sda

Erstellen Sie nun ein Verzeichnis (Mountspunkt) für die ISCSI -Festplatte wie folgt:

$ sudo mkdir /Daten

Finden Sie nun die UUID der ISCSI -Festplatte, die Sie wie folgt montieren möchten:

$ sudo blkid

Das Uuid in meinem Fall ist C1CBFA44-A8A9-4343-A88E-769B63A6E006. Es wird für Sie anders sein. Stellen Sie also sicher, dass Sie es durch Ihre in der ersetzen /etc/fstab Datei.

Öffnen Sie nun die /etc/fstab Datei wie folgt:

$ sudo vi /etc /fstab

Fügen Sie nun die folgende Zeile zum Fügen Sie der /etc/fstab Datei.

UUID = C1CBFA44-A8A9-4343-A88E-769B63A6E006
/Daten ext4 Standards, _netdev 0 0

Stellen Sie sicher, dass Sie die hinzufügen _netdev Option in der /etc/fstab Datei während der Montage von ISCSI -Disketten. Andernfalls starten Ihr CentOS 8 ISCSI -Client möglicherweise nicht.

Jetzt können Sie die ISCSI -Festplatte zum ersten Mal wie folgt montieren:

$ sudo montage /Daten

Wie Sie sehen können, ist die ISCSI -Festplatte korrekt montiert.

So konfigurieren Sie ISCSI Storage Server und Client auf CentOS 8. Danke, dass du diesen Artikel gelesen hast.