我正在做一些利用iSCSI的测试。奇怪的事情正在发生,我正在寻找一个解释。如果有人可以提出建议,我将不胜感激。所以我们开始:
有两个运行Debian9的虚拟机。一个是iSCSI目标(服务器),另一个是iSCSI启动器(客户端)。 服务器共享一个磁盘(即/ dev / sdb)或该磁盘上的一个分区(即/ dev / sdb1)作为iSCSI LUN。客户端连接到服务器,并将LUN正确识别为新设备(即/ dev / sdc)。然后在/ dev / sdc上配置LVM。没有什么异常:PV在/ dev / sdc上,PV在PV上,LV在VG上,一些数据在LV上。一切都按应有的方式进行。 然后关闭两台机器,然后再次启动它们。所有重要的服务都设置为自动启动,两台机器互相看到,客户端创建一个会话(连接到iSCSI服务器)。但是现在魔术发生了:
尽管客户端正在连接到服务器,但它不再能够看到LUN-因此客户端上没有/ dev / sdc设备或PV / VG / LV。 服务器将目标(LUN)正确显示为已共享,但是LUN大小显示为“ 0”,后备存储路径显示为“ none”。 iSCSI服务器现在也显示PV / VG / LV。
我的第一个想法是将LVM元数据复制到iSCSI服务器,但是服务器上没有与lvm2相关的软件包。由于这些机器将用于群集测试(一旦我解决了iSCSI问题),因此iSCSI客户端上的lvmlocking_type已设置为3(使用clvmd进行群集锁定)-不知道这是否有所不同。还检查共享/ 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
答案 0 :(得分:0)
服务器正在检测LVM并启动它。稍后,当它尝试共享/dev/sdb1
时,由于设备正在使用,所以它不能共享。
您可以通过服务器上lvm.conf
中的过滤器来防止这种情况。如果您根本不需要服务器上的LVM,则可以告诉它避免扫描(删除)所有块设备:
filter = [ "r/.*/" ]
来源:https://www.centos.org/docs/5/html/Cluster_Logical_Volume_Manager/lvm_filters.html