URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 3154
[ Назад ]

Исходное сообщение
"Рсапределенная нагрузка на канал. FreeBSD"

Отправлено ortick , 21-Июн-10 06:52 
Добрый день, уважаемые. Хотел бы получить консультацию.
Имеются несколько серверов под FreeBSD, каждый настроен на отдачу статики (в основном собственное видео), каждый имеет порт в 100Mbit, каждый зеркалит друг друга, так вот в часы пик нагрузки на канал доходят до пика и хотелось бы распределить всю нагрузку (по трафику именно) равномерно на все сервера, т.е. если у одного скажем 70-80Mbit в теущий момент, а у соседнего 30, то кидаем клиента на него.

Сейчас тупо сделано так... на главном сервере через ссылку вида www.site.ru/redirect/file.avi скрипт случайно выбирает сервер из списка и редиректит на него уже.

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

Так вот, имеется ли какое-то программное решение для равномерной нагрузки на канал по нашу ОС?

Спасибо заранее.



Содержание

Сообщения в этом обсуждении
"Рсапределенная нагрузка на канал. FreeBSD"
Отправлено Аноним , 21-Июн-10 10:39 
может быть поможет man carp

"Рсапределенная нагрузка на канал. FreeBSD"
Отправлено sage444 , 21-Июн-10 13:48 
>Добрый день, уважаемые. Хотел бы получить консультацию.
>Имеются несколько серверов под FreeBSD, каждый настроен на отдачу статики (в основном
>собственное видео), каждый имеет порт в 100Mbit, каждый зеркалит друг друга,
>так вот в часы пик нагрузки на канал доходят до пика
>и хотелось бы распределить всю нагрузку (по трафику именно) равномерно на
>все сервера, т.е. если у одного скажем 70-80Mbit в теущий момент,
>а у соседнего 30, то кидаем клиента на него.
>
>Сейчас тупо сделано так... на главном сервере через ссылку вида www.site.ru/redirect/file.avi скрипт

немножко не туда но почему бы не переписать ваш редирект на запоминание сколько клиентов уже получил сервер и соответственно снижал вероятность попадания клиента на этот сервер?



"Рсапределенная нагрузка на канал. FreeBSD"
Отправлено ortick , 21-Июн-10 14:32 
>немножко не туда но почему бы не переписать ваш редирект на запоминание
>сколько клиентов уже получил сервер и соответственно снижал вероятность попадания клиента
>на этот сервер?

А если один клиент качает файл на 10 мегов, а второй уже на 100?
Тут надо мониторить нагрузку на сеть и давать наименее нагруженный сервер.



"Рсапределенная нагрузка на канал. FreeBSD"
Отправлено nordest , 15-Июл-10 13:38 
>>немножко не туда но почему бы не переписать ваш редирект на запоминание
>>сколько клиентов уже получил сервер и соответственно снижал вероятность попадания клиента
>>на этот сервер?
>
>А если один клиент качает файл на 10 мегов, а второй уже
>на 100?
>Тут надо мониторить нагрузку на сеть и давать наименее нагруженный сервер.

sysctl net.inet.carp.arpbalance=1

На первой ноде

ifconfig carp0 create
ifconfig carp0 vhid 1 pass mekmitasdigoat 192.168.1.10/24
ifconfig carp1 create
ifconfig carp1 vhid 2 advskew 100 pass mekmitasdigoat 192.168.1.10/24

На второй ноде

ifconfig carp0 create
ifconfig carp0 vhid 1 advskew 100 pass mekmitasdigoat 192.168.1.10/24
ifconfig carp1 create
ifconfig carp1 vhid 2 pass mekmitasdigoat 192.168.1.10/24