Конфигурация iSCSI LVM не сохраняется после перезагрузки
Я делаю тестирование, в котором я использую iSCSI. Странные вещи происходят, и я ищу объяснение. Если бы кто-нибудь мог что-то предложить, я был бы очень благодарен. Итак, поехали:
На Debian9 работают две виртуальные машины. Один из них - целевой объект iSCSI (сервер), другой - инициатор iSCSI (клиент). Сервер совместно использует диск (т. Е. / Dev/sdb) или раздел на этом диске (т. Е. / Dev/sdb1) в качестве iSCSI LUN. Клиент подключается к серверу и правильно распознает LUN как новое устройство (т. Е. / Dev/sdc). Затем LVM настраивается в / dev / sdc. Ничего необычного: PV на /dev/sdc, VG на PV, LV на VG, некоторые данные о LV. Все работает так, как должно. Затем я выключаю обе машины и снова запускаю их. Все важные службы настроены на автоматический запуск, обе машины видят друг друга, клиент создает сеансы (подключается к серверу iSCSI). Но теперь происходит волшебство:
Несмотря на то, что клиент подключен к серверу, он больше не видит LUN - поэтому на клиенте нет устройства / dev / sdc или PV / VG / LV. Сервер правильно отображает цель (LUN) как совместно используемую, но размер LUN отображается как "0", а путь к резервному хранилищу - как "none". PV / VG / LV также теперь отображаются сервером iSCSI.
Моя первая идея заключается в том, что метаданные LVM копируются на сервер iSCSI, но на сервере нет пакетов, связанных с lvm2. Так как эти машины будут использоваться (как только я решу проблемы с iSCSI) для кластерных тестов, lvm lock_type уже установлен на 3 (кластеризованная блокировка с помощью clvmd) на клиенте iSCSI - не уверен, что это имеет значение здесь. Также проверяется, имеет ли раздел "/ dev / sdb1" какую-либо разницу по сравнению с общим устройством / dev / sdb, но без разницы. Так что в настоящее время у меня нет идей. Может ли кто-нибудь помочь? Заранее спасибо!
перед перезагрузкой сервер:
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 8G 0 disk
├─sda1 8:1 0 7G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 1022M 0 part [SWAP]
sdb 8:16 0 8G 0 disk
└─sdb1 8:17 0 8G 0 part
sr0 11:0 1 1024M 0 rom
# tgtadm --mode target --op show
Target 1: iqn.20181018:test
System information:
Driver: iscsi
State: ready
I_T nexus information:
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00010000
SCSI SN: beaf10
Size: 0 MB, Block size: 1
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
SWP: No
Thin-provisioning: No
Backing store type: null
Backing store path: None
Backing store flags:
LUN: 1
Type: disk
SCSI ID: IET 00010001
SCSI SN: beaf11
Size: 8589 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
SWP: No
Thin-provisioning: No
Backing store type: rdwr
Backing store path: /dev/sdb
Backing store flags:
Account information:
vgs-user-incoming
vgs-user-outcoming (outgoing)
ACL information:
192.168.106.171
перед перезагрузкой клиент:
# lvs
WARNING: Not using lvmetad because locking_type is 3 (clustered).
connect() failed on local socket: No such file or directory
Internal cluster locking initialisation failed.
WARNING: Falling back to local file-based locking.
Volume Groups with the clustered attribute will be inaccessible.
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
virtualMachine1 vg1 -wi-a----- 2,00g
lv_001 vg2 -wi-a----- 4,00m
lv_002 vg2 -wi-a----- 2,00g
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 8G 0 disk
├─sda1 8:1 0 7G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 1022M 0 part [SWAP]
sdb 8:16 0 4G 0 disk
└─sdb1 8:17 0 4G 0 part
└─vg1-virtualMachine1 254:0 0 2G 0 lvm
sdc 8:32 0 8G 0 disk
├─vg2-lv_001 254:1 0 4M 0 lvm
└─vg2-lv_002 254:2 0 2G 0 lvm
sr0 11:0 1 1024M 0 rom
после перезагрузки сервер:
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 8G 0 disk
├─sda1 8:1 0 7G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 1022M 0 part [SWAP]
sdb 8:16 0 8G 0 disk
└─sdb1 8:17 0 8G 0 part
├─vg2-lv_001 254:0 0 4M 0 lvm
└─vg2-lv_002 254:1 0 2G 0 lvm
sr0 11:0 1 1024M 0 rom
# tgtadm --mode target --op show
Target 1: iqn.20181018:test
System information:
Driver: iscsi
State: ready
I_T nexus information:
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00010000
SCSI SN: beaf10
Size: 0 MB, Block size: 1
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
SWP: No
Thin-provisioning: No
Backing store type: null
Backing store path: None
Backing store flags:
Account information:
vgs-user-incoming
vgs-user-outcoming (outgoing)
ACL information:
192.168.106.171
после перезагрузки клиент:
# lvs
WARNING: Not using lvmetad because locking_type is 3 (clustered).
connect() failed on local socket: No such file or directory
Internal cluster locking initialisation failed.
WARNING: Falling back to local file-based locking.
Volume Groups with the clustered attribute will be inaccessible.
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
virtualMachine1 vg1 -wi-a----- 2,00g
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 8G 0 disk
├─sda1 8:1 0 7G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 1022M 0 part [SWAP]
sdb 8:16 0 4G 0 disk
└─sdb1 8:17 0 4G 0 part
└─vg1-virtualMachine1 254:0 0 2G 0 lvm
sr0 11:0 1 1024M 0 rom
1 ответ
Сервер обнаруживает LVM и запускает его. Позже, когда он пытается поделиться /dev/sdb1
не может, потому что устройство используется.
Вы можете предотвратить это с помощью фильтра в lvm.conf
на сервере. Если вам вообще не нужен LVM на сервере, вы можете просто сказать ему избегать сканирования (удаления) всех блочных устройств:
filter = [ "r/.*/" ]
Источник: https://www.centos.org/docs/5/html/Cluster_Logical_Volume_Manager/lvm_filters.html