How can we help?
Схема:
на R1:
[root@localhost ~]# hostnamectl set-hostname target [root@localhost ~]# bash [root@target ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s8 DEVICE=enp0s8 IPADDR=10.0.12.1 PREFIX=24 ONBOOT=yes [root@target ~]# systemctl restart network [root@target ~]# ip a ... 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:9b:36:c9 brd ff:ff:ff:ff:ff:ff inet 10.0.12.1/24 brd 10.0.12.255 scope global noprefixroute enp0s8 valid_lft forever preferred_lft forever inet6 fe80::e4af:f22a:6c21:ffc5/64 scope link noprefixroute valid_lft forever preferred_lft forever ... [root@target ~]# yum install targetcli -y .... [root@target ~]# systemctl enable target Created symlink from /etc/systemd/system/multi-user.target.wants/target.service to /usr/lib/systemd/system/target.service. [root@target ~]# systemctl start target [root@target ~]# systemctl status target ● target.service - Restore LIO kernel target configuration Loaded: loaded (/usr/lib/systemd/system/target.service; enabled; vendor preset: disabled) Active: active (exited) since Пн 2022-06-27 20:05:42 MSK; 12s ago Process: 20770 ExecStart=/usr/bin/targetctl restore (code=exited, status=0/SUCCESS) Main PID: 20770 (code=exited, status=0/SUCCESS) июн 27 20:05:42 target systemd[1]: Starting Restore LIO kernel target configuration... июн 27 20:05:42 target target[20770]: No saved config file at /etc/target/saveconfig.json, ok, exiting июн 27 20:05:42 target systemd[1]: Started Restore LIO kernel target configuration. [root@target ~]# yum info target Загружены модули: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.corbina.net * extras: mirror.yandex.ru * updates: mirror.yandex.ru Ошибка: Совпадений среди пакетов не найдено [root@target ~]# yum info targetcli Загружены модули: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.corbina.net * extras: mirror.yandex.ru * updates: mirror.yandex.ru Установленные пакеты Название: targetcli Архитектура: noarch Версия: 2.1.53 Выпуск: 1.el7_9 Объем: 254 k Источник: installed Из источника: updates Аннотация: An administration shell for storage targets Ссылка: https://github.com/open-iscsi/targetcli-fb Лицензия: ASL 2.0 Описание: An administration shell for configuring iSCSI, FCoE, and other : SCSI targets, using the TCM/LIO kernel target subsystem. FCoE : users will also need to install and use fcoe-utils. [root@target ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 10G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 9G 0 part ├─centos-root 253:0 0 8G 0 lvm / └─centos-swap 253:1 0 1G 0 lvm [SWAP] sdb 8:16 0 100M 0 disk sr0 11:0 1 1024M 0 rom [root@target ~]# targetcli Warning: Could not load preferences file /root/.targetcli/prefs.bin. targetcli shell version 2.1.53 Copyright 2011-2013 by Datera, Inc and others. For help on commands, type 'help'. /> # двойной tab показывает доступные команды * / backstores/ iscsi/ loopback/ bookmarks cd clearconfig exit get help ls pwd refr restoreconfig saveconfig sessions set status version /> /backstores> block/ create name=TEST-DISK-100M dev=/dev/sdb Created block storage object TEST-DISK-100M using /dev/sdb. /backstores> ls o- backstores ......................................................................................... [...] o- block ............................................................................. [Storage Objects: 1] | o- TEST-DISK-100M .......................................... [/dev/sdb (100.0MiB) write-thru deactivated] | o- alua .............................................................................. [ALUA Groups: 1] | o- default_tg_pt_gp .................................................. [ALUA state: Active/optimized] o- fileio ............................................................................ [Storage Objects: 0] o- pscsi ............................................................................. [Storage Objects: 0] o- ramdisk ........................................................................... [Storage Objects: 0] /backstores> cd .. /> iscsi/ /iscsi> create wwn=iqn.2022-06.ru.wifikzn Created target iqn.2022-06.ru.wifikzn. Created TPG 1. Global pref auto_add_default_portal=true Created default portal listening on all IPs (0.0.0.0), port 3260. /iscsi> cd .. /> ls o- / .................................................................................................. [...] o- backstores ....................................................................................... [...] | o- block ........................................................................... [Storage Objects: 1] | | o- TEST-DISK-100M ........................................ [/dev/sdb (100.0MiB) write-thru deactivated] | | o- alua ............................................................................ [ALUA Groups: 1] | | o- default_tg_pt_gp ................................................ [ALUA state: Active/optimized] | o- fileio .......................................................................... [Storage Objects: 0] | o- pscsi ........................................................................... [Storage Objects: 0] | o- ramdisk ......................................................................... [Storage Objects: 0] o- iscsi ..................................................................................... [Targets: 1] | o- iqn.2022-06.ru.wifikzn ..................................................................... [TPGs: 1] | o- tpg1 ........................................................................ [no-gen-acls, no-auth] | o- acls ................................................................................... [ACLs: 0] | o- luns ................................................................................... [LUNs: 0] | o- portals ............................................................................. [Portals: 1] | o- 0.0.0.0:3260 .............................................................................. [OK] o- loopback .................................................................................. [Targets: 0] /> iscsi/iqn.2022-06.ru.wifikzn/tpg1/luns @last bookmarks cd create delete exit get help ls pwd refresh set status /> iscsi/iqn.2022-06.ru.wifikzn/tpg1/luns create /backstores/block/TEST-DISK-100M Created LUN 0. /> iscsi/iqn.2022-06.ru.wifikzn/tpg1/acls create wwn=iqn.1994-05.com.redhat:b97aa511f960 Created Node ACL for iqn.1994-05.com.redhat:b97aa511f960 Created mapped LUN 0. /> cd .. /> ls o- / .................................................................................................. [...] o- backstores ....................................................................................... [...] | o- block ........................................................................... [Storage Objects: 1] | | o- TEST-DISK-100M .......................................... [/dev/sdb (100.0MiB) write-thru activated] | | o- alua ............................................................................ [ALUA Groups: 1] | | o- default_tg_pt_gp ................................................ [ALUA state: Active/optimized] | o- fileio .......................................................................... [Storage Objects: 0] | o- pscsi ........................................................................... [Storage Objects: 0] | o- ramdisk ......................................................................... [Storage Objects: 0] o- iscsi ..................................................................................... [Targets: 1] | o- iqn.2022-06.ru.wifikzn ..................................................................... [TPGs: 1] | o- tpg1 ........................................................................ [no-gen-acls, no-auth] | o- acls ................................................................................... [ACLs: 1] | | o- iqn.1994-05.com.redhat:b97aa511f960 ........................................... [Mapped LUNs: 1] | | o- mapped_lun0 ................................................. [lun0 block/TEST-DISK-100M (rw)] | o- luns ................................................................................... [LUNs: 1] | | o- lun0 ...................................... [block/TEST-DISK-100M (/dev/sdb) (default_tg_pt_gp)] | o- portals ............................................................................. [Portals: 1] | o- 0.0.0.0:3260 .............................................................................. [OK] o- loopback .................................................................................. [Targets: 0] /> exit Global pref auto_save_on_exit=true Configuration saved to /etc/target/saveconfig.json [root@target ~]# ss -lntpu Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port ... tcp LISTEN 0 256 *:3260 *:* ... [root@target ~]# yum install tcpdump -y [root@target ~]# tcpdump -nni enp0s8 ... 21:44:50.571382 IP 10.0.12.2.33158 > 10.0.12.1.3260: Flags [S], seq 2709168090, win 29200, options [mss 1460,sackOK,TS val 25580525 ecr 0,nop,wscale 7], length 0 21:44:50.571445 IP 10.0.12.1 > 10.0.12.2: ICMP host 10.0.12.1 unreachable - admin prohibited, length 68 ... [root@target ~]# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Пн 2022-06-27 19:04:21 MSK; 2h 41min ago Docs: man:firewalld(1) Main PID: 683 (firewalld) CGroup: /system.slice/firewalld.service └─683 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid июн 27 19:04:21 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon... июн 27 19:04:21 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon. июн 27 19:04:21 localhost.localdomain firewalld[683]: WARNING: AllowZoneDrifting is enabled. This is...ow. Hint: Some lines were ellipsized, use -l to show in full. [root@target ~]# tcpdump -nni enp0s8 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enp0s8, link-type EN10MB (Ethernet), capture size 262144 bytes 21:55:43.626409 ARP, Request who-has 10.0.12.1 tell 10.0.12.2, length 46 21:55:43.626439 ARP, Reply 10.0.12.1 is-at 08:00:27:9b:36:c9, length 28 21:55:43.626700 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [S], seq 4280087857, win 29200, options [mss 1460,sackOK,TS val 26233575 ecr 0,nop,wscale 7], length 0 21:55:43.626732 IP 10.0.12.1.3260 > 10.0.12.2.33168: Flags [S.], seq 725768401, ack 4280087858, win 28960, options [mss 1460,sackOK,TS val 9986579 ecr 26233575,nop,wscale 7], length 0 21:55:43.627021 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [.], ack 1, win 229, options [nop,nop,TS val 26233581 ecr 9986579], length 0 21:55:43.627125 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [P.], seq 1:49, ack 1, win 229, options [nop,nop,TS val 26233581 ecr 9986579], length 48 21:55:43.627130 IP 10.0.12.1.3260 > 10.0.12.2.33168: Flags [.], ack 49, win 227, options [nop,nop,TS val 9986580 ecr 26233581], length 0 21:55:43.627138 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [P.], seq 49:297, ack 1, win 229, options [nop,nop,TS val 26233581 ecr 9986579], length 248 21:55:43.627141 IP 10.0.12.1.3260 > 10.0.12.2.33168: Flags [.], ack 297, win 235, options [nop,nop,TS val 9986580 ecr 26233581], length 0 21:55:43.628532 IP 10.0.12.1.3260 > 10.0.12.2.33168: Flags [P.], seq 1:249, ack 297, win 235, options [nop,nop,TS val 9986581 ecr 26233581], length 248 21:55:43.628644 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [.], ack 249, win 237, options [nop,nop,TS val 26233583 ecr 9986581], length 0 21:55:43.628754 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [P.], seq 297:345, ack 249, win 237, options [nop,nop,TS val 26233583 ecr 9986581], length 48 21:55:43.628796 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [P.], seq 345:361, ack 249, win 237, options [nop,nop,TS val 26233583 ecr 9986581], length 16 21:55:43.628889 IP 10.0.12.1.3260 > 10.0.12.2.33168: Flags [.], ack 361, win 235, options [nop,nop,TS val 9986581 ecr 26233583], length 0 21:55:43.628907 IP 10.0.12.1.3260 > 10.0.12.2.33168: Flags [P.], seq 249:365, ack 361, win 235, options [nop,nop,TS val 9986581 ecr 26233583], length 116 21:55:43.629623 IP 10.0.12.2.33168 > 10.0.12.1.3260: Flags [R.], seq 361, ack 365, win 237, options [nop,nop,TS val 26233583 ecr 9986581], length 0 21:55:48.631243 ARP, Request who-has 10.0.12.2 tell 10.0.12.1, length 28 21:55:48.631519 ARP, Reply 10.0.12.2 is-at 08:00:27:21:20:c7, length 46 ^C 18 packets captured 18 packets received by filter 0 packets dropped by kernel
На R2:
[root@localhost ~]# hostnamectl set-hostname initiator [root@localhost ~]# bash [root@initiator ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s8 DEVICE=enp0s8 IPADDR=10.0.12.2 PREFIX=24 ONBOOT=yes [root@initiator ~]# ifdown enp0s8 [root@initiator ~]# ifup enp0s8 [root@initiator ~]# ip a ... 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:21:20:c7 brd ff:ff:ff:ff:ff:ff inet 10.0.12.2/24 brd 10.0.12.255 scope global noprefixroute enp0s8 valid_lft forever preferred_lft forever inet6 fe80::6004:14f:fe6e:b10a/64 scope link noprefixroute valid_lft forever preferred_lft forever ... [root@initiator ~]# yum install iscsi-initiator-utils ... Установлено: iscsi-initiator-utils.x86_64 0:6.2.0.874-22.el7_9 Установлены зависимости: iscsi-initiator-utils-iscsiuio.x86_64 0:6.2.0.874-22.el7_9 Выполнено! [root@initiator ~]# ls /etc/is iscsi/ issue issue.net [root@initiator ~]# cd /etc/iscsi/ [root@initiator iscsi]# ll итого 20 -rw-r--r--. 1 root root 50 июн 27 20:29 initiatorname.iscsi -rw-------. 1 root root 12602 ноя 24 2021 iscsid.conf [root@initiator iscsi]# cat initiatorname.iscsi InitiatorName=iqn.1994-05.com.redhat:b97aa511f960 # это имя добавляем в acls target [root@initiator iscsi]# man iscsiadm # копируем из радела examples [root@initiator iscsi]# iscsiadm --mode discoverydb --type sendtargets --portal 10.0.12.1 --discover iscsiadm: cannot make connection to 10.0.12.1: No route to host iscsiadm: cannot make connection to 10.0.12.1: No route to host ^Ciscsiadm: caught SIGINT, exiting... [root@initiator iscsi]# yum install tcpdump ... Установлено: tcpdump.x86_64 14:4.9.2-4.el7_7.1 Установлены зависимости: libpcap.x86_64 14:1.5.3-13.el7_9 Выполнено! # после отключения файрвола соединение устанавливается [root@initiator iscsi]# iscsiadm --mode discoverydb --type sendtargets --portal 10.0.12.1 --discover 10.0.12.1:3260,1 iqn.2022-06.ru.wifikzn [root@initiator iscsi]# man iscsiadm # копируем из радела examples [root@initiator iscsi]# iscsiadm --mode node --targetname iqn.2022-06.ru.wifikzn --portal 10.0.12.1:3260 --login Logging in to [iface: default, target: iqn.2022-06.ru.wifikzn, portal: 10.0.12.1,3260] (multiple) Login to [iface: default, target: iqn.2022-06.ru.wifikzn, portal: 10.0.12.1,3260] successful. [root@initiator iscsi]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 10G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 9G 0 part ├─centos-root 253:0 0 8G 0 lvm / └─centos-swap 253:1 0 1G 0 lvm [SWAP] sdb 8:16 0 100M 0 disk sr0 11:0 1 1024M 0 rom [root@initiator iscsi]# mkfs.xfs /dev/sdb meta-data=/dev/sdb isize=512 agcount=4, agsize=6400 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0, sparse=0 data = bsize=4096 blocks=25600, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal log bsize=4096 blocks=855, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@initiator iscsi]# mkdir /test && mount /dev/sdb /test [root@initiator iscsi]# cd /test [root@initiator test]# touch lkscs ljksndlwkn lkndlkwnd [root@initiator test]# ll итого 0 -rw-r--r--. 1 root root 0 июн 27 22:07 ljksndlwkn -rw-r--r--. 1 root root 0 июн 27 22:07 lkndlkwnd -rw-r--r--. 1 root root 0 июн 27 22:07 lkscs [root@initiator test]# df -h Файловая система Размер Использовано Дост Использовано% Cмонтировано в devtmpfs 484M 0 484M 0% /dev tmpfs 496M 0 496M 0% /dev/shm tmpfs 496M 13M 483M 3% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/mapper/centos-root 8,0G 1,4G 6,7G 18% / /dev/sda1 1014M 138M 877M 14% /boot tmpfs 100M 0 100M 0% /run/user/0 /dev/sdb 97M 5,3M 92M 6% /test