Есть ли способ сделать что-то вроде 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), другие могут иметь сетевой доступ на уровне блоков к одному и тому же объему.
Вы имеете в виду что-то вроде UnionFS (что никак не похоже на LVM, о котором я могу думать) или просто монтируете несколько файловых систем рядом друг с другом (например, /mnt/fs1
, /mnt/fs2
, /mnt/fs3
)?
Кроме того, реэкспорт монтирует NFS (и даже монтирует файловые системы NFS, в которых файловые системы монтируются локально - см. nohide
вариант в exports
(5) - это захватывающая перспектива, включающая все виды угловых случаев и вероятных укрытий от ошибок. "Здесь будут монстры", действительно.
Как насчет iSCSI? Нагрузка целевых машин, каждая из которых представляет блочное устройство узлу-инициатору? Затем на инициаторе iSCSI используйте LVM, чтобы объединить блочные устройства, смонтировать его и затем экспортировать как точку монтирования NFS?