Сервер и RAID для отдачи 200 потоков 4-5мб.с. каждый

Как создать сервер оптимальной конфигурации.

Модераторы: Trinity admin`s, Free-lance moderator`s

Возможно ли?

Опрос закончился 21 авг 2006, 15:01

Да!
2
40%
Нет!
1
20%
на этой конфигурации нет, нужна более мощная дисковая, внешний NAS\SAN
2
40%
 
Всего голосов: 5

Аватара пользователя
MrCloud
Advanced member
Сообщения: 99
Зарегистрирован: 22 июн 2006, 12:05
Откуда: Москва
Контактная информация:

Сервер и RAID для отдачи 200 потоков 4-5мб.с. каждый

Сообщение MrCloud » 22 июн 2006, 15:01

Сабж!
Нужно подобрать конфигурацию сервера и дисковой подсистемы для подобной задачи. В простом варианте требуется отдача около 200(150) одновременных потоков с дисковой подсистемы в сеть, каждый полосу ест 3.5-5мегабит. В более сложном случае часть из этих сессий должна не читатся с диска а наоборот, писАться.

По расчетам SCSI raid5 u320 4*10K 73gb это не потянут, но существуют уже аналогичные системы именно такой конфигурации.

Мне кажется что это реализовано следующим образом - чтение производится только скажем 20-50 одновременных потоков с большей скоростью в кэш, из кэша постепенно отдаются все 200 с необходимой скоростью.

Потоки - видео файлы типа видеонаблюдение.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 22 июн 2006, 15:33

На кэш рассчитывать не стоит, т.к. данный в конечном итоге все равно должны лечь на диски. Суммарная скорость в макс 125МБ/с (получено перерассчетом из приведенных цифр) на чтение возможна на машине с контроллером LSI320-2X, десятком винтов и парой сетевух в транке. Если более-менее значимая часть этого потока пойдет на запись (скажем процентов 30-50), то машина скорее всего ляжет.
Чтобы реально это переварить (причем нужен достаточно существенный запас, чтобы не было рывков), надо что-то типа супермикро 5015P-TR с двуядерным процом и 4ГБ в качестве шлюзовой машины и дисковая типа Xyratex 5402E - с одной полкой SAS дсков или двумя полками SATA.
Причем еще вопрос по поводу сетевух. Я сильно сомневаюсь, что на клиентах у Вас будут поддерживаться джамбо фреймы. А без них две сетевухи скорее всего не потянут (или будут на пределе) - придется ставить еще две или, лучше, вторую машину в кластер.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 22 июн 2006, 15:35

В свое время мы давали на тест машину под подобную задачу для Комкора. Двухпроцессорка кажется с 7 дисками потянула порядка 100 таких потоков на ЧТЕНИЕ. Делайте выводы.

Аватара пользователя
MrCloud
Advanced member
Сообщения: 99
Зарегистрирован: 22 июн 2006, 12:05
Откуда: Москва
Контактная информация:

Сообщение MrCloud » 22 июн 2006, 17:47

Да, фигово 8(

Я тоже задумывался о том что буфер не резиновый...
- Врут буржуи значит про аналогичную систему на 4*SCSI hdd Raid5 выходит?
Правда у них в описаниях 3.5мб потоки 200шт.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 22 июн 2006, 18:04

Скорее всего врут. Тут дело еще в методике теста. Я могу легко выжать из контроллера 320-2Х 200МБ/с линейного чтения. Но - в тестовых условиях. Когда 200 человек ломанутся читать разные файлы из разных мест диска, даже сказе поплохеть может. Тут выход - только наращивать число шпинделей.
И еще - многое зависит от софта, который собственно занимается раздачей потоков. Тест, который я упомянул, был под Касенной, которая достаточно эффективно буферизовала в оперативке, чтобы сгладить рывки дисков (диску куда приятнее читать по мегабайту за раз, чем 16 раз по 64к). Как работает Ваш софт - мне не ведомо.
Рывки - вообще в этом деле вещь неприятная. Комкор как раз и остановился на сотне потоков потому, что дальше начинались выпадения кадров на клиенте. Т.е. оно и больше тянуло, но с таким качеством никто Вам платить за просмотр не будет.

Аватара пользователя
MrCloud
Advanced member
Сообщения: 99
Зарегистрирован: 22 июн 2006, 12:05
Откуда: Москва
Контактная информация:

Сообщение MrCloud » 23 июн 2006, 11:34

А если я оптимизирую софт на сервере так что он будет читать с дисковой подсистемы одновременно всего 20 потоков по 40-50мбит.с. каждый и размер блока можно будет взять большой (оптимальный для дисковой подсистемы)?  ИЛи 10 потоков но по 100мб.с. или вообще хоть 1 поток 1гб или 2 по 500мб.  :lol:
Тогда это будет легче?
Что посоветуете?

Пока мысли такие приходят -
1. несколько серверов стримеров включенные в большой массив скоростной.
2. много серверов кажый со своим raid5\10 которые будут отдавать меньшее кол-во потоков.
Последний раз редактировалось MrCloud 23 июн 2006, 11:53, всего редактировалось 1 раз.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 23 июн 2006, 11:53

Вариант 1 отпадает, т.к. количество стримеров должно быть равно числу потоков. Разоритесь. Да и ленты затрете моментально.
Вариант 2 конечно имеет право на существование, но лучше посмотрите все же на внешнюю дисковую и пару шлюзовых машин в кластере. Во первых, это намного надежнее. Во вторых, легко масштабируется. Зайратекс заявлял, что скорость линейного чтения - порядка 400МБ/с. Даже если и приврали, то все равно этого хватит очень на многое. Вопрос только в количестве шпинделей, от которого зависит возможное количество потоков (чем меньше потоков, тем легче винтам и массиву разогнаться до предельной скорострельности). А уж количество шпинделей там может быть ого-го (60шт)!

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 23 июн 2006, 11:53

Можете начать с одной полки винтов, а потом по мере роста нагрузки добавлять ящики с винтами.

Аватара пользователя
MrCloud
Advanced member
Сообщения: 99
Зарегистрирован: 22 июн 2006, 12:05
Откуда: Москва
Контактная информация:

Сообщение MrCloud » 23 июн 2006, 12:05

Вот, думаю тогда оптимизировать стример таким образом чтоб он читал оптимальное кол-во потоков с внешнего дискового массива, например 1 со скоростью 900-1000мб.с..
Стример может выплевывать в сеть 900-1000мб.с.

Вопрос, сколько стимеров я смогу подключить к стораджу чтоб он смог это им отдавать? - Оптимальный размер блока, практически линейное чтение, 1-3 потока(в сумме макс 1гб.) со стримера.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 23 июн 2006, 12:08

Давайте определимся с понятием "стример". Я понимаю, что это ленточный привод. А Вы?

Аватара пользователя
MrCloud
Advanced member
Сообщения: 99
Зарегистрирован: 22 июн 2006, 12:05
Откуда: Москва
Контактная информация:

Сообщение MrCloud » 23 июн 2006, 14:09

gs писал(а):Давайте определимся с понятием "стример". Я понимаю, что это ленточный привод. А Вы?
Здесь я имею в виду сервер который берет данные с дисковой подсистемы и вещает их потоками в IP сеть передачи данных.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 23 июн 2006, 14:21

Два потока этот массив потянет точно, три - может быть.

Только у Вас задача что-то резко меняется по ходу пьесы. Сначала была куча мелких потоков, теперь 2-3 мощных, соответствующих примерно несжатому HDV. Я просто не понимаю, что же Вы хотите в итоге сделать?

Аватара пользователя
MrCloud
Advanced member
Сообщения: 99
Зарегистрирован: 22 июн 2006, 12:05
Откуда: Москва
Контактная информация:

Сообщение MrCloud » 23 июн 2006, 14:54

Просто раз я не могу забирать все 200 сессий одновременно, я могу сделать буфер в который складывать одну(или больше) длинную сессию с дисков. Тоесть через буфер я могу отдавать 200 сессий по 5мб.с. читая с дисков 1 сессию в 1000 мб.с.

Так?
Теперь вопрос по железу на котором я оптимально смогу это реализовать.

Аватара пользователя
GreeNGO
Junior member
Сообщения: 4
Зарегистрирован: 23 июн 2006, 13:07

Сообщение GreeNGO » 23 июн 2006, 15:03

Добрый день..
Меня тоже интересует задача получить максимальное количество потоков (без ущерба для качества) с сервера "видео-по-запросу"

Основная задача - сервер на 90% времени будет загружен обращениями клиентов к дисковой подсистеме. С дисковой подсистемы будут подниматься файлы в MPEG2 Transport Stream, и затем вещаться в сеть по   Gigabit Ethernet. Насколько я понял RAID 5 выдает всего 100 сессий железно.  Если мне нужно обеспечить 250-300 сессий по 2-2,2 Мбит\с какой производительности массив порекомендуете в сервер ?

Либо лучше выбрать такой вариант - сервер на базе 1 проц. AMD Opteron Dual Core, Dual FC Controller 2Gb\s + SAN FC 2-4Gb\s

Судя по результатам тестов 70/30 (чтение запись) при размере пакетов по 512K производительность 262 Мбайт\с, при 64K 62,75 Мбайт\с

Чем меньше размер пакетов - производительность, я так понимаю падает ? Что получается, нужно выбирать оптимальный размер пакетов для передачи видеофайла ?

По тем же тестам связка сервер + SAN 12xSATA-2xU320SCSI
обеспечивает 220-225 Мбит\с - что едва дотягивает до 100 потоков с озвученным битрейтом.  

Что посоветуте для мощной дисковой подсистемы сервера ВоД ???

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 23 июн 2006, 15:15

Сорри, Вы бы создали тут же еще одну тему. А то каша получится - нопонятно кому посты :)
Ща всем отвечу - тока мозги охладю :)

Ответить

Вернуться в «Серверы - Конфигурирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 27 гостей