Назад | Перейти на главную страницу

Программное обеспечение для масштабируемого, надежного массива хранения данных емкостью несколько ТБ?

Недавно я купил комплект оборудования для создания нового домашнего медиа-сервера. Когда он полностью настроен, он будет иметь 20 дисков SATA-II емкостью 1 ТБ с возможностью горячего подключения, работающих под управлением системы Linux. На сегодняшний день я использовал RAID5 и RAID6 (не вместе) в меньших серверах, охватывающих до восьми дисков, но мне интересно, все ли это хорошая идея.

В частности, у меня будет шесть карт SATA в системе - четыре карты PCI с четырьмя портами SATA каждая и две карты PCI-Express x1 с двумя портами SATA каждая. (Это оборудование еще не совсем точно - в стороне, дайте мне знать, смогу ли я его улучшить. Эти слоты - единственные, доступные на текущей материнской плате.)

Я в первую очередь ищу предложения относительно того, какую низкоуровневую программную систему (RAID, LVM, комбинацию, что-то совсем другое) я должен использовать для реализации этой системы. Требования:

Делая предложения, имейте в виду, что я не против вложить в это изрядный объем работы - нет необходимости в простой или мгновенной настройке, если она работает и надежна в будущем. Также приветствуются предложения относительно размещения файловой системы поверх нее. В настоящее время я использую JFS, потому что он, кажется, работает хорошо и его можно наращивать при установке для чтения и записи, но если есть улучшения, которые я могу сделать, я открыт для этого.

Я бы выбрал (в конечном итоге) два 9-дисковых массива RAID6 с двумя горячими резервами (учитывая, что вы будете находиться на значительном расстоянии от оборудования, вы хотите минимизировать окно возможностей для отказа большего количества дисков) в программном обеспечении Linux RAID с LVM наверху. LVM позволяет легко увеличивать объем хранилища, объединять несколько RAID-массивов в одну группу томов и дает гибкость в распределении хранилища (если у вас есть подходящая файловая система поверх, которая позволяет изменять размер в оперативном режиме).

Программный RAID для Linux позволяет легко добавлять диски в существующий массив, что удовлетворяет вашу потребность в постепенном добавлении дисков с течением времени.

В какой-то момент надежность остальной части машины будет ниже, чем у дисков.

Поскольку вы утверждаете, что это «домашний медиа-сервер», я предполагаю, что вы будете использовать компоненты потребительского уровня. Диски могут выйти из строя, но в какой-то момент и остальная часть машины может выйти из строя.

Если вы хотите, чтобы он был надежным, используйте как минимум резервные источники питания (для 20 дисков в любом случае потребуется немало энергии). Я не знаю, насколько надежны все эти карты SATA, думаю, они не будут часто выходить из строя.

Кроме того, вам понадобится ОЗУ с ECC, иначе объем данных, которые вы передаете, означает, что ошибки данных рано или поздно почти гарантированы.

По моему опыту, материнские платы иногда выходят из строя, но блоки питания довольно часто.

Если вы определенно относитесь к Linux, то посмотрите на ZFS-FUSE, но если вы можете быть более гибкими, рассмотрите NexentaStor, это ядро ​​Solaris с пользовательской средой в стиле Linux (Debian), выполненной как устройство для хранения файлов.

Через год-два BTRFS могут быть интересными, но пока нет.

Если вам все еще нужна унифицированная файловая система, другим вариантом было бы, чтобы LVM представлял один PV на основе двух наборов RAID6 и использовал XFS поверх этого.

Также на данный момент диски объемом 1,5 ТБ кажутся лучшей точкой на кривой цена / производительность (по крайней мере, здесь, в Австралии).

Вы в основном описываете Тахо с оболочкой FUSE (хотя Tahoe также распространяется и безопасен способами, которые были бы излишними для ваших нужд). Настроить Tahoe немного сложно, и это не самая быстрая вещь, но в основном это то направление, в котором вы должны искать. Вы можете настроить Tahoe (или аналогичную систему, например XtreemFS, с которым у меня нет опыта) для любого удобного вам уровня резервирования. Я бы установил его с одним узлом Tahoe на привод на машине. Затем настройте его так, чтобы файл, размещенный на Tahoe FS, был разделен на 20 общих ресурсов, чтобы его можно было восстановить с любыми 15 из них. Это даст вам чуть меньше 15 ТБ из 20, которые вы хотите, но вы сможете выдержать пять одновременных отказов дисков. Если вы менее консервативны, вы можете получить больше возможностей с немного большим риском.

ИМО, другим большим преимуществом Tahoe является то, что он настраивает вас на действительно распределенную установку. Как отмечали другие, у вас может быть 20 дисков, но все еще есть много единичных точек отказа в установке только с одним шасси. С Tahoe вы можете безопасно расширить его, чтобы управлять всем творением.