LINUX.ORG.RU
ФорумAdmin

OpenSource SAN

 ,


0

6

Всем привет, кто-нибудь строил SAN на основе открытых компонентов?

Кто в качестве храникли(хранилок)?
Кто в качестве клиентов, используют ли они кластерные ФС, какие?

Как решается кластеризация хранилок?

Чисто спортивный интерес, в теме не спец.

★★★

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

MrClon ★★★★★ ()

кто-нибудь строил SAN на основе открытых компонентов?
Кто в качестве храникли(хранилок)?

а чего там строить freebsd + zvol + iscsi multipath

axelroot ()

Что подразумевается под SAN? Предоставлять доступ к блочным устройствам и файловым системам можно разными способами. Блочные устройства лучше всего экспортировать через iSCSI - больше шансов что взлетит где угодно. AoE(ATA over Ethernet) и прочие NBD - нишевые решения, но можно заюзать и их.

По поводу ФС - плюсую ZFS. LVM конечно тоже неплох, если нужно тупо экспортировать блочные устройства по iSCSI, но если потребуются снапшоты и прочие изыски - тут уже всё не так гладко, потому что это всё-таки не ФС, а менеджер томов.

Еще рекомендуют btrfs, но у меня опыт работы с ней не очень удачный(да и было это давно) - чего-то конкретного по ней посоветовать не могу, лучше поспрашивать людей, кто с ней непосредственно работает.

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Pinkbyte

Вопрос тебе и axelroot

а чего там строить freebsd + zvol + iscsi multipath

По поводу ФС - плюсую ZFS

Меня интересует каким образом делают отказоустойчивые хранилки?
Вот есть у тебя одна дисковая полка на пять серверов - хорошо. А когда 3 дисковые полки на 20 серверов?
Каким образом добиваются хорошей репликации (кто сказал DRBD?) и HA плюшек, какое ПО для этого используют?

Как и какие свичи ставятся для отказоустойчивости? Какие и сколько ставят сетевых карт? В какой бондинг их объединяют?

trofk ★★★ ()
Ответ на: комментарий от trofk

Вот есть у тебя одна дисковая полка на пять серверов - хорошо. А когда 3 дисковые полки на 20 серверов?

А какая разница сколько полок? Ты их всё равно все к одному серверу/кластеру из 2х серверов(ну типа как 2 контроллера у сторажей) цепляешь и раздаешь как с обычного стоража. Репликацию асинхронно аля 'zfs send|zfs receive', синхронно - добавляешь в локальное зеркало устройство со второй хранилки. Из ПО scsi target надо, ну и кластерный фрэймворк какой если дублировать. Свичи, hba - всё дублировать ессессно, можно и нет, но это конечно дело каждого, что ему важнее - деньги или простои и потенциальная потеря данных.

EvgGad_303 ★★★★★ ()
Ответ на: комментарий от axelroot

так и делают кому надежность нужна

anonymous ()
Ответ на: комментарий от trofk

начинаешь с простого - сервер с дисками, в нем есть сетевые карты и может быть HBA для FC (или CNA какой нибудь - не важно)

собираешь диски в массив, экспортируешь по требуемому протоколу - iSCSI, FC, NFS, CIFS etc. главное удаленно дать доступ к блокам или фс.

Массивом может выступать что угодно, от mdraid или LVM до zfs и т.п. лишь бы была аггрегация дискового пространства.

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

усложняем - коробку надо сделать надежной, то бишь HA. создаем еще одну такую же коробку, под уровнем который отдаем клиентам (тот самый аггрегат дисков) прокладываем еще одну прослойку, которая работает на репликацию. DRBD уже упоминали, некоторые аггрегаторы уже умеют репликацию сами (LVM, ZFS и т.п.). Настраиваем failover между коробками стандартными кластерными утилитами (RHCS например) и получаем ситуацию в которой если одна коробка упала, вторая поднимается и занимает ее место. будет небольшой даунтайм, так как это HA а не FT.

усложняем дальше - нам таки нужен FT, и желательно с балансировкой нагрузки.

для начала нагородим еще несколько коробок, настроим репликацию на всех, и разобьем на куски отдаваемый сторедж, чтоб распределить нагрузки. желательно перед кластером поставить балансировщик который будет заниматься распределением, короче этот FT - непростая, сложная штука, требующая изрядных вложений. Или же можно перейти на заведомо распределенное хранилище - ceph, gluster - вполне подойдут. swift, cinder, glance - для более частных случаев.

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

dyasny ★★★★★ ()
Ответ на: комментарий от dyasny

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

Мне была интересна именно теория. Спасибо за развернутый ответ.

trofk ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.