Pull to refresh

Comments 34

даже наличие многопортовых серверных сетевых карт и управляемого коммутатора с поддержкой LACP не позволяют для имеющейся системы балансировать нагрузку по нескольким линкам в соединении 1 сервер — 1 клиент.

Win8/2012 обещал multipath (если правильно помню) как раз под это. Данные качаются в несколько TCP потоков, и теоретически эти потоки должны размазаться по нескольким линкам.
можно было взять попроще — подешевле, если подождать — повыбирать.

Ну да, подождать. Скоро на рынок должна вывалиться куча 100/1000/10000 медных карт. «Брендовость» и «корпоративность» там нужны настолько же, насколько топовая интеловская 1G карта нужна в домашнем компьютере. Оптика идет туда же. 10G медь уже вполне матерая.
Хотя я в таких ситуациях тоже обычно не жду и покупаю что есть :)

Вопрос. Не проще было купить просторный корпус и сразу в него насовать контроллер и винты? Если вы беспокоитесь о шуме, то и корпуса бывают разные, и ничто не мешает отодвинуть корпус в соседнюю комнату или на балкон. Если бы два-три компьютера должны были быстро общаться с NAS, то вопросов нет, но тут решение выглядит странно.
Задача в том, что 3-4 компьютера должны иметь доступ к базе фотографий и видео.
Но куплено всего две карты, без свитча. Соответственно, 10G — только между двумя компьютерами. Планируете расширяться в будущем, или скорость требуется только между двумя компьютерами? Или там отдельная 1G сеть?
Расширение потребует резкого скачка в затратах, даже L2 10G свитчи не самые дешевые.
Есть отдельная 1G сеть для низкоскоростного доступа.
Карту HP NC360T из сервера не вынимали.
Если будет нужно подключить еще один компьютер по 10G, нужна будет только еще одна 10G карта. Возможно, трансиверы (если не подойдет twinax кабель).
Что же касается коммутаторов c 10G портами, то их цена для моделей нижнего уровня в районе $1k. Например, Cisco SG500X.
Например, Cisco SG500X.

Минимальное, что я вижу там — SG500X-24, цена на ебее около $1k. 5G там вроде только под интерконнект для стека.
Win8/2012 обещал multipath (если правильно помню) как раз под это. Данные качаются в несколько TCP потоков, и теоретически эти потоки должны размазаться по нескольким линкам.

Далеко не все коммутаторы умеют балансить по L4
А разве в данном случае это задача коммутатора?
Это функция SMB 3.0, и коммутатор на L2, или даже L3 про то, что поверх него работает многосессионный SMB даже не знает.
При агрегации каждая L4 сессия обязана всегда бегать через один и тот же линк, чтобы не было проблем с переупорядочиванием пакетов, не требовалась лишняя инкапсуляция для контроля этого дела и т.д.

Хороший коммутатор при выборе этого линка для пакета считает 5-tuple — адреса, порты и протокол. Даже приличные L2 свитчи, которым вроде не положено знать про существование L3 и тем более про L4, так могут.

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

В особо запущенных случаях свитч смотрит лишь на L2, т.е. маки. На таких свитчах агрегация в большинстве случаев весьма бесполезна, годится лишь как средство резервирования, или когда через агрегированные линки будет ходить очень много трафика между соседними L3 узлами.
Все это может быть и верно — в теории. Но на практике мы говорим о SMB 3.0 и его возможностях поддержки многосессионного SMB, и никакой особой поддержки для его работы на уровне свитча не требуется, также как не требуется от домашнего L2-свитча какой-то отдельной и специальной поддержки TCP/IP для раздачи через него домашнего интернета.
никакой особой поддержки для его работы на уровне свитча не требуется

Ну если многосессионный SMB работает, но через один линк, то пользы от него мало, верно?
Не вполне так. Многосессионность полезна и ведет к некоторому улучшению даже и по одному физическому интерфейсу (это хорошо видно, например, в случае использвания многосессионности в iSCSI, появившейся недавно).

Но смысл в том, что никакой поддержки на стороне свитчей для использования многолинкового и многосессионного SMB 3.0 не нужно. Да ее и нет на сегодня, и сомнительно, что она появится _в свитчах_ в обозримом будущем.
А вот использовать — уже можно.
Для 10G в данной ситуации дешевле использовать Infiniband, на ebay есть много дешевых карт на 10G на два порта. Хотя в настройке конечно гораздо сложнее и есть определенные проблемы с длиной кабеля! Зато если надо будет потом подключить еще 3 рабочих места достаточно докупить в сервер одну карту и обойтись без коммутаторов!
В данном случае максимум, который может понадобиться — это добавить еще один компьютер по 10G.
Это можте быть, например, MacBook Pro c конвертором ThunderBolt — 10G Ethernet.
Остальным машинкам достаточно будет 1G.
А вот как такое с Infiniband строить — я не знаю. Драйверы под Mac существуют?
c MacBook Pro наверное будут проблемы. Но цена 10G Infiniband для вашего текущего варианта очень дешевая получается.
А что надо сказать Windows Serverу, чтобы он по Infiniband отдавал разделяемое дисковое пространство?
Думаю тут будут проблемы!
Ну есть IP over IB, при его использовании ничего особого говорить не надо.
Надо будет про это почитать повнимательнее.
Этот проект уже сделан, но на будущее будет не вредно разобраться.
Представим, что у нас есть 2 карты InfiniBand. Скажем, от Mellanox.
И есть у нас сервер под Windows 2008. И пара рабочих станций под Windows 7 64bit. И пара MacBook Pro.
Всем им нужен по возможности быстрый доступ к этому серверу.
Сейчас все уходит в 10G Ethernet и мы получаем стандартный сетевой разделяемый ресурс.
Что нам надо сделать, чтобы реализовать то же на IB?

Можно даже упросить задачу, забыть про скоростной доступ ноутбуков (не так уж им и пользуются), оставить только сервер и 2 рабочие станции под Windows.
Не забываем, что рабочим станциям и обычный доступ в сеть нужен. Для интернета, для печати фотографий на сетевом фото принтере, который рядом стоит, для выгрузки результатов в online фотохостинги.

Какое ПО устанавливать на сервер и на рабочие станции?..
У меня дома реализована
а) быстрая сеть (сторадж-бокс + 2 рабочие станции) — на трех картах Mellanox (по одной в компьютере), они двухпортовые. Карты покупал по $23 на ebay, кабели — по ~$25 у китайцев (трехметровые).

б) медленная сеть для всех остальных: обычный гигабит c дешевым свитчом, обычный WiFi.

Понятно, если есть бюджет на свитч с несколькими 10G-портами, 10G карты, трансиверы и прочая — оно лучше. Но у меня бюджет всей сетевой части (и IB и гигабита) уложился баксов в 300.
Идея понятна.
Но на сколько я понимаю, в вашем случае на сторадже стоит Linux.

Есть ли возможность получить разделяемый по сети сторадж, если на нем стоит Windows Server, а соединение с ним происходит как через Infiniband, так и через 1G Ethernet?
Что для этого на сервер и на клиенты ставится из софта?
Я не специалист в Windows storage.
Тем не менее, банальный SMB поверх IPoIB (ну и 1G Ether) — обязан работать.

В 2012-м сервере вроде бы появилось что-то для работы SMB просто поверх Infiniband, но я, повторяю, не специалист, только слышал звон.
Модели, которые с Х (SG500Х) — они 10G поддерживают на SFP портах.
Опять же Netgear сделал 10G коммутатор XS708E по похожей цене.
Но для данной системы это не очень актуально :-)
Хочу собрать на работе кластер из 2-4 нод.
с двумя более-менее все понятно.

На 3-4 Может имеет смысл втыкать больше карт?

Кластеры на Hyper-V +Starwind. Памяти по 128Гб на ноду. и 2-4Тб HDD 1-2ТБ SSD.
Пробывал по 16Гб оперативной памяти такую конфигурацию, на ненагруженной системе показалось, что для синхронизаций хранилищ хватит и 1Гбит сети. А вот живая миграция была менее радостной.

Т.е. в сценарии с starwind. Не нужны малые задержки и большая скорость. Ибо хранилище УЖЕ на сервере.
Кто пробывал продукты starwind? Хотелось бы отзывов в рабочей среде.

Пробовали HA от Starwind. После того как без видимых причин несколько раз падала синхронизация между хранилищами отказались. Пока дело не касается HA, Starwind можно использовать.
Чем FC 8Gbps и переделка под SAN не подошли?
Просто сам планирую что-то подобное сделать, и между 10G Ethernet / FC / InfiniBand остановился на FC.
Это не подходит для совместного использования файлов с нескольких клиентов.
MetaSAN?
А если ситуация «один писатель, много читателей», то AFAIK можно и вообще обойтись без особых плясок.
Хотя наверно действительно NAS здесь будет более адекватным решением в отличии от моего случая.
Я бы сказал, что SAN — это все таки решение для распределения дискового пространства между серверами. Сервера видят эти ресурсы как свои локальные диски, пользователи обращаются к этим ресурсам через сервера и виртуальные машины. Как реализовать связь сторадж — сервер, это уже другой вопрос. Можно через FC, можно через iSCSI, можно еще как-то.
В любом случае SAN и задача доступа пользователей к разделяемому ресурсу — это разные задачи.
Ох и скушаете же вы пряников с RAID5.
Рекомендую к прочтению — www.zdnet.com/blog/storage/why-raid-6-stops-working-in-2019/805
RAID5 на дисках более 2TB дисках использовать нельзя. Ребилд будет идти вечность с 85-95% потерей производительности. И очень значительной вероятностью потерять и второй диск, с ним и все данные. Считали сколько будет времени восстанавливаться хотя бы 30% занятого стореджа на вашем канале? Чуть менее года :)
Чтобы полностью выкачать 12 Тб в идеальных условиях в вакууме на скорости 20 Мбит\сек нужен 61 день 2 часа 0 минут и 55, 5 сек

Соответствено 30% это чуть менее чем 1.5 месяца;)
Реальная ситуация не столь печальна :-)
У обычного фотографа активная работа идет с последней, на крайней случай — предпоследней съемкой. Все остальные нужны очень не часто. И реально нужных фотографий из этих прошлых съемок — единицы %. Те, которые попали в протфолио или близко к нему. Все остальные фотографии нужны очень редко. Но их не стирают на всякий случай.
Таким образом, достаточно будет выкачать последнюю съемку, с которой идет работа. Это 10-30Гбайт. То есть в среднем 15Гб.
За пару часов есть шанс управиться :-)

А за ссылку на статью спасибо.

Sign up to leave a comment.

Articles