Linux iscsi initiator windows target

Записки IT специалиста

В продолжение темы iSCSI в среде Linux мы затронем тему инициатора, которого мы ранее не касались, рассказывая о подключении iSCSI-дисков исключительно к Windows-системам. Несомненно, это наше упущение, и мы постараемся его исправить. Перед тем как приступать к настройке инициатора мы советуем хотя бы по диагонали прочитать одну из наших статей по iSCSI или иную справочную информацию, чтобы иметь базовое представление о терминологии и назначении отдельных частей системы.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Еще раз коротко напомним, сервер iSCSI называется портал, он содержит цели (таргет, Target), каждая цель предоставляет доступ к одному или нескольким блочным устройствам. Клиент iSCSI называется инициатор (Initiator), одна цель может быть подключена только к одному инициатору, исключения — кластерные системы.

В качестве инициатора в Linux системах используется Open-iSCSI, установим его, перед установкой не забудем обновить список пакетов. Здесь и далее все команды выполняются от имени суперпользователя или через sudo.

apt update
apt install open-iscsi

Затем перейдем в /etc/iscsi и откроем файл iscsid.conf. Найдем и раскомментируем опцию:

Ниже обязательно закомментируем:

Затем зададим параметры аутентификации инициатора, раскомментировав опции:

node.session.auth.authmethod = CHAP

node.session.auth.username = username
node.session.auth.password = password

Если предполагается работа только с одной целью, то можно сразу указать здесь используемые логин и пароль, можно же оставить как есть, указав нужные данные уже при настройке подключения к цели.

Сохраним файл и перезапустим службу:

service open-iscsi restart

Теперь попробуем подключиться к порталу и получить список доступных целей:

iscsiadm -m discovery -p 192.168.111.153 -t st

Это короткая запись команды, полная будет выглядеть так:

iscsiadm --mode discovery --portal 192.168.111.153 --type sendtargets

Из чего становится понятно, что мы должны подключиться к порталу 192.168.111.153 в режиме обнаружения и получить него все доступные цели.

После успешного выполнения данной команды в /etc/iscsi появятся две директории nodes — которая содержит вложенные каталоги для каждого IQN — и send_targets — с вложенными каталогами для каждой цели. Перейдем в nodes и провалимся в каталог с IQN нашей цели, в нем откроем еще один каталог с адресом и портом, в котором обнаружим файл default. Откроем его на редактирование.

Читайте также:  Linux change hostname centos

Прежде всего убедимся, что

Если же вам нужно, чтобы указанная цель не подключалась автоматически при загрузке, то измените automatic на manual.

node.session.auth.username = username
node.session.auth.password = password

И укажите там логин и пароль для подключения к вашей цели.

Теперь можно подключить цель, для этого можно использовать команду:

Которая подключит все цели, конфигурационные файлы которых находятся в каталоге nodes, если требуется подключить только отдельную цель, то укажите ее явно:

iscsiadm -m node --targetname "iqn.2009-02.lab.interface31:deban-test-target" --login

Данная команда отключит все цели, либо:

iscsiadm -m node --targetname "iqn.2009-02.lab.interface31:deban-test-target" --logout

Для отключения только определенной.

Для проверки можем выполнить:

Которая покажет все подключенные блочные устройства, среди которых должен оказаться и предоставляемый целью диск, в нашем случае на скриншоте ниже виден 2 ГБ диск sdb. Также можно посмотреть все текущие подключения iSCSI:

open-iscsi-debian-ubuntu-001.png

Для удаления ненужных целей воспользуйтесь командой:

iscsiadm -m discovery -p 192.168.111.153 -o delete

Которая удалит все связанные с указанным порталом (опция -p) цели.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Подпишись на наш Telegram-канал

Или подпишись на наш Телеграм-канал:

Источник

Configure iSCSI Target on Centos 7 & Initiator on Windows Server 2016

in this post i configure iSCSI target on CentOS 7 and iSCSI initiator on Windows Server 2016, both are VMs on VMware vSphere 6.7 in my demolab, config:

Environment

iSCSI target

  • Centos 7 minimal
  • 2 vCPU
  • 2 GB RAM
  • 20 GB HDD0 – OS
  • 500 GB HDD1 – DATA (used for iSCSI target)
  • 2 NIC
    • 1 x VMXNET3 – mng – ens192 – 192.168.168.111
    • 1 x VMXNET3 – iSCSI network – ens224 – 192.168.168.130

    iSCSI client

    • Windows Server 2016
    • 4 vCPU
    • 8 GB RAM
    • 60 GB HHD0 – OS
    • 2 NIC
      • 1 x VMXNET3 – mng – 192.168.168.112
      • 1 x VMXNET3 – iSCSI network – 192.168.168.131

      Configure storage

      [root@iscsi01 ~]# fdisk -l Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000d377e Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 41943039 19921920 8e Linux LVM Disk /dev/sdb: 536.9 GB, 536870912000 bytes, 1048576000 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos-root: 18.2 GB, 18249416704 bytes, 35643392 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes

      you can see that my system has a 500 GB disk (/dev/sdb), i will create a 480 GB partition with LVM

      [root@iscsi01 ~]# fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0xf886711c. Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-1048575999, default 2048): Using default value 2048 Last sector, +sectors or +size (2048-1048575999, default 1048575999): +450G Partition 1 of type Linux and of size 450 GiB is set Command (m for help): t Selected partition 1 Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.

      use fdisk for create a new partition

      • n – new partititon
      • p – primary
      • 1 – partition number
      • +450G – create 450 GB partition
      • t – select partition
      • 8e – change it as LVM label
      • w – save
      [root@iscsi01 ~]# pvcreate /dev/sdb1 Physical volume "/dev/sdb1" successfully created. [root@iscsi01 ~]# vgcreate vg_iscsi /dev/sdb1 Volume group "vg_iscsi" successfully created [root@iscsi01 ~]# lvcreate -l 100%FREE -n lv_iscsi vg_iscsi Logical volume "lv_iscsi" created.

      create a LVM – in my case /dev/sdb1

      Configure iSCSI target

      [root@iscsi01 ~]# yum -y install targetcli

      first of all install targetcli package

      [root@iscsi01 ~]# targetcli Warning: Could not load preferences file /root/.targetcli/prefs.bin. targetcli shell version 2.1.fb46 Copyright 2011-2013 by Datera, Inc and others. For help on commands, type 'help'.
      /> cd backstores/block /backstores/block> create iscsi_disk1 /dev/vg_iscsi/lv_iscsi Created block storage object iscsi_disk1 using /dev/vg_iscsi/lv_iscsi.

      i use my existing logical volume /dev/vg_iscsi/lv_iscsi for storage object iscsi_disk1 as a block-type backing store

      Created target iqn.2018-06.target01.centos:disk1. Created TPG 1. Global pref auto_add_default_portal=true Created default portal listening on all IPs (0.0.0.0), port 3260. /iscsi> ls o- iscsi . [Targets: 1] o- iqn.2018-06.target01.centos:disk1 . [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]

      create a target, in default config the target listening on all IPs… 0.0.0.0:3260, but i have separated network 192.168.130.x.

      /iscsi> cd iqn.2018-06.target01.centos:disk1/tpg1/portals/ /iscsi/iqn.20. /tpg1/portals> delete 0.0.0.0 3260 Deleted network portal 0.0.0.0:3260 /iscsi/iqn.20. /tpg1/portals> create 192.168.130.130 Using default IP port 3260 Created network portal 192.168.130.130:3260.

      delete 0.0.0.0 3260 target and create 192.168.130.130 target

      /iscsi/iqn.20. /tpg1/portals> cd .. /iscsi/iqn.20. os:disk1/tpg1> cd acls /iscsi/iqn.20. sk1/tpg1/acls> create iqn.1991-05.com.microsoft:vm-udp Created Node ACL for iqn.1991-05.com.microsoft:vm-udp

      create ACL for my client machine (WS2016) with IQN: „iqn.1991-05.com.microsoft:vm-udp

      /iscsi/iqn.20. sk1/tpg1/acls> cd .. /iscsi/iqn.20. os:disk1/tpg1> luns/ /iscsi/iqn.20. sk1/tpg1/luns> create /backstores/block/iscsi_disk1 Created LUN 0. Created LUN 0->0 mapping in node ACL iqn.1991-05.com.microsoft:vm-udp

      create a LUN under target and map it on my client

      /iscsi> cd .. /> ls o- / . [. ] o- backstores . [. ] | o- block . [Storage Objects: 1] | | o- iscsi_disk1 . [/dev/vg_iscsi/lv_iscsi (480.0GiB) 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.2018-06.target01.centos:disk1 . [TPGs: 1] | o- tpg1 . [no-gen-acls, no-auth] | o- acls . [ACLs: 1] | | o- iqn.1991-05.com.microsoft:vm-udp . [Mapped LUNs: 1] | | o- mapped_lun0 . [lun0 block/iscsi_disk1 (rw)] | o- luns . [LUNs: 1] | | o- lun0 . [block/iscsi_disk1 (/dev/vg_iscsi/lv_iscsi) (default_tg_pt_gp)] | o- portals . [Portals: 1] | o- 192.168.130.130:3260 . [OK] o- loopback . [Targets: 0]

      verify the target server configuration

      /> saveconfig Configuration saved to /etc/target/saveconfig.json /> exit Global pref auto_save_on_exit=true Last 10 configs saved in /etc/target/backup/. Configuration saved to /etc/target/saveconfig.json

      save config and exit targetcli console

      [root@iscsi01 ~]# systemctl enable target.service [root@iscsi01 ~]# systemctl restart target.service

      enable & restart target.service

      [root@iscsi01 ~]# firewall-cmd --permanent --add-port=3260/tcp [root@iscsi01 ~]# firewall-cmd --reload

      config firewall for iSCSI traffic

      Configure iSCSI client (WS2016)

      on WS2016 run iSCSI configuration and as target use ip of iSCSI target – 192.168.168.130 and click to quick connect.

      Источник

Оцените статью
Adblock
detector