iSCSI je zkratka pro Internet Small Computer Systems Interface, úložiště založené na IP, funguje nad internetovým protokolem přenášením příkazů SCSI přes síť IP. iSCSI přenáší data na úrovni bloku mezi iniciátorem iSCSI na klientském počítači a cílem iSCSI na úložném zařízení (serveru).
Úložiště iSCSI se používá jako sdílené úložiště v klastru Redhat , VMware vSphere, Redhat Enterprise Virtualization Manager, Ovirt atd.
Životní prostředí
Server: server.itzgeek.local
IP adresa: 192.168.12.20
OS: Vydání CentOS Linux 7.4.1708 (Core)
Klient: node1.itzgeek.local
IP adresa: 192.168.12.11
OS: Vydání CentOS Linux 7.4.1708 (Core)
Konfigurace úložiště
Zde vytvoříme 5 GB LVM disku na cílovém serveru, který použijeme jako sdílené úložiště pro klienty. Uveďme seznam dostupných disků připojených k cílovému serveru pomocí níže uvedeného příkazu. Pokud chcete pro LVM použít celý disk, přeskočte krok rozdělení disku .
[root@server ~]# fdisk -l | grep -i sd
Výstup:
Z výše uvedeného výstupu můžete vidět, že můj systém má 10 GB disku (/dev/sdb ). Na výše uvedeném disku vytvoříme 5GB oddíl a použijeme jej pro LVM.
[root@server ~]# fdisk /dev/sdb Vítejte na fdisku (util-linux 2.23.2). Změny zůstanou pouze v paměti, dokud se nerozhodnete je zapsat. Před použitím příkazu write buďte opatrní. Zařízení neobsahuje rozpoznanou tabulku oddílů Vytvoření nového DOS disklabelu s identifikátorem disku 0x173dfa4d. Příkaz (nápověda m):n --> Nový oddíl Typ oddílu:p primární (0 primární, 0 rozšířený, 4 volný) e rozšířený Vyberte (výchozí p):p --> Pimární oddíl Číslo oddílu (1-4, výchozí 1):1 - -> Číslo oddílu První sektor (2048-20971519, výchozí 2048): --> Stačí zadat Použití výchozí hodnoty 2048 Poslední sektor, +sektory nebo +velikost{K,M,G} (2048-20971519, výchozí 20971519):+5G --> Zadejte velikost Je nastaven oddíl 1 typu Linux a velikosti 5 GiB Příkaz (m pro nápovědu):t --> Změnit štítek Vybraný oddíl 1 Hexadecimální kód (zadáním L zobrazíte všechny kódy):8e --> Změňte jej jako LVM štítku Změněn typ oddílu 'Linux' na 'Linux LVM' Příkaz (m pro nápovědu):w --> Uložit Tabulka oddílů byla změněna! Volání ioctl() pro opětovné načtení tabulky oddílů. Synchronizace disků.
Vytvořte LVM s oddílem /dev/sdb1 (nahraďte /dev/sdb1 názvem svého disku )
[root@server ~]# pvcreate /dev/sdb1[root@server ~]# vgcreate vg_iscsi /dev/sdb1[root@server ~]# lvcreate -l 100% ZDARMA -n lv_iscsi vg_iscsi
Konfigurace cíle iSCSI
Nyní máte možnost vytvořit cíl buď s ověřením nebo bez něj. V tomto článku najdete kroky pro oba scénáře. Je na vás, abyste se rozhodli, který z nich je vhodný pro vaše prostředí.
Zde nakonfiguruje cíl iSCSI bez ověřování CHAP.
Nainstalujte balíček targetcli na server.
[root@server ~]# yum install targetcli -y
Jakmile balíček nainstalujete, zadejte níže uvedený příkaz, abyste získali rozhraní iSCSI CLI pro interaktivní výzvu.
[root@server ~]# targetcliUpozornění:Nelze načíst soubor předvoleb /root/.targetcli/prefs.bin.targetcli shell verze 2.1.fb41Copyright 2011-2013 od Datera, Inc a dalších. Nápovědu k příkazům získáte zadáním ' pomoc'.>
Nyní použijte existující logický svazek (/dev/vg_iscsi/lv_iscsi ) jako zálohovací úložiště blokového typu pro objekt úložiště scsi_disk1_server “.
/> cd backstores/block /backstores/block> vytvořit scsi_disk1_server /dev/vg_iscsi/lv_iscsi Vytvořený objekt úložiště bloků scsi_disk1_server pomocí /dev/vg_iscsi/lv_iscsi.
Vytvořte cíl.
/backstores/block> cd /iscsi /iscsi> vytvořit iqn.2016-02.local.itzgeek.server:disk1 Vytvořený cíl iqn.2016-02.local.itzgeek.server:disk1.Created TPG 1.Globální pref auto_add_default_portal=trueVytvořený výchozí portál naslouchající na všech IP (0.0.0.0), port 3260./iscsi>
Vytvořte ACL pro klientský počítač (je to IQN, které klienti používají k připojení).
/iscsi> cd /iscsi/iqn.2016-02.local.itzgeek.server:disk1/tpg1/acls /iscsi/iqn.20...sk1/tpg1/acls> vytvořit iqn.2016-02.local.itzgeek.server:node1node2 Vytvořeno Node ACL pro iqn.2016-02.local.itzgeek.server:node1node2
Vytvořte LUN pod cílem. LUN by měl používat dříve zmíněný objekt záložního úložiště s názvem „scsi_disk1_server “.
/iscsi/iqn.20...er:disk1/tpg1> cd /iscsi/iqn.2016-02.local.itzgeek.server:disk1/tpg1/luns /iscsi/iqn.20...sk1/tpg1/luns> vytvořit /backstores/block/scsi_disk1_server Vytvořeno mapování LUN 0. Vytvořeno mapování LUN 0->0 v uzlu ACL iqn.2016-02.local.itzgeek.server:node1node2
Ověřte konfiguraci cílového serveru.
/iscsi/iqn.20.../tpg1/portals> cd / /> ls o- / ................................................... ................................................................... ........................ [...] o- backstores .................. ................................................................... ................................................. [...] | o-blok ................................................... ................................................................... [Objekty úložiště:1] | | o- scsi_disk1_server ................................................... ... [/dev/vg_iscsi/lv_iscsi (5.0GiB) zápis aktivován] | o-filio ................................................. ................................................................... [Objekty úložiště:0] | o-pscsi ................................................. ................................................................... [Objekty úložiště:0] | o-ramdisk ................................................. ................................................. [ Objekty úložiště:0] o- iscsi ................................................. ................................................................... ................ [Cíle:1] | o- iqn.2016-02.local.itzgeek.server:disk1 ................................... ...................................... [TPG:1] | o- tpg1 ................................................... ................................................................... [gen-acls, no-auth] | o- acls ................................................. ................................................................... ......... [ACL:1] | | o- iqn.2016-02.local.itzgeek.server:node1node2 ................................... ....................... [Mapované LUN:1] | | o- maped_lun0 ................................................... ...................... [lun0 block/scsi_disk1_server (rw)] | o-luns ................................................. ................................................................... ......... [LUN:1] | | o-lun0 ................................................... ................ [blok/scsi_disk1_server (/dev/vg_iscsi/lv_iscsi)] | o- portály ................................................... ................................................................... ... [Portály:1] | o- 0.0.0.0:3260 ................................................. ................................................................... ........ [OK] o- zpětná smyčka ................................... ................................................................... ................... [Cíle:0]Uložit a opustit cílové CLI.
/> saveconfig Posledních 10 konfigurací uložených v /etc/target/backup.Konfigurace uložena do /etc/target/saveconfig.json/> exit Globální předvolba auto_save_on_exit=truePosledních 10 konfigurací uložených v /etc/target/backup. Konfigurace uložena do /etc/target/saveconfig.json
Povolte a restartujte cílovou službu.
[root@server ~]# systemctl povolit target.service[root@server ~]# systemctl restart target.service
Nakonfigurujte bránu firewall tak, aby umožňovala provoz iSCSI.
[root@server ~]# firewall-cmd --permanent --add-port=3260/tcp[root@server ~]# firewall-cmd --reload
Konfigurovat iniciátor
Nyní je čas nakonfigurovat klientský počítač tak, aby používal vytvořený cíl jako úložiště. Nainstalujte níže uvedený balíček na klientský počítač (node1 ).
[root@node1 ~]# yum install iscsi-initiator-utils -y
Upravte soubor initiatorname.iscsi.
[root@node1 ~]# vi /etc/iscsi/initiatorname.iscsi
Přidejte název iniciátoru iSCSI.
InitiatorName=iqn.2016-02.local.itzgeek.server:node1node2
Objevte cíl pomocí níže uvedeného příkazu.
[root@node1 ~]# iscsiadm -m discovery -t st -p 192.168.12.20
Výstup:
192.168.12.20:3260,1 iqn.2016-02.local.itzgeek.server:disk1
Restartujte a povolte službu iniciátor.
[root@node1 ~]# restart systemctl iscsid.service[root@node1 ~]# systemctl povolení iscsid.service
Přihlaste se k nalezenému cíli.
[root@node1 ~]# iscsiadm -m node -T iqn.2016-02.local.itzgeek.server:disk1 -p 192.168.12.20 -l
Výstup:
Přihlášení do [iface:výchozí, cíl:iqn.2016-02.local.itzgeek.server:disk1, portál:192.168.12.20,3260] (více)Přihlášení do [iface:výchozí, cíl:iqn.2016 -02.local.itzgeek.server:disk1, portál:192.168.12.20,3260] úspěšné.
Vytvoření systému souborů na disku ISCSI
Po přihlášení (připojení) k nalezenému cíli se podívejte do souboru zpráv. Naleznete podobný výstup jako níže, kde najdete název disku.
[root@node1 ~]# cat /var/log/messagesFeb 23 14:54:47 node2 kernel:sd 34:0:0:0:[sdb] 10477568 512bajtové logické bloky:(5,36 GB/4,99 GiB)Feb 23 14:54:47 node2 kernel:sd 34:0:0:0:[sdb] Write Protect je vypnutý 23. února 14:54:47 node2 kernel:sd 34:0:0:0:[sdb] Write cache:zakázáno, číst mezipaměť:povoleno, nepodporuje DPO ani FUAFeb 23 14:54:48 jádro node2:sdb:neznámá tabulka oddílů23. února 14:54:48 jádro node2:sd 34:0:0:0:[sdb] Připojený disk SCSI
Výstup:
23. února 14:54:48 node2 iscsid:Nelze nastavit prioritu session2. Čtení/zápis a latence může být ovlivněna. 23. února 14:54:48 node2 iscsid:Connection2:0 to [cíl:iqn.2016-02.local.itzgeek.server:disk1, portál:192.168.12.20,3260] přes [iface:default] je nyní funkční
Seznam připojených disků.
[root@node1 ~]# cat /proc/partitions
Výstup:
Naformátujte nový disk (pro účely článku jsem místo vytvoření oddílu naformátoval celý disk)
root@node1 ~]# mkfs.xfs /dev/sdb
Výstup:
meta-data=/dev/sdb isize=256 agcount=8, agsize=163712 blks =sectsz=512 attr=2, projid32bit=1 =crc=0data =bsize=4096 bloků=1309696, imaxpct=25 =sunit =0 swidth=0 blksnaming =verze 2 bsize=4096 ascii-ci=0 ftype=0log =interní log bsize=4096 bloků=2560, verze=2 =sectsz=512 sunit=0 blks, líný počet=1realtime =žádný extsz =4096 bloků=0, rtextents=0
Připojte disk.
[root@node1 ~]# připojení /dev/sdb /mnt
Ověřte, že je disk připojen pomocí níže uvedeného příkazu.
[root@node1 ~]# df -hT
Výstup:
Typ souborového systému Velikost Použitá Avail Využití % Namontované na/dev/mapovač/centos-root xfs 50G 955M 50G 2% /devtmpfs devtmpfs 908M 0 908M 0% /devtmpfs tmpfs/5mpfs tmpfs 914M pf 914M 914M 16M 914M 16M 914M 16M 54 905M 1% /runtmpfs tmpfs 914M 0 914M 0% /sys/fs/cgroup/dev/mapper/centos-home xfs 48G 33M 48G 1% /home/dev/sda1 xfs 497M /97M 40strong>1M200strong /sdb xfs 5.0G 33M 5.0G 1% /mnt
Automaticky připojit úložiště iSCSI
Chcete-li automaticky připojit úložiště iSCSI během každého restartu, budete muset provést záznam v souboru /etc/fstab.
Před aktualizací souboru /etc/fstab získejte UUID disku iSCSI pomocí následujícího příkazu. Nahraďte /dev/sdb názvem vašeho disku iSCSI.
blkid /dev/sdb
Výstup:
/dev/sdb:LABEL="/" UUID="9df472f4-1b0f-41c0-a6eb-89574d2caee3 " TYPE="xfs"
Nyní upravte soubor /etc/fstab.
vi /etc/fstab
Zadejte záznam, například níže.
## /etc/fstab# Vytvořeno uživatelem anaconda dne 30. ledna 02:14:21 2018## Přístupné souborové systémy, podle odkazu, jsou udržovány pod '/dev/disk'# Viz manuálové stránky fstab(5), findfs (8), mount(8) a/nebo blkid(8) pro více informací#UUID=9df472f4-1b0f-41c0-a6eb-89574d2caee3 / xfs výchozí hodnoty 0 0UUID=c7469f92-75ec-48ac-b89d /75b89d mnt xfs _netdev 0 0
Odeberte úložiště iSCSI
V případě, že chcete odpojit přidaný disk, postupujte podle pokynů (odpojení a odhlášení).
[root@node1 ~]# umount /mnt/[root@node1 ~]# iscsiadm -m node -T iqn.2016-02.local.itzgeek.server:disk1 -p 192.168.12.20 -u
Výstup:
Odhlášení z relace [sid:1, cíl:iqn.2016-02.local.itzgeek.server:disk1, portál:192.168.12.20,3260]Odhlášení z [sid:1, cíl:iqn.2016-02 .local.itzgeek.server:disk1, portál:192.168.12.20,3260] úspěšné.
To je vše.