Multipath
разлогиниться из этой сессии:
iscsiadm -m node -T <iqn> -p <ip address>:<port> -uУдалить целевые объекты из базы данных обнаружения iSCSI:
iscsiadm -m discoverydb -t sendtargets -p <IP>:<port> -o deleteпосмотреть ноды
iscsiadm -m nodeПосмотреть сессии
iscsiadm -m sessionЧтобы предотвратить повторное установление сеанса:
iscsiadm -m node -o delete -T <iqn>Ошибка потери устройства
В выводе multipath -ll присутствуют сообщения:
discarding non-existing path
failed to look up ... with type 1что обычно указывает на потерю устройств после рестарта СХД, либо на отсутствие активных iSCSI-сессий.
Рекомендую выполнить следующую проверку.
- Проверить наличие активных iSCSI-сессий:
iscsiadm -m sessionЕсли сессии отсутствуют — выполнить повторный login:
iscsiadm -m node --loginПри необходимости предварительно обновить discovery:
iscsiadm -m discovery -t sendtargets -p <IP_СХД>- Проверить состояние multipath:
multipath -ll
multipathd show paths
multipathd show maps- Проверить, видит ли ОС блочные устройства:
lsblk
fdisk -l- Проверить состояние сервисов:
systemctl status open-iscsi
systemctl status multipathdПри необходимости перезапустить службы:
systemctl restart open-iscsi
systemctl restart multipathdПосле восстановления iSCSI-сессий и multipath-путей необходимо повторно проверить состояние storage в интерфейсе PVE.
Предоставьте, пожалуйста, вывод команды:
journalctl -u iscsid -u multipathdПо предоставленной информации, можно сделать вывод, что после переподключения iSCSI часть старых device-mapper не была корректно очищена, поэтому multipathd зависает при опросе путей.
Рекомендую выполнить перезагрузку узла, так как это наиболее безопасный и быстрый способ полностью очистить зависшие состояния и восстановить консистентность путей.
Если перезагрузка невозможна, можно попробовать восстановление вручную, однако это следует выполнять на ваш риск, так как существует вероятность зависания LVM поверх iSCSI.
- Проверьте наличие зависших процессов:
ps aux | awk '$8 ~ /D/'
- Остановите службу multipathd:
systemctl stop multipathd
- Очистите все карты:
multipath -F
- Перезапустите службы iSCSI:
systemctl restart iscsid systemctl restart open-iscsi
- Заново обнаружьте цели и выполните логин:
iscsiadm -m discovery -t st -p <IP_вашего_СХД> iscsiadm -m node --login
- Пересканируйте сессии:
iscsiadm -m session --rescan
- Заново соберите карты multipath:
multipath -r
- Запустите службу multipathd:
systemctl start multipathd
- Проверьте статус:
multipath -ll lvs
