Использование одного и того же диска для общего доступа iSCSI и SMB под FreeNAS

В эти выходные я настраиваю новый сервер FreeNAS с довольно хорошим успехом, но я застрял на одном последнем выпуске.

Прямо сейчас у меня есть 2x 1,5 ТБ накопителя, которые я хочу отразить (я планировал Software RAID 1) для общего объема доступного пространства 1,5 ТБ.

Мне нужно иметь доступ к данным с дисков через SMB (CIFS) и iSCSI. Вероятно, я буду также использовать AFP, DAAP и uPnP в будущем.

Мои вопросы:

  1. Не похоже, что один и тот же диск (или RAID) можно использовать как для доступа SMB, так и для iSCSI. Это правильно, или я что-то пропустил? (Примечание: я знаю, что вы можете сделать файл на диске доступным через iSCSI, но это не то, что я хочу, так как вы не можете видеть эти данные из SMB)

  2. Если ответ № 1 действительно отрицательный, есть ли хорошие обходные пути для этого? Я придумала несколько решений (и открыта для большего), но мне нужно понять, что является лучшим вариантом.

Решение A: Держите диски вне RAID. Подключите один для SMB, а другой для iSCSI. Используйте rsync(?) Для ежечасной синхронизации. (Синхронизация в реальном времени здесь не критична, мне просто нужно убедиться, что я не потеряю все данные, если один диск умирает)

Решение B: Создайте диски RAID как iSCSI, затем предоставьте FreeNAS доступ к этой цели и перемонтируйте ее для SMB. Даже не уверен, что это работает, и это звучит как машина Рубе Голдберга.

Решение C: Я не люблю ни один из вышеупомянутых вариантов и надеялся на лучшее решение!

Спасибо за любой вклад здесь!

1 ответ

Я не думаю, что это возможно, как ты это выразил.

iSCSI - это протокол уровня блока. если несколько хостов имеют доступ к одному и тому же блочному устройству, они должны каким-то образом разрешить использование данных, хранящихся там. Обычно это означает использование файловой системы с поддержкой кластеров (GFS, OCFS2, CXFS и т. Д.).

SMB / CIFS - это протокол на уровне файлов. он обменивается файлами с несколькими клиентами, выполняя весь необходимый арбитраж и полагаясь на базовую файловую систему.

Решение B должно работать, пока вы используете кластерную файловую систему в этом разделе. с другой стороны, как только вы используете это блочное устройство с двух хостов, вы полностью его испортите.

Это совсем не решение, похожее на "rube goldberg", поскольку любой файловый сервер работает поверх файловой системы, вы бы просто использовали кластер-ориентированный. фактически, одно из наиболее распространенных применений кластерных файловых систем - это общее хранилище для нескольких файловых серверов (smb/nfs), распределяющее нагрузку по обработке и пропускной способности файла, обслуживающего одни и те же файлы.

вкратце: если вы хотите использовать общий доступ на уровне блоков, вы должны использовать кластерную файловую систему. если у вас также есть некластерные клиенты, вы можете добавить файловый сервер поверх этой файловой системы.

Другие вопросы по тегам