Вопрос или проблема
У меня есть NVMe SSD, KC1000, от Kingston, и HBA, QLE2672 2-портовый 16Gb Fibre Channel адаптер от QLogic, установленные на ядре Linux 4.16.6.
Затем я хотел бы настроить сценарий с использованием режима fc loop, при котором единственный FC HBA будет использоваться в качестве инициатора и цели, чтобы получить доступ к NVMe SSD как к цели NVMe.
Я установил все необходимые драйверы, а именно nvme-core, nvme, nvme-fabrics, nvme-fc, nvmet, nvmet-fc, nvme-loop, nvme-fcloop и qla2xxx, последовательно и nvmetcli и следовал настройкам на nvmetcli(8).
Но когда я дошел до строки 212, “create testnqn”, по ссылке, я получил сообщение об ошибке: “Не удалось создать symlink testnqn в configFS: [Errno 6] Нет такого устройства или адреса”.
Я изменил исходный код ядра и обнаружил, что, кажется, там есть атрибуты устройства на пути “/sys/devices/virtual/fcloop/ctl/”, которые нужно заполнить. Но я не могу понять, какая строка и формат нужны.
Любые подсказки приветствуются.
https://github.com/JunxiongGuan/nvmetcli/issues/1#issuecomment-2585034859
Посмотрите этот комментарий. Надеюсь, шаги подойдут для вас.
Ответ или решение
Настройка nvmetcli для режима FC loopback требует соблюдения нескольких шагов, с учётом специфики оборудования, установленного на вашей системе. У вас установлен NVMe SSD KC1000 от Kingston и HBA QLE2672 от QLogic на ядре Linux 4.16.6. Вашей целью является использование единственного FC HBA как инициатора и таргета для доступа к NVMe SSD в качестве целью NVMe.
Шаги по настройке nvmetcli для FC loopback
-
Установка драйверов: Убедитесь, что все необходимые драйверы установлены правильно:
nvme-core
,nvme
,nvme-fabrics
,nvme-fc
,nvmet
,nvmet-fc
,nvme-loop
,nvme-fcloop
иqla2xxx
. Это основа для дальнейшего формирования работы системы. -
Конфигурация nvmetcli: Используйте документацию nvmetcli, чтобы правильно настроить конфигурацию вашего устройства. Ссылка, предоставленная вами (nvmetcli(8)), необходима для полного понимания процесса.
-
Создание NQN: При попытке создания объекта NQN (
testnqn
) возникает ошибка: "Could not symlink testnqn in configFS: [Errno 6] No such device or address". Это может быть связано с недостаточной конфигурацией пути в configFS. Для решения этой проблемы нужно проверить, правильно ли заполнены device attributes в пути/sys/devices/virtual/fcloop/ctl/
. -
Проблемы с device attributes: Если путь
/sys/devices/virtual/fcloop/ctl/
требует дополнительной конфигурации, вам необходимо определить, какие атрибуты и в каком формате должны быть установлены. Это предполагает достаточно глубокое понимание работы ваших устройств и иногда может потребовать изменения исходного кода ядра. -
Поиск дополнительной информации: Ознакомьтесь с предложенным комментарием на GitHub (здесь), в котором могут быть указаны полезные советы и шаги по решению проблемы. Важно выявить, не упустили ли вы какой-либо этап в настройке и конфигурировании.
Рекомендации по улучшению рабочих характеристик
-
Проверка совместимости: Убедитесь, что все компоненты совместимы с вашей версией ядра Linux. Возможны проблемы совместимости даже внутри одной версии драйвера.
-
Логирование и диагностика: Активно используйте утилиты логирования, чтобы диагностировать проблемы на всех этапах установки. Это поможет в выявлении и устранении неисправностей.
-
Обратная связь от общества: Не стесняйтесь обращаться за помощью на форумы и к экспертам в технологиях, связанных с FC и NVMe, чтобы получить актуальные рекомендации и решения.
Настройка NVMe over Fabrics в режиме FC loopback — это задача, требующая тщательного учета всех деталей и нюансов работы оборудования и драйверов. Следуйте методичным шагам и исключайте возможные ошибки, и вскоре ваша конфигурация заработает как требуется.