У нас есть два похожих сервера SLES10SP2, оба из которых используют многопутевый доступ на одних и тех же устройствах из одного массива хранения.
На одном сервере устройства / dev / disk / by-id / scsi- * правильно указывают на многопутевые устройства:
server1:/dev/disk/by-id # ls -l scsi-* | awk '{print $9,$10,$11;}'
scsi-3600a0b80005047d80000050c4933f22c -> ../../dm-1
scsi-3600a0b80005047d80000050c4933f22c-part1 -> ../../dm-2
scsi-3600a0b80005047d80000050c4933f22c-part2 -> ../../dm-3
scsi-3600a0b80005047d80000b0a14dbb20e4 -> ../../dm-0
С другой стороны, дисковые устройства / dev / disk / by-id / scsi- * указывают на один из путей вместо устройства multipath dm:
server2:/dev/disk/by-id # ls -l scsi-* | awk '{print $9,$10,$11;}'
scsi-3600a0b80005047d80000a3464a07f6ee -> ../../dm-1
scsi-3600a0b8000505008000004f84933e183 -> ../../sda
scsi-3600a0b8000505008000004f84933e183-part1 -> ../../dm-4
scsi-3600a0b8000505008000004f84933e183-part2 -> ../../dm-5
scsi-3600a0b80005050080000057749352a81 -> ../../sdd
scsi-3600a0b80005050080000057749352a81-part1 -> ../../dm-6
scsi-3600a0b80005050080000a7cd4dbb2498 -> ../../sdg
Это вызывает проблему, поскольку некоторые из дисков настроены на использование всего диска в качестве pv.
Что нам нужно изменить на server2, чтобы система настроила все ссылки scsi- * для указания на устройства с несколькими путями вместо одного пути?
Из документация:
В SUSE Linux Enterprise Server 10 программное обеспечение kpartx используется в /etc/init.d/boot.multipath для добавления символических ссылок в строку / dev / dm- * в файле конфигурации multipath.conf для любых вновь созданных разделов без необходимости перезагрузка. Это заставляет udevd заполнять символические ссылки / dev / disk / by- *.
Итак, я бы
Если все это правда, вы можете попробовать запустить kpartx -a
на многопутевых устройствах, чтобы увидеть, есть ли записи в / dev / диск / по-идентификатору / обновлены.
После того, как вы это исправите, вам все равно нужно отредактировать lvm.conf. Опять же, из документация:
По умолчанию LVM2 не распознает многоточечные устройства. Чтобы LVM2 распознал устройства с несколькими путями как возможные физические тома, вы должны изменить /etc/lvm/lvm.conf. Важно изменить его так, чтобы он не сканировал и не использовал физические пути, а только обращался к хранилищу многопутевого ввода-вывода через уровень многопутевого ввода-вывода. Если вы используете понятные для пользователя имена, обязательно укажите путь, чтобы он сканировал только имена устройств сопоставления устройств для устройства (/ dev / disk / by-id / dm-uuid-.-сочувствовать-.) после настройки многопутевого режима.
Как оказалось, это известная проблема в SLES10SP2.
Это исправлено в SLES10SP3 с пакетом udev-085-30.58.3.6.x86_64.rpm
.
Я бы установил правило фильтра в lvm.conf
filter =[ "a|/dev/dm|", "a|^/dev/sda2$|", "r|/dev/sd|"]
В этом примере lvm использует все / dev / md * / dev / sda2 и удаляет все остальные устройства / dev / sd *.