Есть ли способ сделать что-то вроде LVM поверх NFS?

Я понимаю, что поскольку NFS не на уровне блоков, LVM нельзя использовать напрямую.

Однако: есть ли способ объединить несколько экспортов NFS (скажем, с 3 серверов) в одну точку монтирования на другом сервере?

В частности, я хотел бы иметь возможность сделать это на RHEL 4 (или 5, и повторно экспортировать объединенное монтирование на мой сервер RHEL 4).

расширение
Причина, по которой я привязал lvm, заключается в том, что я хочу получить несколько экспортированных монтировок (servera:/mnt/export, serverb:/mnt/export, serverc:/mnt/exportи т. д.) чтобы все смонтировать на /mnt/space так что мой /mnt/space на этом сервере (serverx) как одна большая файловая система.

Да, я знаю, что реэкспорт, как правило, плохая вещь ™, но подумал, что это может сработать, если бы был способ достичь этого в более новом выпуске, а не в более старом

Из чтения документов unionfs выясняется, что я не могу использовать его по удаленному соединению. Точнее, поскольку Union FS объединяет содержимое нескольких ветвей, но делает их похожими на одно, похоже, что все не наоборот:
Я пытаюсь смонтировать несколько точек NFS объединенным способом, а затем написать в них - не заботясь о том, куда идут данные, как LVM .

6 ответов

Решение

Несмотря на удивительный хакерский путь, в конечном итоге я выбрал следующий путь:

  • Используя VMware ESXi, добавьте хранилища данных, которые монтируются по NFS (от любого источника).
  • Создать виртуальные диски в этих хранилищах данных
  • Добавьте виртуальные диски в виртуальную машину с RHEL (потому что я привык к RHEL)
  • Поместите все добавленные тома в LVM
  • Экспортируйте раздел LVM через NFS

Плюсы:

  • просто
  • дешево
  • легко копировать
  • с динамическим расширением диска через VMware, все пространство может быть "выделено", но еще не "использовано"

Минусы:

  • требуется еще один слой (гипервизор)
  • в случае сбоя монтирования NFS LVM может быть поврежден (проблема, возникающая при любом из возможных решений)

GlusterFS очень хорош для этой работы, возможно, вы также можете рассмотреть Luster (хотя я еще не использовал его) GlusterFS - это независимое от NFS программное обеспечение, но было бы очень легко перейти на это. Вы также можете использовать его для сетей Raid 10, которые могут вам понадобиться в будущем, и его очень легко масштабировать.

В настоящее время я использую GPFS IBM в кластере HPC Linux. Поддерживает несколько узлов с прямым подключением (мы используем FibreChannel), другие могут иметь сетевой доступ на уровне блоков к одному и тому же объему.

Вы также можете быть заинтересованы в drbd+gfs.

Вы имеете в виду что-то вроде UnionFS (что никак не похоже на LVM, о котором я могу думать) или просто монтируете несколько файловых систем рядом друг с другом (например, /mnt/fs1, /mnt/fs2, /mnt/fs3)?

Кроме того, реэкспорт монтирует NFS (и даже монтирует файловые системы NFS, в которых файловые системы монтируются локально - см. nohide вариант в exports(5) - это захватывающая перспектива, включающая все виды угловых случаев и вероятных укрытий от ошибок. "Здесь будут монстры", действительно.

Как насчет iSCSI? Нагрузка целевых машин, каждая из которых представляет блочное устройство узлу-инициатору? Затем на инициаторе iSCSI используйте LVM, чтобы объединить блочные устройства, смонтировать его и затем экспортировать как точку монтирования NFS?

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