Vytvoření centralizovaného zabezpečeného úložiště pomocí iSCSI Target/Iniciátor na RHEL/CentOS 7 – část 12
iSCSI je protokol na úrovni bloku pro správu úložných zařízení v sítích TCP/IP, zejména na velké vzdálenosti. Cíl iSCSI je vzdálený pevný disk předložený ze vzdáleného cíle serveru iSCSI (nebo). Na druhé straně se klient iSCSI nazývá Iniciátor a bude přistupovat k úložišti sdílenému v počítači Cíl.
V tomto článku byly použity následující stroje:
Server (cíl):
Operating System – Red Hat Enterprise Linux 7
iSCSI Target IP – 192.168.0.29
Ports Used : TCP 860, 3260
Klient (iniciátor):
Operating System – Red Hat Enterprise Linux 7
iSCSI Target IP – 192.168.0.30
Ports Used : TCP 3260
Krok 1: Instalace balíčků na iSCSI Target
Chcete-li nainstalovat balíčky potřebné pro cíl (s klientem se budeme zabývat později), proveďte:
yum install targetcli -y
Po dokončení instalace spustíme a aktivujeme službu následovně:
systemctl start target
systemctl enable target
Nakonec musíme povolit službu ve firewallu:
firewall-cmd --add-service=iscsi-target
firewall-cmd --add-service=iscsi-target --permanent
A v neposlední řadě nesmíme zapomenout povolit zjišťování cíle iSCSI:
firewall-cmd --add-port=860/tcp
firewall-cmd --add-port=860/tcp --permanent
firewall-cmd --reload
Krok 2: Definování LUN v cílovém serveru
Než přistoupíme k definování LUN v Cíl, musíme vytvořit dva logické svazky, jak je vysvětleno v části 6 série RHCSA („Konfigurace systémového úložiště “).
Tentokrát je pojmenujeme vol_projects
a vol_backups
a umístíme je do skupiny svazků nazvané vg00
, jak je znázorněno na obr. 1. vyberte prostor přidělený každému LV:
Po vytvoření LV jsme připraveni definovat LUN v Target, abychom je zpřístupnili pro klientský počítač.
Jak ukazujeobr. 2, otevřeme shell targetcli
a zadáme následující příkazy, které vytvoří dvě bloková backstores (místní úložné prostředky, které představují LUN, kterou iniciátor skutečně použije) a Iscsi Qualified Name (IQN), metoda oslovování cílového serveru.
Další podrobnosti o struktuře IQN najdete na straně 32 RFC 3720. Konkrétně text za znakem dvojtečky (:tgt1)
určuje název cíle, zatímco text před (server:)
označuje název hostitele cíle uvnitř doména.
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
Výše uvedeným krokem bylo vytvořeno nové TPG (Cílová skupina portálů) spolu s výchozím portálem (pár sestávající z IP adresy a portu, který je způsob, jakým iniciátoři může dosáhnout cíle) naslouchající na portu 3260 všech IP adres.
Pokud chcete svůj portál svázat s konkrétní IP adresou (například hlavní IP adresy cíle), smažte výchozí portál a vytvořte nový následujícím způsobem (v opačném případě přeskočte následující příkazy targetcli. Všimněte si, že pro jednoduchost jsme je také přeskočili):
cd /iscsi/iqn.2016-02.com.tecmint.server:tgt1/tpg1/portals
delete 0.0.0.0 3260
create 192.168.0.29 3260
Nyní jsme připraveni pokračovat ve vytváření LUNů. Všimněte si, že používáme úložiště, která jsme dříve vytvořili (server.backups
a server.projects
). Tento proces je znázorněn na obr. 3:
cd iqn.2016-02.com.tecmint.server:tgt1/tpg1/luns
create /backstores/block/server.backups
create /backstores/block/server.projects
Poslední část v konfiguraci cíle sestává z vytvoření seznamu řízení přístupu k omezení přístupu na základě jednotlivých iniciátorů. Protože se náš klientský počítač jmenuje „klient“, připojíme tento text k IQN. Viz obr. 4 podrobnosti:
cd ../acls
create iqn.2016-02.com.tecmint.server:client
V tomto okamžiku můžeme pomocí shellu targetcli zobrazit všechny nakonfigurované zdroje, jak můžeme vidět na obr. 5:
targetcli
cd /
ls
Chcete-li ukončit shell targetcli, jednoduše napište exit a stiskněte Enter. Konfigurace se automaticky uloží do /etc/target/saveconfig.json.
Jak můžete vidět naobr. 5 výše máme portál, který naslouchá na portu 3260 všech IP adres podle očekávání. Můžeme ověřit, že pomocí příkazu netstat (viz obr. 6):
netstat -npltu | grep 3260
Tím je konfigurace Cíl uzavřena. Neváhejte restartovat systém a ověřte, že všechna nastavení přežijí restart. Pokud ne, ujistěte se, že jste otevřeli potřebné porty v konfiguraci brány firewall a spustili cílovou službu při zavádění. Nyní jsme připraveni nastavit Iniciátor a připojit se ke klientovi.
Krok 3: Nastavení klientského iniciátoru
V klientovi budeme muset nainstalovat balíček iscsi-initiator-utils, který poskytuje serverového démona pro protokol iSCSI (iscsid) a také iscsiadm<, nástroj pro správu:
yum update && yum install iscsi-initiator-utils
Po dokončení instalace otevřete soubor /etc/iscsi/initiatorname.iscsi a nahraďte výchozí název iniciátoru (komentovaný na obr. 7) názvem, který byl dříve nastaven v souboru ACL na serveru (iqn.2016-02.com.tecmint.server:client).
Poté soubor uložte a spusťte iscsiadm v režimu zjišťování ukazujícím na cíl. Pokud bude tento příkaz úspěšný, vrátí informace o cíli, jak je znázorněno na obr. 7:
iscsiadm -m discovery -t st -p 192.168.0.29
Dalším krokem je restartování a povolení služby iscsid:
systemctl start iscsid
systemctl enable iscsid
a kontaktování cíle v režimu uzlu. Výsledkem by měly být zprávy na úrovni jádra, které při zachycení pomocí dmesg ukazují identifikaci zařízení, že vzdálené LUN byly přiděleny v místním systému (sde a sdf na obr. 8):
iscsiadm -m node -T iqn.2016-02.com.tecmint.server:tgt1 -p 192.168.0.29 -l
dmesg | tail
Od tohoto okamžiku můžete vytvářet oddíly nebo dokonce LV (a nad nimi souborové systémy), jako byste to dělali s jakýmkoli jiným úložným zařízením. Pro jednoduchost vytvoříme na každém disku primární oddíl, který bude zabírat celý jeho dostupný prostor, a naformátujeme jej pomocí ext4.
Nakonec připojíme /dev/sde1 a /dev/sdf1 na /projects a /backups ( všimněte si, že tyto adresáře je třeba nejprve vytvořit):
mount /dev/sde1 /projects
mount /dev/sdf1 /backups
Navíc můžete přidat dvě položky do /etc/fstab, aby se oba souborové systémy při zavádění připojily automaticky pomocí UUID každého souborového systému, které vrací blkid.
Upozorňujeme, že je nutné použít možnost připojení _netdev, aby bylo možné odložit připojení těchto souborových systémů, dokud nebude síťová služba spuštěna:
Nyní můžete tato zařízení používat stejně jako jakákoli jiná paměťová média.
souhrn
V tomto článku jsme se zabývali tím, jak nastavit a nakonfigurovat cíl iSCSI a iniciátor v distribucích RHEL/CentOS 7. I když první úkol není součástí požadovaných kompetencí zkoušky EX300 (RHCE), je potřebný pro realizaci druhého tématu.
Neváhejte a dejte nám vědět, pokud máte nějaké dotazy nebo připomínky k tomuto článku – neváhejte nám napsat pomocí níže uvedeného formuláře pro komentáře.
Chcete-li nastavit iSCSI Target a Client Initiator na RHEL/CentOS 6, postupujte podle tohoto průvodce: Nastavení centralizovaného úložiště iSCSI pomocí Client Initiator.