Romka_Kharkov: Хм, интересное решение, надо попробовать у себя собрать нечто подобное... я сталкивался с кучей сетевок в компах но в основном не для отдачи а для маршрутизации... дайте ключевых слов, что бы почитать о том, как организован вход по одной, а выход по 4м адаптерам.. Уже читаю про Bonding. Аналог во фре есть?
С точки зрения ОС более менее понятна настройка (надо еще читать) интересует вторая сторона медали т.е маршрутизатор \ коммутатор куда это все включено, со стороны свича достаточно просто наличие верных VLAN для работы всех 4х-более интерфейсов либо же Bonding должен поддерживаться свичем? LACP надо?
Со свитча достаточно правильный влан. LACP вроде как тоже пробовали (доступа к коммутатору у меня нет), но что-то тогда не завелось, с админами дата-центра сейчас нет возможности эксперементировать.
Да, а что тут такого, хоть 8 поставить можно, у меня этот сервер и 5 Гбит раздавал, но уже начинало упираться в pps, при бондинге весь вход идет на одну сетевуху.
Andron_buton добавил 14.04.2011 в 21:59
Raistlin: Andron_buton, Я не знаю, о чем вы Я говорю, что раздать гигабит можно, и все. О том, что именно раздавать изначально разговора небыло. Ну и гигабит html раздать - да, не особо. Так вот. Во-первых, в исходной задаче небыло разговора про количество винтов. Во-вторых, рейд он и в африке рейд и ускорит задачу - да, в любом случае. RAID0, RAID10, RAID1 - 100% ускорят винты.
Вы лучше ответье на вопрос, Вы вообще пробовали в рейде и без рейдатаким заниматься, или опять теория?
Raistlin:
В-третьих, обращение к 1000 файлов на 100 метров. Вы не думали, наверное, что зависит от того, сколько и чего раздавать. Вы четко утверждаете, что сервер не раздаст гигабит и точка. По причине винтов. Я специально написал конкретно такую конфигурацию, чтобы ткнуть носом, что условия задачи надо ставить корректно.
Раздавать один гигабит статики, которая полностью поместится в оперативу - это скорее исключение, чем правило, я знаю только 1 такой случай, о нем я сообщал ранее. В остальных случаях, если это не прокси, роутер и как у ТС - подобие прокси - все упирается в IO.
Raistlin:
И то, что я выжал около 900 мегабит, и что теперь, что ваш реалтек выжал 984? Там даже обжимка кабеля могла быть плохая, банально, но факт. И чип чипу рознь. Другой реалтек вообще может не работать, так что с того?
Вы еще и патчкорды сами обжимаете?
Релтеков у меня работало штук 5.
Raistlin:
Третье. Если требуется отдавать одновременно тысячу файлов - здесь спасет или разбрасывание их по винтам или RAID1 с кучей винтов в зеркале (опять же на софт-рейде точно, а вот на аппаратных контроллерах едва ли). Скажем, штук 5 хороших винтов в зеркале - справятся - другой вопрос, нахрена оно надо такую избыточность создавать ради скорости - теряем и место на них. Ну дальше мне слюной брызгать? Я про раздачу именно тысячи файлов одновременно не говорил. А то, что там писано в вашей теме - так вообще глупо что-то советовать, не зная статистики. Честно. 1500 коннектов... А размер айлов. а объем данных, а железо и т.п. Ну и что могут сказать даже самые крутые специалисты? Да по сути ничего. От так. Надеюсь, вы теперь поняли, что вы правы, но со своей стороны. С моей стороны я в любом случае прав и спорим мы с вами на пустом месте фактически. ни мне ни вам не позволяет промолчать осознание собственной правоты. Вот если сервер ложится при 500 файлах и среднем объеме 40 мегабайт, совсем другие пироги будут, да? :). Так что я из темы сливаюсь, мы говорим о разных вещах.
Я не могу понять че Вы спорите в тех вещах, где даже гуру, которые сами тестили, говорят, что работать будет иначе?
ЗЫ Может давайте Вы настриваете сервак с ксеоном и 6 своими супер-пупер серверными винтами, разрекламированными маркетологами винтами в рейд 1,
а я настраиваю свой обычный сервак с обычными десктопными сата-винтами без рейда и посмотрим у кого сервак быстрее загнется?
Raistlin: Непробиваемый.... Давайте так. Вы даете сервер. Вешаете на него статический сайт на html. Ну, скажем. объемом до 1 Гбайт. ОС и все прочее ставлю на него я, RAM на сервере - 4 Гбайт. ВИнты - нормальные SAS или SATA (2 штуки). И потом уже поглядим, кто прав. Так пойдет? В деле. И если сервер сдохнет раньше, чем отдаст гигабит (потому, что заткнулись винты), я верну вам стоимость месячной аренды сервера.
Обождите, 1 Гб любой статики на 1 Гб/с при 4 Гб оперативы я Вам даже без винтов раздам, мы с Вами вроде как говорили про стриминг флв на 1500 конектов, одновременно обращение идет к 1000 файлов, размер каждого файла ~100Мб, есть пусть даже 8 гиг оперы, хочу видеть как Вы на 2 вениках в рейд0 все это разрулите.
ЗЫ На деле я от Вас слышал, что Вы выжимали ~900 Мбит, а дальше мол сетевка не потянула, я Вам показывал, что даже реалтек выжимает 984 Мбит/с
Raistlin: Andron_buton, Ну епт за ногу. Я сказал смотря что отдавать: статику. динамику и т.п. И винты у вас десктопные, да? ну потому 6 штук и пользуете.
Давайте похвайстатесь как Вы отдаете статику с двух любых хоть SAS 15000 RPM супер-пупер-мега серверных с супер-пупер-мега рейдом0 на 1 Гб/с.
Raistlin: Andron_buton, мда.... Тяжел диалог. Простите, а кто такие эти люди? Я вам говорю о винтах 10k RPM, хороших таких винтах. Шустрых. Я говорю вам о нормальном процессоре. О нормальной оперативке (не 1-2 гигабайта).
Из вашей темы. Вы о десктопном саташнике, который больше чем 60 мегабайт в секунду при _идеальных_ условиях не прочитает говорите? А я о винте, который должен стоять в сервере. Вы хотите стримить видео на 4 гиг оперативки на 1500 потоков? Да вы самоубийца. А вот ФТП вполне прекрасно полетит на гигабит отдачи. Разницу чуете?
Не то слово тяжелый диалог. Я Вам говорю, что я УЖЕ это делаю и не 1500 потоков, а до 4к доходит. Процессор тут вообще не при чем, он только интераптами занимается, хватит любого дуал кора с головой. Оперативы правда использую 8Гб.
Raistlin: Andron_buton, Я не в теории. Писькой я не меряюсь, я говорю как есть. А вы не внимательно читаете. Кстати, в том треде просто жуткая некомпетентность тех, у кого проблемы с отдачей возникают... =). И еще. Смотря что отдавать.
То есть для Вас слова Михаила Монашева, Игоря Сысосева ничего не значат, они не компетентны?
ЗЫ Еще раз, если у Вас сферический конь в вакууме - один файл, (как фаерфокс в день установления рекорда), то Вам пофиг будет, что рейд, что не рейд.
Romka_Kharkov: А на каком же оборудовании это ваш сервер выдает 4 Gb/s ?
А то загрузку магистрали между Киевом и Харьковом я тоже могу показать, там гиг 30 будет :)))
То есть на каком? Свитч HP Procurve 2910.
Andron_buton добавил 14.04.2011 в 10:34
Raistlin: Хорош чушь нести. Вы еще скажите мне, что RAID0 медленнее, чем обычный винт Ясен перец, что с одного винта дергается один кусок файла, а с другого - другой. Если у меня винт читает 100 метров в секунду (линейное _КОПИРОВАНИЕ_ с винта на винт - чтение будет еще быстрее), то при объединении в RAID0 это будет 110-120 метров в секунду. На нормально нагруженном сервере при фрагментации ФС до 30% и достаточном количестве ОЗУ это будет примерно 80 мегабайт в секунду при утилизации диска на 100%. Ясен хрен, что запрашиваются не тупо мелкие файлы, а вся мелочь кешится в памяти (ну вы прикиньте тысячу файлов каждый раз с веника дергать). Так шо... Как бы RAID5 покажет увеличение производительности на 5-10%. А RAID10 на 7-15. Или вы думаете, что сервер с 16 Гбайт RAM и на нормальном ксеоне будет дохнуть от нехватки оперативки и уменьшать объем кеша?
Raistlin добавил 14.04.2011 в 07:30
//10 букв для информации.
Raistlin добавил 14.04.2011 в 07:35 З.Ы. Вот почему Soft-RAID лучше аппаратной реализации.
Рейд0 возможно еще да (его я не пробовал), но рейд5 точно проиграет. Вы конечно можете спорить, но у меня опыт в этом более 3 лет, перепробовал много чего, да и других людей с авторитетом слушал.
Raistlin: Andron_buton, в 5 или 10 рейде хуже?! Вы что-то путаете. там чтение большого файла примерно на такой скорости будет. Если рейд1 - тогда да.
Да в любом. Самое узкое место в вениках - это iops, и вот в любом рейде если клиент запрашивает файл, он дергает сразу все веники, а так - только один. Грубо говоря я смогу на тех же дисках обслужить в 6 раз больше клиентов особенно если файлов у нас не 10-ок, который закешируется в оперативе, а тысячи и их объем в 100 раз превышает объем оперативы.
Raistlin: Просто небыло.
Был один, свернулся. Сейчас второй готовлю. но гигабит это... ~80 мегабайт в секунду. Для винтов хороших в рейде - не большая проблема. Ну, естественно, кешируется в памяти... Разве что чисто ровно гигабит я не отдавал. Получилось только до ~900 мегабит догнать, дальше сетевка не смогла.
В рейде - наоборот хуже. Гигабит у меня получалось выжать из 6-ти веников без рейда. Утилизация на Intel 82571EB:
NET | eth4 98% | pcki 2 | pcko 164994 | si 0 Kbps | so 985 Mbps |
NET | eth3 98% | pcki 2 | pcko 165808 | si 0 Kbps | so 985 Mbps |
NET | eth1 98% | pcki 419854 | pcko 165589 | si 108 Mbps | so 984 Mbps |
NET | eth2 98% | pcki 2 | pcko 165301 | si 0 Kbps | so 984 Mbps |
NET | bond0 ---- | pcki 419936 | pcko 661721 | si 108 Mbps | so 3939 Mbps |
Утилизация на RTL8111/8168B:
NET | eth0 98% | pcki 87313 | pcko 165517 | si 21 Mbps | so 982 Mbps |
Хм, интересное решение, надо попробовать у себя собрать нечто подобное... я сталкивался с кучей сетевок в компах но в основном не для отдачи а для маршрутизации... дайте ключевых слов, что бы почитать о том, как организован вход по одной, а выход по 4м адаптерам.. Уже читаю про Bonding. Аналог во фре есть?
С точки зрения ОС более менее понятна настройка (надо еще читать) интересует вторая сторона медали т.е маршрутизатор \ коммутатор куда это все включено, со стороны свича достаточно просто наличие верных VLAN для работы всех 4х-более интерфейсов либо же Bonding должен поддерживаться свичем? LACP надо?
Со свитча достаточно правильный влан. LACP вроде как тоже пробовали (доступа к коммутатору у меня нет), но что-то тогда не завелось, с админами дата-центра сейчас нет возможности эксперементировать.
Описание, например, тут http://unixway.info/linux/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-bonding-%D0%BD%D0%B0-centos-5-5-%D0%B8-debian-lenny/
Но даже при mode=6 (balance-alb) вход идет по одной сетевой, перетекая с одной сетевушки на другую где-то раз в пол часа.
Всмысле в серере 4 NIC ?
Да, а что тут такого, хоть 8 поставить можно, у меня этот сервер и 5 Гбит раздавал, но уже начинало упираться в pps, при бондинге весь вход идет на одну сетевуху.
Andron_buton добавил 14.04.2011 в 21:59
Andron_buton, Я не знаю, о чем вы Я говорю, что раздать гигабит можно, и все. О том, что именно раздавать изначально разговора небыло. Ну и гигабит html раздать - да, не особо. Так вот. Во-первых, в исходной задаче небыло разговора про количество винтов. Во-вторых, рейд он и в африке рейд и ускорит задачу - да, в любом случае. RAID0, RAID10, RAID1 - 100% ускорят винты.
Вы лучше ответье на вопрос, Вы вообще пробовали в рейде и без рейдатаким заниматься, или опять теория?
В-третьих, обращение к 1000 файлов на 100 метров. Вы не думали, наверное, что зависит от того, сколько и чего раздавать. Вы четко утверждаете, что сервер не раздаст гигабит и точка. По причине винтов. Я специально написал конкретно такую конфигурацию, чтобы ткнуть носом, что условия задачи надо ставить корректно.
Раздавать один гигабит статики, которая полностью поместится в оперативу - это скорее исключение, чем правило, я знаю только 1 такой случай, о нем я сообщал ранее. В остальных случаях, если это не прокси, роутер и как у ТС - подобие прокси - все упирается в IO.
И то, что я выжал около 900 мегабит, и что теперь, что ваш реалтек выжал 984? Там даже обжимка кабеля могла быть плохая, банально, но факт. И чип чипу рознь. Другой реалтек вообще может не работать, так что с того?
Вы еще и патчкорды сами обжимаете?
Релтеков у меня работало штук 5.
Третье. Если требуется отдавать одновременно тысячу файлов - здесь спасет или разбрасывание их по винтам или RAID1 с кучей винтов в зеркале (опять же на софт-рейде точно, а вот на аппаратных контроллерах едва ли). Скажем, штук 5 хороших винтов в зеркале - справятся - другой вопрос, нахрена оно надо такую избыточность создавать ради скорости - теряем и место на них. Ну дальше мне слюной брызгать? Я про раздачу именно тысячи файлов одновременно не говорил. А то, что там писано в вашей теме - так вообще глупо что-то советовать, не зная статистики. Честно. 1500 коннектов... А размер айлов. а объем данных, а железо и т.п. Ну и что могут сказать даже самые крутые специалисты? Да по сути ничего. От так. Надеюсь, вы теперь поняли, что вы правы, но со своей стороны. С моей стороны я в любом случае прав и спорим мы с вами на пустом месте фактически. ни мне ни вам не позволяет промолчать осознание собственной правоты. Вот если сервер ложится при 500 файлах и среднем объеме 40 мегабайт, совсем другие пироги будут, да? :). Так что я из темы сливаюсь, мы говорим о разных вещах.
Я не могу понять че Вы спорите в тех вещах, где даже гуру, которые сами тестили, говорят, что работать будет иначе?
ЗЫ Может давайте Вы настриваете сервак с ксеоном и 6 своими супер-пупер серверными винтами, разрекламированными маркетологами винтами в рейд 1,
а я настраиваю свой обычный сервак с обычными десктопными сата-винтами без рейда и посмотрим у кого сервак быстрее загнется?
Непробиваемый.... Давайте так. Вы даете сервер. Вешаете на него статический сайт на html. Ну, скажем. объемом до 1 Гбайт. ОС и все прочее ставлю на него я, RAM на сервере - 4 Гбайт. ВИнты - нормальные SAS или SATA (2 штуки). И потом уже поглядим, кто прав. Так пойдет? В деле. И если сервер сдохнет раньше, чем отдаст гигабит (потому, что заткнулись винты), я верну вам стоимость месячной аренды сервера.
Обождите, 1 Гб любой статики на 1 Гб/с при 4 Гб оперативы я Вам даже без винтов раздам, мы с Вами вроде как говорили про стриминг флв на 1500 конектов, одновременно обращение идет к 1000 файлов, размер каждого файла ~100Мб, есть пусть даже 8 гиг оперы, хочу видеть как Вы на 2 вениках в рейд0 все это разрулите.
ЗЫ На деле я от Вас слышал, что Вы выжимали ~900 Мбит, а дальше мол сетевка не потянула, я Вам показывал, что даже реалтек выжимает 984 Мбит/с
Andron_buton, Ну епт за ногу. Я сказал смотря что отдавать: статику. динамику и т.п. И винты у вас десктопные, да? ну потому 6 штук и пользуете.
Давайте похвайстатесь как Вы отдаете статику с двух любых хоть SAS 15000 RPM супер-пупер-мега серверных с супер-пупер-мега рейдом0 на 1 Гб/с.
ЗЫ Еще одна жертва маркетологов
Andron_buton, мда.... Тяжел диалог. Простите, а кто такие эти люди? Я вам говорю о винтах 10k RPM, хороших таких винтах. Шустрых. Я говорю вам о нормальном процессоре. О нормальной оперативке (не 1-2 гигабайта).
Из вашей темы. Вы о десктопном саташнике, который больше чем 60 мегабайт в секунду при _идеальных_ условиях не прочитает говорите? А я о винте, который должен стоять в сервере. Вы хотите стримить видео на 4 гиг оперативки на 1500 потоков? Да вы самоубийца. А вот ФТП вполне прекрасно полетит на гигабит отдачи. Разницу чуете?
Не то слово тяжелый диалог. Я Вам говорю, что я УЖЕ это делаю и не 1500 потоков, а до 4к доходит. Процессор тут вообще не при чем, он только интераптами занимается, хватит любого дуал кора с головой. Оперативы правда использую 8Гб.
Andron_buton, Я не в теории. Писькой я не меряюсь, я говорю как есть. А вы не внимательно читаете. Кстати, в том треде просто жуткая некомпетентность тех, у кого проблемы с отдачей возникают... =). И еще. Смотря что отдавать.
То есть для Вас слова Михаила Монашева, Игоря Сысосева ничего не значат, они не компетентны?
ЗЫ Еще раз, если у Вас сферический конь в вакууме - один файл, (как фаерфокс в день установления рекорда), то Вам пофиг будет, что рейд, что не рейд.
Andron_buton, В чтении он не проиграет, только в записи. А RAID1 так тоже выиграет, даже больше чем RAID0...
Еще раз, у Вас теория, Вы на практике пробовали?
Почитайте хотя бы этот тред:
http://forum.nginx.org/read.php?21,68014
А на каком же оборудовании это ваш сервер выдает 4 Gb/s ?
А то загрузку магистрали между Киевом и Харьковом я тоже могу показать, там гиг 30 будет :)))
То есть на каком? Свитч HP Procurve 2910.
Andron_buton добавил 14.04.2011 в 10:34
Хорош чушь нести. Вы еще скажите мне, что RAID0 медленнее, чем обычный винт Ясен перец, что с одного винта дергается один кусок файла, а с другого - другой. Если у меня винт читает 100 метров в секунду (линейное _КОПИРОВАНИЕ_ с винта на винт - чтение будет еще быстрее), то при объединении в RAID0 это будет 110-120 метров в секунду. На нормально нагруженном сервере при фрагментации ФС до 30% и достаточном количестве ОЗУ это будет примерно 80 мегабайт в секунду при утилизации диска на 100%. Ясен хрен, что запрашиваются не тупо мелкие файлы, а вся мелочь кешится в памяти (ну вы прикиньте тысячу файлов каждый раз с веника дергать). Так шо... Как бы RAID5 покажет увеличение производительности на 5-10%. А RAID10 на 7-15. Или вы думаете, что сервер с 16 Гбайт RAM и на нормальном ксеоне будет дохнуть от нехватки оперативки и уменьшать объем кеша?
Raistlin добавил 14.04.2011 в 07:30
//10 букв для информации.
Raistlin добавил 14.04.2011 в 07:35
З.Ы. Вот почему Soft-RAID лучше аппаратной реализации.
Рейд0 возможно еще да (его я не пробовал), но рейд5 точно проиграет. Вы конечно можете спорить, но у меня опыт в этом более 3 лет, перепробовал много чего, да и других людей с авторитетом слушал.
Andron_buton, в 5 или 10 рейде хуже?! Вы что-то путаете. там чтение большого файла примерно на такой скорости будет. Если рейд1 - тогда да.
Да в любом. Самое узкое место в вениках - это iops, и вот в любом рейде если клиент запрашивает файл, он дергает сразу все веники, а так - только один. Грубо говоря я смогу на тех же дисках обслужить в 6 раз больше клиентов особенно если файлов у нас не 10-ок, который закешируется в оперативе, а тысячи и их объем в 100 раз превышает объем оперативы.
Просто небыло.
Был один, свернулся. Сейчас второй готовлю. но гигабит это... ~80 мегабайт в секунду. Для винтов хороших в рейде - не большая проблема. Ну, естественно, кешируется в памяти... Разве что чисто ровно гигабит я не отдавал. Получилось только до ~900 мегабит догнать, дальше сетевка не смогла.
В рейде - наоборот хуже. Гигабит у меня получалось выжать из 6-ти веников без рейда. Утилизация на Intel 82571EB:
NET | eth4 98% | pcki 2 | pcko 164994 | si 0 Kbps | so 985 Mbps |
NET | eth3 98% | pcki 2 | pcko 165808 | si 0 Kbps | so 985 Mbps |
NET | eth1 98% | pcki 419854 | pcko 165589 | si 108 Mbps | so 984 Mbps |
NET | eth2 98% | pcki 2 | pcko 165301 | si 0 Kbps | so 984 Mbps |
NET | bond0 ---- | pcki 419936 | pcko 661721 | si 108 Mbps | so 3939 Mbps |
Утилизация на RTL8111/8168B:
NET | eth0 98% | pcki 87313 | pcko 165517 | si 21 Mbps | so 982 Mbps |