在服务器重新启动后,Targetcli配置丢失了,我尝试用targetcli restoreconfig <backupFile>配置从备份文件恢复配置,但没有还原命令storageobjects or targets present, not restoring的输出消息。下面是targetcli ls和systemctl status -l target的输出
targetcli ls
o- / ................................................................................................ [...]
o- backstores ..................................................................................... [...]
| o- block ......................................................................... [Storage Objects: 0]
| o- fileio ........................................................................ [Storage Objects: 0]
| o- pscsi ......................................................................... [Storage Objects: 0]
| o- ramdisk ....................................................................... [Storage Objects: 0]
o- iscsi ................................................................................... [Targets: 1]
| o- iqn.2017-01.com.urgroup-tz:target ........................................................ [TPGs: 1]
| o- tpg1 ...................................................................... [no-gen-acls, no-auth]
| o- acls ................................................................................. [ACLs: 1]
| | o- iqn.2017-01.com.urgroup-tz:initiator ........................................ [Mapped LUNs: 0]
| o- luns ................................................................................. [LUNs: 0]
| o- portals ........................................................................... [Portals: 1]
| o- 0.0.0.0:3260 ............................................................................ [OK]
o- loopback ................................................................................ [Targets: 0]
# systemctl status -l target
● target.service - Restore LIO kernel target configuration
Loaded: loaded (/usr/lib/systemd/system/target.service; enabled; vendor preset: disabled)
Active: active (exited) since Ij 2017-03-10 17:18:43 EST; 1 day 18h ago
Main PID: 1342 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/target.service
Mac 10 17:18:43 server1 target[1342]: Could not create StorageObject tools_disk: Cannot configure StorageObject because device /dev/cl/tools_lv is already in use, skipped
Mac 10 17:18:43 server1 target[1342]: Could not create StorageObject bamboo_disk: Cannot configure StorageObject because device /dev/cl/bamboo_lv is already in use, skipped
Mac 10 17:18:43 server1 target[1342]: Could not create StorageObject metadata_disk: Cannot configure StorageObject because device /dev/cl/ovirt_domain_metadata is already in use, skipped
Mac 10 17:18:43 server1 target[1342]: Could not find matching StorageObject for LUN 2, skipped
Mac 10 17:18:43 server1 target[1342]: Could not find matching StorageObject for LUN 1, skipped
Mac 10 17:18:43 server1 target[1342]: Could not find matching StorageObject for LUN 0, skipped
Mac 10 17:18:43 server1 target[1342]: Could not find matching TPG LUN 0 for MappedLUN 0, skipped
Mac 10 17:18:43 server1 target[1342]: Could not find matching TPG LUN 1 for MappedLUN 1, skipped
Mac 10 17:18:43 server1 target[1342]: Could not find matching TPG LUN 2 for MappedLUN 2, skipped
Mac 10 17:18:43 server1 systemd[1]: Started Restore LIO kernel target configuration.发布于 2017-03-26 10:31:38
确保在重新启动之前启用了服务:
systemctl启用目标
在这里有帮助。
米斯蒂奇
发布于 2017-03-23 08:45:37
如果将LVM托管存储池用于备份设备,则应确保LVM/Devicemapper丢弃第二层VGs/LV。
我所说的第二层VGs/LVs是什么意思;例如:
假设下面的LV (DISK_1)具有由iSCSI客户端初始化的另一个VG,并用于客户端内的服务。一个磁盘中有两个不同的VG层,另一个磁盘中有一个VG层。
如果您的LVM子系统扫描第一层LVM中的VGs,那么新发现的第二层VGs和它中的LVs将被映射到目标服务器。由于LV被映射到目标服务器(通过devicemapper),lio_target模块将无法将它们作为备份加载。
[root@target ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/mapper/mpatha STORAGE_POOL lvm2 a-- 12.00t 2.50t
[root@target ~]# lvs
LV VG Attr LSize
DISK_1 STORAGE_POOL -wi-ao---- 5.00t
DISK_2 STORAGE_POOL -wi-ao---- 1.00t
DISK_3 STORAGE_POOL -wi-ao---- 2.50t
DISK_4 STORAGE_POOL -wi-ao---- 1.00t
[root@target ~]#在引导OS期间,LVM搜索VGs和LVs。这就是为什么你一开始没有意识到这个问题。
您应该设置一个LVM过滤器来扫描磁盘中的新VGs。参见lvm.conf手册中的global_filter。使用此配置,您将能够丢弃第二层VGs。下面是上述存储体系结构的示例,仅用于扫描PVs中的VGs,并丢弃所有块设备的其余部分。
[root@target ~]# diff /etc/lvm/lvm.conf{,.orginal}
152d151
< global_filter = [ "a|/dev/mapper/mpath.|", "r|.*/|" ]
[root@target ~]#您可以简单地使用脚本在启动和恢复LIO目标配置后运行"vgchange -an 2nd_layer_VG“。不过,我建议使用LVM的"global_filter“特性。
注意:在CentOS 7/Red 7之前,初始化第二层LVs没有问题,targetd仍然能够将它们作为LUN加载。然而,新的linux(LIO)在这种情况下失败了。我没有进一步讨论这个问题。
问候..。
发布于 2017-07-29 01:00:46
您应该在引导时运行target.service以恢复LIO配置,并确保iscsid.service运行是为了导出您的LIO设备,并且tgtd没有运行,因为它将与其他LIO守护进程发生冲突。
应该是这样的,
root@centos7host# systemctl | grep "target.service\|iscsi"
iscsi-shutdown.service
loaded active exited Logout off all iSCSI sessions on shutdown
iscsi.service
loaded active exited Login and scanning of iSCSI devices
iscsid.service
loaded active running Open-iSCSI
iscsiuio.service
loaded active running iSCSI UserSpace I/O driver
target.service
loaded active exited Restore LIO kernel target configuration
iscsid.socket
loaded active running Open-iSCSI iscsid Socket
iscsiuio.socket
loaded active running Open-iSCSI iscsiuio Socket您还需要清理之前所做的任何事情,因为这会使您感到困惑。您可能已经有了在LIO之外创建的卷,因此,当您稍后使用targetcli管理它们时,您将得到一些不正确导出的内容,并且会变得很混乱。
如果可能的话,如果你有这个选项的话,我会建议你擦除这个系统,并做一个干净的开始。从一开始就正确设置iscsi子系统非常重要,因为在运行后使用它是危险的,因为您可以对用户数据进行许多潜在的破坏性操作。
https://serverfault.com/questions/837827
复制相似问题