Erstellt zentraliséiert Séchert Späichere mat iSCSI Target/Initiator op RHEL/CentOS 7 - Deel 12


iSCSI ass e Blockniveau Protokoll fir Späicherapparater iwwer TCP/IP Netzwierker ze managen, speziell iwwer laang Distanzen. iSCSI Zil ass eng Remote Festplack presentéiert vun engem Remote iSCSI Server (oder) Zil. Op der anerer Säit gëtt den iSCSI Client den Initiator genannt, a wäert Zougang zu der Späichere kréien déi an der Target Maschinn gedeelt gëtt.

Déi folgend Maschinnen goufen an dësem Artikel benotzt:

Operating System – Red Hat Enterprise Linux 7
iSCSI Target IP – 192.168.0.29
Ports Used : TCP 860, 3260
Operating System – Red Hat Enterprise Linux 7
iSCSI Target IP – 192.168.0.30
Ports Used : TCP 3260

Schrëtt 1: Packagen op iSCSI Target installéieren

Fir d'Pakete fir d'Zil ze installéieren (mir këmmeren eis spéider mam Client), maacht:

# yum install targetcli -y

Wann d'Installatioun fäerdeg ass, starten mir de Service wéi follegt:

# systemctl start target
# systemctl enable target

Endlech musse mir de Service an der Firewalld erlaben:

# firewall-cmd --add-service=iscsi-target
# firewall-cmd --add-service=iscsi-target --permanent

A lescht awer net zulescht, mir däerfen net vergiessen d'iSCSI Zil Entdeckung z'erméiglechen:

# firewall-cmd --add-port=860/tcp
# firewall-cmd --add-port=860/tcp --permanent
# firewall-cmd --reload

Schrëtt 2: LUNs am Target Server definéieren

Ier mir weidergoen fir LUNs am Zil ze definéieren, musse mir zwee logesch Bänn erstellen wéi am Deel 6 vun der RHCSA Serie erkläert (Configuring System Storage).

Dës Kéier nennen mir se vol_projects an vol_backups a placéiere se an enger Volumengrupp mam Numm vg00, wéi an der Fig. 1 gewisen. wielt de Raum fir all LV zougewisen:

Nodeems mir d'LVs erstallt hunn, si mir prett d'LUNs am Zil ze definéieren fir se fir d'Clientmaschinn verfügbar ze maachen.

Wéi an der Fig. Numm (IQN), eng Method fir den Zilserver ze adresséieren.

Gitt w.e.g. op Säit 32 vum RFC 3720 fir méi Detailer iwwer d'Struktur vum IQN. Besonnesch den Text nom Colon Charakter (:tgt1) spezifizéiert den Numm vum Zil, während den Text virum (Server:) den Hostnumm vum Zil an der Domain.

# targetcli
# cd backstores
# cd block
# create server.backups /dev/vg00/vol_backups
# create server.projects /dev/vg00/vol_projects
# cd /iscsi
# create iqn.2016-02.com.tecmint.server:tgt1

Mat dem uewe genannte Schrëtt gouf en neien TPG (Target Portal Group) zesumme mam Standardportal erstallt (e Pair besteet aus enger IP Adress an engem Hafen deen de Wee ass wéi d'Initiateuren d'Zil erreechen kënnen) lauschteren um Hafen 3260 vun all IP Adressen.

Wann Dir Äre Portal un eng spezifesch IP binde wëllt (zum Beispill den Haapt-IP vum Zil), läscht den Default-Portal an erstellt en neien wéi follegt (soss, iwwersprangen déi folgend Targetcli-Kommandoen. Notéiert datt mir se aus der Einfachheet iwwersprangen hunn als well):

# cd /iscsi/iqn.2016-02.com.tecmint.server:tgt1/tpg1/portals
# delete 0.0.0.0 3260
# create 192.168.0.29 3260

Elo si mir prett fir mat der Schafung vu LUNs virzegoen. Bedenkt datt mir d'Backstores benotzen déi mir virdru erstallt hunn (server.backups an server.projects). Dëse Prozess ass an Fig. 3 illustréiert:

# cd iqn.2016-02.com.tecmint.server:tgt1/tpg1/luns
# create /backstores/block/server.backups
# create /backstores/block/server.projects

De leschten Deel an der Zilkonfiguratioun besteet aus der Schafung vun enger Access Control List fir den Zougang op enger Per-Initiatorbasis ze beschränken. Well eis Clientsmaschinn Client genannt gëtt, fügen mir dësen Text un den IQN un. Kuckt op Fig. 4 fir Detailer:

# cd ../acls
# create iqn.2016-02.com.tecmint.server:client

Zu dësem Zäitpunkt kënne mir d'Targetcli Shell fir all konfiguréiert Ressourcen ze weisen, wéi mir an der Fig.

# targetcli
# cd /
# ls

Fir d'Targetcli-Shell opzehalen, tippt einfach Exit an dréckt Enter. D'Konfiguratioun gëtt automatesch op /etc/target/saveconfig.json gespäichert.

Wéi Dir an der Fig. Mir kënne verifizéieren datt Dir netstat Kommando benotzt (kuckt Fig. 6):

# netstat -npltu | grep 3260

Dëst schléisst d'Zielkonfiguratioun of. Fillt Iech gratis de System nei ze starten an z'iwwerpréiwen datt all Astellunge e Restart iwwerliewen. Wann net, gitt sécher datt Dir déi néideg Ports an der Firewall Konfiguratioun opmaacht an den Zilservice beim Boot starten. Mir sinn elo prett fir den Initiator opzestellen an un de Client ze verbannen.

Schrëtt 3: De Client Initiator opsetzen

Am Client musse mir den iscsi-initiator-utils Package installéieren, deen de Server-Daemon fir den iSCSI-Protokoll (iscsid) souwéi iscsiadm, d'Administratiounsdéngscht ubitt:

# yum update && yum install iscsi-initiator-utils

Wann d'Installatioun fäerdeg ass, öffnen /etc/iscsi/initiatorname.iscsi an ersetzt den Standardinitiatornumm (kommentéiert an der Fig. 7) mam Numm dee virdru am ACL um Server gesat gouf (iqn.2016-02.com.tecmint .server:client).

Da späichert d'Datei a lafen iscsiadm am Entdeckungsmodus, deen op d'Ziel weist. Wann et erfollegräich ass, gëtt dëse Kommando d'Zilinformatioun zréck wéi an der Fig.

# iscsiadm -m discovery -t st -p 192.168.0.29

De nächste Schrëtt besteet aus dem neistarten an aktivéieren vum iscsid Service:

# systemctl start iscsid
# systemctl enable iscsid

a kontaktéiert d'Zil am Node Modus. Dëst sollt zu Kernel-Niveau Messagen resultéieren, déi wann se duerch dmesg erfaasst ginn d'Apparatidentifikatioun weisen datt d'Remote LUNs am lokalen System gegeben goufen (sde an sdf an der Fig. 8):

# iscsiadm -m node -T iqn.2016-02.com.tecmint.server:tgt1 -p 192.168.0.29 -l
# dmesg | tail

Vun dësem Punkt un kënnt Dir Partitionen erstellen, oder souguer LVs (an Dateiesystemer uewen) wéi Dir mat all anere Späicherapparat géift maachen. Fir Einfachheet erstellen mir eng primär Partition op all Disk, déi säi ganze verfügbare Raum besetzt, a formatéiert se mat ext4.

Endlech, loosst eis /dev/sde1 an /dev/sdf1 op /projects an /backups montéieren, respektiv (notéiert datt dës Verzeichnisser als éischt erstallt musse ginn):

# mount /dev/sde1 /projects
# mount /dev/sdf1 /backups

Zousätzlech kënnt Dir zwee Entréen an /etc/fstab addéieren fir datt béid Dateiesystemer automatesch beim Boot montéiert ginn mat der UUID vun all Dateiesystem wéi zréckginn vum blkid.

Bedenkt datt d'_netdev Mount Optioun muss benotzt ginn fir d'Montage vun dëse Dateiesystemer auszesetzen bis den Netzwierkservice gestart gouf:

Dir kënnt elo dës Geräter benotzen wéi Dir mat all aner Späichermedien hätt.

Resumé

An dësem Artikel hu mir iwwerdeckt wéi een en iSCSI Target an en Initiator an RHEL/CentOS 7 Verdeelungen opstellt a konfiguréiert. Och wann déi éischt Aufgab net Deel vun den erfuerderleche Kompetenzen vum EX300 (RHCE) Examen ass, ass et néideg fir dat zweet Thema ëmzesetzen.

Zéckt net eis ze soen wann Dir Froen oder Bemierkungen iwwer dësen Artikel hutt - fillt Iech gratis fir eis eng Zeil ze schécken andeems Dir de Kommentarformular hei drënner benotzt.

Sicht Dir fir iSCSI Target a Client Initiator op RHEL/CentOS 6 opzestellen, befollegt dëse Guide: Zentraliséierter iSCSI Storage mat Client Initiator opsetzen.