При работе в среде хранения данных часто возникает необходимость добавления, удаления или изменения размера устройств хранения.
После выделения хранилища нам необходимо просканировать и проверить выделенный SAN-диск .
В этом руководстве я покажу команды для проверки/определения информации о подключенном LUN в системе Linux.
Что такое LUN
LUN – это номер логической единицы.
Он может использоваться для обозначения всего физического диска или подмножества большего физического диска или дискового тома.
Физический диск или дисковый том может быть целым одним диском, разделом (подмножеством) одного диска или дисковым томом RAID-контроллера, состоящим из нескольких дисков, объединенных вместе для большей емкости и избыточности.
1. Проверка подключенного LUN или SAN диска на Linux
Чтобы проверить подключенный LUN с устройства хранения данных в Linux, мы можем использовать содержимое файла /proc/scsi/scsi, но это даст вам некоторую информацию, и вы не сможете отличить физический подключенный диск от LUN.
Отобразите содержимое, как показано ниже:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# cat /proc/scsi/scsi Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: VMware, Model: VMware Virtual S Rev: 1.0 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 01 Lun: 00 Vendor: VMware, Model: VMware Virtual S Rev: 1.0 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 02 Lun: 00 Vendor: VMware, Model: VMware Virtual S Rev: 1.0 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 00 Lun: 00 Vendor: NECVMWar Model: VMware IDE CDR10 Rev: 1.00 Type: CD-ROM ANSI SCSI revision: 05 Host: scsi3 Channel: 00 Id: 00 Lun: 00 Vendor: LIO-ORG Model: block Rev: 4.0 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi3 Channel: 00 Id: 00 Lun: 01 Vendor: LIO-ORG Model: block2 Rev: 4.0 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi3 Channel: 00 Id: 00 Lun: 02 Vendor: LIO-ORG Model: rhelblock Rev: 4.0 Type: Direct-Access ANSI SCSI revision: 05 |
Обычно отображается как Host: scsi3 Channel: 00 Id: 00 Lun: 00
Ниже приведен другой пример того же файла, в котором используется другой поставщик систем хранения.
# cat /proc/scsi/scsi
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: HP 36.4G Model: MAN3367MC Rev: HP05 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 00 Lun: 00 Vendor: COMPAQ Model: HSV110 ©COMPAQ Rev: 2003 Type: Unknown ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 00 Lun: 02 Vendor: COMPAQ Model: HSV110 ©COMPAQ Rev: 2003 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 00 Lun: 03 Vendor: COMPAQ Model: HSV110 ©COMPAQ Rev: 2003 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 01 Lun: 00 Vendor: COMPAQ Model: HSV110 ©COMPAQ Rev: 2003 Type: Unknown ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 01 Lun: 02 Vendor: COMPAQ Model: HSV110 ©COMPAQ Rev: 2003 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 01 Lun: 03 Vendor: COMPAQ Model: HSV110 ©COMPAQ Rev: 2003 |
Вы можете использовать команду iscsiadm (используется только при использовании iscsi target), чтобы получить информацию о подключенных lun.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# iscsiadm -m session -P 3 iSCSI Transport Class version 2.0-870 version 6.2.0.873-35 Target: iqn.2017-06.com.linoxide:target1 (non-flash) Current Portal: 172.16.20.139:3260,1 Persistent Portal: 172.16.20.139:3260,1 ********** Interface: ********** ............ ............ ************************ Attached SCSI devices: ************************ Host Number: 3 State: running scsi3 Channel 00 Id 0 Lun: 0 Attached scsi disk sdd State: running scsi3 Channel 00 Id 0 Lun: 1 Attached scsi disk sde State: running scsi3 Channel 00 Id 0 Lun: 2 Attached scsi disk sdf State: running |
Вы также можете проверить нижеприведенный путь для получения информации о луне.
1 2 3 4 5 6 7 8 9 10 |
# ls /dev/disk/by-path/ ip-172.16.20.139:3260-iscsi-iqn.2017-06.com.linoxide:target1-lun-0 ip-172.16.20.139:3260-iscsi-iqn.2017-06.com.linoxide:target1-lun-1 ip-172.16.20.139:3260-iscsi-iqn.2017-06.com.linoxide:target1-lun-2 pci-0000:00:07.1-ata-2.0 pci-0000:00:10.0-scsi-0:0:0:0 pci-0000:00:10.0-scsi-0:0:0:0-part1 pci-0000:00:10.0-scsi-0:0:0:0-part2 pci-0000:00:10.0-scsi-0:0:1:0 pci-0000:00:10.0-scsi-0:0:2:0 |
Также попробуйте использовать команду dmesg
1 2 3 4 5 |
# dmesg | grep -i "attached " Attached scsi disk sda at scsi0, channel 0, id 0, lun 0 Attached scsi disk sdb at scsi2, channel 0, id 0, lun 2 Attached scsi disk sdc at scsi2, channel 0, id 0, lun 3 Attached scsi disk sdd at scsi2, channel 0, id 1, lun 2 |
2. Использование команды multipath
По умолчанию служба multipathing в Redhat работает под управлением демона multipathd.
Ниже приведены команды с сервера, на котором включено multipathing с помощью демона multipathd, и из его вывода вы можете проверить информацию Lun, идентифицированную ОС.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# multipath -v4 -ll Jun 21 04:58:40 | loading /lib64/multipath/libcheckdirectio.so checker Jun 21 04:58:40 | loading /lib64/multipath/libprioconst.so prioritizer Jun 21 04:58:40 | Discover device /sys/devices/pci0000:00/0000:00:07.1/ata2/host2/target2:0:0/2:0:0:0/block/sr0 Jun 21 04:58:40 | sr0: device node name blacklisted Jun 21 04:58:40 | Discover device /sys/devices/pci0000:00/0000:00:10.0/host0/target0:0:0/0:0:0:0/block/sda ................................ ................................ ===== paths list ===== uuid hcil dev dev_t pri dm_st chk_st vend/prod/rev dev_st 0:0:0:0 sda 8:0 -1 undef ready VMware, ,VMware Virtual S running 0:0:1:0 sdb 8:16 -1 undef ready VMware, ,VMware Virtual S running 0:0:2:0 sdc 8:32 -1 undef ready VMware, ,VMware Virtual S running 3:0:0:0 sdd 8:48 -1 undef ready LIO-ORG ,block running 3:0:0:1 sde 8:64 -1 undef ready LIO-ORG ,block2 running 3:0:0:2 sdf 8:80 -1 undef ready LIO-ORG ,rhelblock running Jun 21 04:58:40 | directio checker refcount 6 Jun 21 04:58:40 | directio checker refcount 5 Jun 21 04:58:40 | directio checker refcount 4 Jun 21 04:58:40 | directio checker refcount 3 Jun 21 04:58:40 | directio checker refcount 2 Jun 21 04:58:40 | directio checker refcount 1 Jun 21 04:58:40 | unloading const prioritizer Jun 21 04:58:40 | unloading directio checker |