Stvorite centraliziranu sigurnu pohranu pomoću iSCSI cilja/pokretača na RHEL/CentOS 7 - 12. dio


iSCSI je protokol na razini bloka za upravljanje uređajima za pohranu preko TCP/IP mreža, posebno na velikim udaljenostima. iSCSI cilj je udaljeni tvrdi disk predstavljen s udaljenog iSCSI poslužitelja (ili) cilja. S druge strane, iSCSI klijent se naziva Inicijator i pristupit će pohrani koja se dijeli na ciljnom stroju.

U ovom članku korišteni su sljedeći strojevi:

Poslužitelj (cilj):


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

Klijent (Pokretač):


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

Korak 1: Instaliranje paketa na iSCSI Target

Da biste instalirali pakete potrebne za cilj (kasnije ćemo se pozabaviti klijentom), učinite:


yum install targetcli -y

Kada instalacija završi, pokrenut ćemo i omogućiti uslugu na sljedeći način:


systemctl start target
systemctl enable target

Konačno, moramo dopustiti uslugu u vatrozidu:


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

I na kraju, ali ne manje važno, ne smijemo zaboraviti dopustiti otkrivanje iSCSI cilja:


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

Korak 2: Definiranje LUN-ova u ciljnom poslužitelju

Prije nego nastavimo s definiranjem LUN-ova u Cilju, moramo stvoriti dva logička volumena kao što je objašnjeno u 6. dijelu serije RHCSA (“Konfiguriranje sistemske pohrane” ”).

Ovaj put ćemo ih nazvati vol_projects i vol_backups i smjestiti ih unutar grupe volumena pod nazivom vg00, kao što je prikazano na slici 1. Slobodno odaberite prostor dodijeljen svakom LV:

Nakon stvaranja LV-ova, spremni smo definirati LUN-ove u Cilju kako bismo ih učinili dostupnima za klijentsko računalo.

Kao što je prikazano na sl. 2, otvorit ćemo ljusku targetcli i izdati sljedeće naredbe, koje će stvoriti dva blok backstorea (lokalni resursi za pohranu koji predstavljaju LUN koji će inicijator zapravo koristiti) i Iscsi kvalificirano ime (IQN), metoda adresiranja ciljnog poslužitelja.

Za više pojedinosti o strukturi IQN-a pogledajte stranicu 32 RFC-a 3720. Konkretno, tekst iza dvotočke (:tgt1) navodi naziv cilja, dok tekst ispred (server:) označava naziv glavnog računala cilja unutar domena.


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

Gornjim korakom kreiran je novi TPG (Ciljna grupa portala) zajedno sa zadanim portalom (par koji se sastoji od IP adrese i porta koji je način pokretanja može doći do cilja) sluša port 3260 svih IP adresa.

Ako želite povezati svoj portal s određenim IP-om (na primjer, glavnim IP-om cilja), izbrišite zadani portal i izradite novi na sljedeći način (u suprotnom preskočite sljedeće targetcli naredbe. Imajte na umu da smo ih radi jednostavnosti također preskočili):


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

Sada smo spremni za nastavak izrade LUN-ova. Imajte na umu da koristimo backstore koje smo prethodno izradili (server.backups i server.projects). Ovaj proces je ilustriran na slici 3:


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

Posljednji dio u konfiguraciji cilja sastoji se od stvaranja popisa kontrole pristupa za ograničavanje pristupa po inicijatoru. Budući da se naš klijentski stroj zove “klijent”, taj ćemo tekst dodati IQN-u. Pogledajte Sl. 4 za detalje:


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

U ovom trenutku možemo ljusku targetcli prikazati sve konfigurirane resurse, kao što možemo vidjeti na Sl. 5:


targetcli
cd /
ls

Za napuštanje targetcli ljuske jednostavno upišite exit i pritisnite Enter. Konfiguracija će se automatski spremiti u /etc/target/saveconfig.json.

Kao što možete vidjeti na sl. 5 iznad, imamo portal koji sluša port 3260 svih IP adresa kao što je očekivano. To možemo provjeriti pomoću naredbe netstat (pogledajte Sl. 6):


netstat -npltu | grep 3260

Ovime se završava konfiguracija Cilja. Slobodno ponovno pokrenite sustav i provjerite jesu li sve postavke preživjele ponovno pokretanje. Ako nije, svakako otvorite potrebne priključke u konfiguraciji vatrozida i pokrenite ciljnu uslugu pri dizanju sustava. Sada smo spremni postaviti inicijator i povezati se s klijentom.

Korak 3: Postavljanje inicijatora klijenta

U klijentu ćemo trebati instalirati paket iscsi-initiator-utils koji pruža poslužiteljski demon za iSCSI protokol (iscsid), kao i iscsiadm<, uslužni program za administraciju:


yum update && yum install iscsi-initiator-utils

Kada instalacija završi, otvorite /etc/iscsi/initiatorname.iscsi i zamijenite zadani naziv inicijatora (komentirano na Sl. 7) s nazivom koji je prethodno postavljen u ACL na poslužitelju (iqn.2016-02.com.tecmint.server:client).

Zatim spremite datoteku i pokrenite iscsiadm u načinu otkrivanja pokazujući na cilj. Ako je uspješna, ova naredba će vratiti informacije o cilju kao što je prikazano na Sl. 7:


iscsiadm -m discovery -t st -p 192.168.0.29

Sljedeći korak sastoji se od ponovnog pokretanja i omogućavanja usluge iscsid:


systemctl start iscsid
systemctl enable iscsid

i kontaktiranje cilja u načinu rada čvora. To bi trebalo rezultirati porukama na razini jezgre, koje kada se uhvate putem dmesg prikazuju identifikaciju uređaja koju su udaljeni LUN-ovi dobili u lokalnom sustavu (sde i sdf na sl. 8):


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

Od ove točke nadalje, možete kreirati particije ili čak LV-ove (i datotečne sustave na njima) kao što biste učinili s bilo kojim drugim uređajem za pohranu. Radi jednostavnosti, napravit ćemo primarnu particiju na svakom disku koja će zauzeti cijeli raspoloživi prostor i formatirati je s ext4.

Na kraju, montirajmo /dev/sde1 i /dev/sdf1 na /projects odnosno /backups ( imajte na umu da se ovi direktoriji moraju prvo kreirati):


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

Dodatno, možete dodati dva unosa u /etc/fstab kako bi se oba datotečna sustava automatski montirala pri pokretanju koristeći UUID svakog datotečnog sustava kako ga vraća blkid.

Napomena da se mora koristiti opcija montiranja _netdev kako bi se odgodilo montiranje ovih datotečnih sustava dok se mrežna usluga ne pokrene:

Sada možete koristiti ove uređaje kao što biste koristili bilo koji drugi medij za pohranu.

Sažetak

U ovom smo članku opisali kako postaviti i konfigurirati iSCSI Target i Initiator u distribucijama RHEL/CentOS 7. Iako prvi zadatak nije dio potrebnih kompetencija ispita EX300 (RHCE), potreban je za provedbu druge teme.

Ne ustručavajte se javiti nam ako imate bilo kakvih pitanja ili komentara o ovom članku – slobodno nam se javite koristeći obrazac za komentare u nastavku.

Ako želite postaviti iSCSI Target i Client Initiator na RHEL/CentOS 6, slijedite ovaj vodič: Postavljanje centralizirane iSCSI pohrane s Client Initiatorom.