LINUX.ORG.RU
решено ФорумAdmin

Исключить устройства из vgscan

 , , vgscan


0

1

По iscsi к хосту подключены блочные устройства, что бы их не сканировать на предмет LVM модифицирую:

/etc/lvm/lvm.conf 
к виду
...
scan = [ "/dev" ]
...
filter = ["a/.*/", "r|/dev/sdh1|", "r|/dev/sdi1|", "r|/dev/sdj1|", "r|/dev/sdk1|", "r|/dev/sdl1|", "r|/dev/sdm1|" ]
...

Где исключаю, конкретные блочные устройства из сканирования. Далее выполняю
pvscan
Получаю в выхлопе присутсвие исключенных PV
  WARNING: Duplicate VG name vg0: Existing pyEwjJ-pRmV-OdXt-YZcC-fEm4-GTfr-jEgO5J (created here) takes precedence over LyMzsZ-Il8G-8vjb-hYjp-CydC-jh4d-bIwh4f
  WARNING: Duplicate VG name vg0: Existing pyEwjJ-pRmV-OdXt-YZcC-fEm4-GTfr-jEgO5J (created here) takes precedence over Ifa4RS-Lerb-By3K-kZfv-zG1L-bRTS-OVVq8c
  WARNING: Duplicate VG name vg0: Existing pyEwjJ-pRmV-OdXt-YZcC-fEm4-GTfr-jEgO5J (created here) takes precedence over zVhwBw-XfBS-dh97-a0rt-Eeiq-xSAX-UxLeJJ
  WARNING: Duplicate VG name vg0: Existing pyEwjJ-pRmV-OdXt-YZcC-fEm4-GTfr-jEgO5J (created here) takes precedence over uy2y29-3LRP-CAV4-QmLT-9if2-ysiR-Oconi3
  WARNING: Duplicate VG name vg0: Existing pyEwjJ-pRmV-OdXt-YZcC-fEm4-GTfr-jEgO5J (created here) takes precedence over wrDujb-RvrV-KpO5-xUHK-8EzD-tzBa-ku11bW
  PV /dev/sdm1   VG vg0      lvm2 [10,00 GiB / 3,48 GiB free]
  PV /dev/sdl1   VG vg0      lvm2 [10,00 GiB / 3,48 GiB free]
  PV /dev/sdk1   VG vg0      lvm2 [10,00 GiB / 3,48 GiB free]
  PV /dev/sdj1   VG vg0      lvm2 [10,00 GiB / 3,48 GiB free]
  PV /dev/sdi1   VG puppet   lvm2 [10,00 GiB / 0    free]
  PV /dev/sdh1   VG vg0      lvm2 [10,00 GiB / 2,55 GiB free]
  PV /dev/md0    VG vg0      lvm2 [465,77 GiB / 49,52 GiB free]
  Total: 7 [525,74 GiB] / in use: 7 [525,74 GiB] / in no VG: 0 [0   ]

Причем у «/dev/sdm1» есть «diskvg0» таргете iscsi, но не «vg0». Делаю
vgscan -vvvv
и процесс зависает на
#device/dev-io.c:487         Opened /dev/sdm RO
#device/dev-io.c:260       /dev/sdm: size is 20971520 sectors
#device/dev-io.c:134         /dev/sdm: block size is 4096 bytes
#filters/filter.c:160         /dev/sdm: Skipping: Partition table signature found
#device/dev-io.c:533         Closed /dev/sdm
#device/dev-io.c:487         Opened /dev/sdm1 RO
#device/dev-io.c:260       /dev/sdm1: size is 20967424 sectors
#device/dev-io.c:533         Closed /dev/sdm1
#device/dev-io.c:260       /dev/sdm1: size is 20967424 sectors
#device/dev-io.c:487         Opened /dev/sdm1 RO O_DIRECT
#device/dev-io.c:134         /dev/sdm1: block size is 4096 bytes
#device/dev-io.c:533         Closed /dev/sdm1
#filters/filter-composite.c:31         Using /dev/sdm1
#device/dev-io.c:487         Opened /dev/sdm1 RO O_DIRECT
#device/dev-io.c:134         /dev/sdm1: block size is 4096 bytes
#label/label.c:160       /dev/sdm1: lvm2 label detected
#cache/lvmcache.c:1136         lvmcache: /dev/sdm1: now in VG #orphans_lvm2 (#orphans_lvm2)
#format_text/format-text.c:1137         /dev/sdm1: Found metadata at 6656 size 1309 (in area at 4096 size 1044480) for vg0 (wrDujb-RvrV-KpO5-xUHK-8EzD-tzBa-ku11bW)
  WARNING: Duplicate VG name vg0: Existing pyEwjJ-pRmV-OdXt-YZcC-fEm4-GTfr-jEgO5J (created here) takes precedence over wrDujb-RvrV-KpO5-xUHK-8EzD-tzBa-ku11bW
#cache/lvmcache.c:1136         lvmcache: /dev/sdm1: now in VG vg0 with 1 mdas
#cache/lvmcache.c:923         lvmcache: /dev/sdm1: setting vg0 VGID to wrDujbRvrVKpO5xUHK8EzDtzBaku11bW
#cache/lvmcache.c:1173         lvmcache: /dev/sdm1: VG vg0: Set creation host to vtigercrm.
#device/dev-io.c:533         Closed /dev/sdm1
#toollib.c:427     Finding volume group "vg0"
#locking/file_locking.c:235       Locking /var/lock/lvm/V_vg0 RB
#locking/file_locking.c:141         _do_flock /var/lock/lvm/V_vg0:aux WB
#locking/file_locking.c:51         _undo_flock /var/lock/lvm/V_vg0:aux
#locking/file_locking.c:141         _do_flock /var/lock/lvm/V_vg0 RB
#device/dev-io.c:487         Opened /dev/sdm1 RO O_DIRECT
#device/dev-io.c:134         /dev/sdm1: block size is 4096 bytes
#label/label.c:160       /dev/sdm1: lvm2 label detected
^C^C^CKilled

★★★★★

# iscsiadm -m session -P3 
iSCSI Transport Class version 2.0-870
version 2.0-871
Target: iqn.2003-01.org.linux-iscsi.disk.x8664:sn.cebd77d086eb
        Current Portal: 10.10.10.2:3260,1
        Persistent Portal: 10.10.10.2:3260,1
                **********
                Interface:
                **********
                Iface Name: default
                Iface Transport: tcp
                Iface Initiatorname: iqn.1993-08.org.debian:01:4f79934584e
                Iface IPaddress: 10.10.10.3
                Iface HWaddress: (null)
                Iface Netdev: (null)
                SID: 1
                iSCSI Connection State: LOGGED IN
                iSCSI Session State: LOGGED_IN
                Internal iscsid Session State: NO CHANGE
                ************************
                Negotiated iSCSI params:
                ************************
                HeaderDigest: None
                DataDigest: None
                MaxRecvDataSegmentLength: 262144
                MaxXmitDataSegmentLength: 8192
                FirstBurstLength: 65536
                MaxBurstLength: 262144
                ImmediateData: Yes
                InitialR2T: Yes
                MaxOutstandingR2T: 1
                ************************
                Attached SCSI devices:
                ************************
                Host Number: 10 State: running
                scsi10 Channel 00 Id 0 Lun: 0
                        Attached scsi disk sdf          State: running
                scsi10 Channel 00 Id 0 Lun: 1
                        Attached scsi disk sdg          State: running
                scsi10 Channel 00 Id 0 Lun: 2
                        Attached scsi disk sdh          State: running
                scsi10 Channel 00 Id 0 Lun: 3
                        Attached scsi disk sdi          State: running
                scsi10 Channel 00 Id 0 Lun: 4
                        Attached scsi disk sdj          State: running
                scsi10 Channel 00 Id 0 Lun: 5
                        Attached scsi disk sdk          State: running
                scsi10 Channel 00 Id 0 Lun: 6
                        Attached scsi disk sdl          State: running
                scsi10 Channel 00 Id 0 Lun: 7
                        Attached scsi disk sdm          State: running

petav ★★★★★
() автор топика

Все еще буксуешь на этом?

   # Run vgscan after you change this parameter to ensure that
    # the cache file gets regenerated (see below).
    # If it doesn't do what you expect, check the output of 'vgscan -vvvv'.
anonymous
()
Ответ на: комментарий от anonymous

У меня директория «/etc/lvm/cache» и файл ".cache" создается вней и все равно появляются те блочные устройства, которые я хочу заблокировать. pvscan точно перечитывает lvm.conf, убедился допустив в нем ошибку, он ругнулся на это.

petav ★★★★★
() автор топика
Ответ на: комментарий от anonymous
grep cache_dir /etc/lvm/lvm.conf
    cache_dir = "/etc/lvm/cache"

# ls -la /etc/lvm/cache
total 6
drwx------ 2 root root 1024 Oct 19 07:53 .
drwxr-xr-x 5 root root 1024 Sep 18  2014 ..
-rw------- 1 root root 1785 Oct 19 07:53 .cache

# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 5.11 (Tikanga)
anonymous
()
Ответ на: комментарий от anonymous

grep cache_dir /etc/lvm/lvm.conf

grep cache_dir /etc/lvm/lvm.conf
    cache_dir = "/etc/lvm/cache"

petav ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Единственное объяснение - фильтр не фильтрует уже отфильтрованные устройства. Я первым правилом разрешил все устройства, потом по чуть запрещяю.

petav ★★★★★
() автор топика

Попробуй наоборот

Разреши в filter только то что исп. на хост системе и удали все остальное.

У меня такое есть filter = [ «a/mpath.*/», «r/.*/» ]

anonymous
()
Ответ на: комментарий от petav

Ничего не находит

Да я тормознул, это UUID vg0

anonymous
()
Ответ на: комментарий от anonymous

У меня такое есть filter = [ «a/mpath.*/», «r/.*/» ]

Не совсем то, у меня

"a/.*/"
под этот фильтр вообще все попадает.

petav ★★★★★
() автор топика
Ответ на: комментарий от petav

Я имел ввиду посмотри df (/etc/fstab) что у тебя конкретно используется на хосте и их пропиши в filter

filter = [ "a|/dev/sda.*|", "r|.*|" ]

anonymous
()
4 декабря 2015 г.
Ответ на: комментарий от petav

Я имел ввиду посмотри df (/etc/fstab) что у тебя конкретно используется на хосте и их пропиши в filter

Да, разрешил только те блочные устройства, которые используются мной на хосте, все остальное пришлое по iSCSI, используемое только внутри вирутальных машин отсеял в /etc/lvm/lvm.conf

filter = ["a|^/dev/sda.*$|", "a|^/dev/sdb.*$|", "a|^/dev/sdc.*$|", "a|^/dev/sdd.*$|", "a|^/dev/md.*$|", "r/.*/" ]
Выходит если фильтр начинается с
filter = ["a/.*/", ...
то дальнейшие конструкции запрещения
filter = ["a/.*/", "r|/dev/sdh1|", "r|/dev/sdi1|", "r|/dev/sdj1|", "r|/dev/sdk1|", "r|/dev/sdl1|", "r|/dev/sdm1|" , "r|/dev/disk|" ]
не работают. Как бы соглашусь с этой логикой.

petav ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.