Basisprincipes van iSCSI:
iSCSI-opslagserver wordt gebruikt om blokapparaten zoals HDD/SSD-partities of LVM-partities te delen, of om bestanden op het netwerk te blokkeren. iSCSI-clients kunnen deze shares over het netwerk gebruiken, net als elke gewone HDD of SSD die erop is gemonteerd. De iSCSI-client kan deze schijven formatteren, mounten en zoals gewoonlijk bestanden en mappen opslaan.
Fig 1: iSCSI server-client architectuurclient
Elke iSCSI-client heeft een initiator-ID die wordt gebruikt om verbinding te maken met de doelen op de server.
De doelen zijn shares op de iSCSI-server. Elk doel bestaat uit een unieke naam (IQN), het pad van het blokapparaat (i.e. schijfpartitie of blokbestand), de initiator-ID die verbinding kan maken met dit doel, en een optioneel op gebruikersnaam en wachtwoord gebaseerd authenticatiesysteem.
In figuur 1 staat de iSCSI-opslagserver 3 initiators (3 iSCSI-clients) toe om verbinding te maken met 4 doelen. initiatiefnemer01 kan verbinding maken met doel01 en doel02, initiatiefnemer02 kan verbinding maken met doel03, en initiatiefnemer03 kan verbinding maken met target04.
Netwerk topologie:
De netwerktopologie die in dit artikel wordt gebruikt, wordt gegeven in figuur 2. Hier zal ik een Ubuntu 18 . configureren.04 LTS-server als iSCSI-server. De iSCSI-server heeft een statisch IP-adres 192.168.20.168. De iSCSI-client bevindt zich ook op het netwerk 192.168.20.0/24. Het heeft dus toegang tot de iSCSI-server.
iSCSI Target en Initiator naamgevingsconventies:
De iSCSI-doelnaam en initiatornaam moeten uniek zijn.
Het doel naamgevingsformaat is:
iqn.JJJJ-MM.omgekeerde-domeinnaam:doelnaamVoorbeeld: iqn.2020-03.com.linuxhint:www, iqn.2020-03.com.linuxhint:logboeken,
iqn.2020-03.com.linuxhint:gebruiker-bob enz.
De naamgeving van de initiatiefnemer is:
iqn.JJJJ-MM.omgekeerde-domeinnaam:initiator-naamVoorbeeld: iqn.2020-03.com.linuxhint:initiator01, iqn.2020-03.com.linuxhint:initiator02,
iqn.2020-03.com.linuxhint:initiator03 enz.
Statisch IP instellen:
Stel eerst een statisch IP-adres in op uw iSCSI-server. Als je hulp nodig hebt, bekijk dan mijn artikel Statisch IP-adres instellen op Ubuntu 18.04 LTS desktop- en serverbesturingssysteem.
iSCSI-server installeren:
Werk eerst de cache van de APT-pakketrepository bij met de volgende opdracht:
$ sudo apt-update
Installeer nu de iSCSI-server als volgt:
$ sudo apt install tgt
Om de installatie te bevestigen, drukt u op Y en druk vervolgens op
iSCSI-server moet zijn geïnstalleerd.
Bestandsblokken delen via iSCSI:
U kunt bestandsblokken die zijn gemaakt met het dd-commando delen via iSCSI.
Maak eerst een nieuwe map waarin u alle bestandsblokken als volgt wilt bewaren:
$ sudo mkdir -pv /iscsi/blocks
Maak nu een nieuw bestandsblok aan www.img in de /iscsi/blocks/ directory als volgt:
$ sudo dd if=/dev/zero of=/iscsi/blocks/www.img bs=1M telling=1024 status=voortgang
Maak nu een nieuw doelconfiguratiebestand iqn.2020-03.com.linuxhint.www.conf in de /etc/tgt/conf.d/ map als volgt:
$ sudo nano /etc/tgt/conf.d/iqn.2020-03.com.linuxhint.www.conf
Typ nu de volgende regels in het configuratiebestand en sla het bestand op door op te drukken
backing-store /iscsi/blocks/www.img
initiator-naam iqn.2020-03.com.linuxhint:initiator01
inkomende gebruiker linuxhint geheim
Hier wordt de doelnaam gedefinieerd in de doeltag.
backing-store is ingesteld op het pad van het blokbestand.
naam initiatiefnemer wordt gebruikt om de initiator-ID in te stellen die toegang krijgt tot het doel.
inkomende gebruiker regel wordt gebruikt om de gebruikersnaam en het wachtwoord in te stellen die de initiator zal gebruiken voor authenticatie.
HDD/SSD delen via iSCSI:
U kunt ook de hele HDD/SSD of een of meer HDD/SSD-partities delen via iSCSI. Als u de hele HDD/SSD deelt, zijn de partities van die HDD/SSD ook toegankelijk vanaf de initiator of iSCSI-client.
Zoek eerst de HDD/SSD-naam of HDD/SSD-partitienaam die u wilt delen met de volgende opdracht:
$ sudo lsblk
Maak nu een nieuw doelconfiguratiebestand iqn.2020-03.com.linuxhint.gegevens.conf in de /etc/tgt/conf.d/ map als volgt:
$ sudo nano /etc/tgt/conf.d/iqn.2020-03.com.linuxhint.www.conf
Typ nu de volgende regels in het configuratiebestand en sla het bestand op:.
backing-store /dev/sdb
initiator-naam iqn.2020-03.com.linuxhint:initiator01
inkomende gebruiker linuxhint geheim
Hier heb ik de hele HDD gedeeld /dev/sdb via iSCSI. Als u een enkele partitie wilt delen, kunt u instellen: backing-store naar /dev/sdb1 of /dev/sdb2 enzovoorts.
De iSCSI-service opnieuw starten:
Als u wijzigingen aanbrengt in het iSCSI-doelconfiguratiebestand, voert u de volgende opdracht uit om de wijzigingen door te voeren:
$ sudo systemctl herstart tgt
De iSCSI-service zou moeten draaien.
$ sudo systemctl status tgt
De iSCSI-serverpoort 3260 zou ook open moeten zijn, zoals je kunt zien in de onderstaande schermafbeelding.
$ sudo netstat -tlpn
iSCSI-service toevoegen aan het opstarten van het systeem:
Voer de volgende opdracht uit om de iSCSI-service bij het opstarten te starten:
$ sudo systemctl activeer tgt
Client configureren:
U moet de iSCSI-clienttools op de client hebben geïnstalleerd om de iSCSI-shares te kunnen gebruiken.
Werk eerst de cache van de APT-pakketrepository bij met de volgende opdracht:
$ sudo apt-update
Nu installeren open-iscsi pakket met het volgende commando:
$ sudo apt install open-iscsi
Om de installatie te bevestigen, drukt u op Y en druk vervolgens op
open-iscsi moet worden geïnstalleerd.
Voeg nu de . toe iscsid service aan het opstarten van het systeem als volgt:
$ sudo systemctl activeer iscsid
Open nu de /etc/iscsi/initiatornaam.iscsi configuratiebestand.
$ sudo nano /etc/iscsi/initiatornaam.iscsi
Nu, stel Initiatornaam naar uw initiatornaam en sla het bestand op.
Open nu de /etc/iscsi/iscsid.conf bestand met het volgende commando:
$ sudo nano /etc/iscsi/iscsid.conf
Maak nu het commentaar op de gemarkeerde regel ongedaan.
Geef commentaar op de gemarkeerde regel.
eindelijk, de Opstartinstellingen zou als volgt moeten zijn:.
Uncommentaar de gemarkeerde lijnen.
Stel hier uw gebruikersnaam en wachtwoord in en sla het bestand op.
Scan nu de iSCSI-server als volgt op doelen:
$ sudo iscsiadm -m ontdekking -t sendtargets -p 192.168.20.168Zoals je kunt zien, worden de doelen vermeld.
Nu kunt u als volgt inloggen op een specifiek doel:
$ sudo iscsiadm -m knoop -p 192.168.20.168 -T iqn.2020-03.com.linuxhint:www --loginHier, 192.168.20.168 is het IP-adres van de iSCSI-server en iqn.2020-03.com.linuxhint:www is de doelnaam.
U kunt ook inloggen op alle beschikbare doelen met het volgende commando:
$ sudo iscsiadm -m knoop -p 192.168.20.168 --login
Nadat u zich hebt aangemeld bij de doelen, zouden de iSCSI-schijven beschikbaar moeten zijn voor uw client. Nu kun je ze partitioneren, formatteren of mounten zoals je wilt.
$ sudo lsblk -e7
U kunt ook partities maken op uw iSCSI-schijven met fdisk, cdisk, parted, GNOME-schijven, GParted of andere partitiesoftware. Voor meer informatie over het gebruik van fdisk om schijven te partitioneren, raadpleeg mijn artikel Hoe fdisk te gebruiken in Linux.
U kunt uw partities ook formatteren.
$ sudo mkfs.ext4 -L www /dev/sdb1
Automatisch iSCSI-partities aankoppelen:
Om een iSCSI-partitie aan te koppelen, maakt u als volgt een aankoppelpunt:
$ sudo mkdir /www
Open nu de /etc/fstab bestand als volgt:
$ sudo nano /etc/fstab
Typ nu de volgende regel in de /etc/fstab bestand en sla het bestand op.
/dev/sdb1 /www/ ext4 defaults,auto,_netdev 0 0
OPMERKING: Zorg ervoor dat u de . toevoegt _netdev optie in de /etc/fstab het dossier. Anders start uw client niet op.
Nu kunt u de iSCSI-partitie als volgt aankoppelen:
$ sudo mount /www
De partitie moet worden gemount.
Nu kunt u indien nodig de eigenaar en de groep van het mountpoint wijzigen in uw login-gebruikersnaam en groepsnaam.
$ sudo chown -Rfv $(whoami):$(whoami) /www
Nu kunt u alle bestanden in uw iSCSI-partitie opslaan.
Dus zo configureer je de iSCSI-opslagserver op Ubuntu 18.04 LTS. Bedankt voor het lezen van dit artikel.