Просмотр полной версии : Как настроить балансировку WEB сервера
Есть веб-сервер на Centos 6.7 с двумя сетевыми картами, где работает NGINX
eth0
ip: 10.10.10.147
mask: 255.255.255.128
gw: 10.10.10.129
eth1
ip: 10.10.10.145
mask: 255.255.255.0
gw: 10.10.10.129
Запросы приходят на обе сетевые карты.
После мониторинга видно что вес трафик уходить только через eth0
Возникает вопрос. Как с помощью IPTABLES возвращать ответ через ту сетевую карту, откуда пришел запрос?
Aziz Madetov
21.11.2015, 21:46
Что за? На какой интерфейс пришёл запрос, с того и будет ответ.
В нашем случае почему то не так. на eth0 приход и уход. А в eth1 только входящие пакеты видны
http://img.uz/d/2015/11/5650ab9906df9.jpg (http://img.uz/)
alisherk
22.11.2015, 02:51
Что за? На какой интерфейс пришёл запрос, с того и будет ответ.
ответ будет с того интерфейса, через который идет дефолтный маршрут, ну или специфик маршрут.
alisherk
22.11.2015, 02:52
Возникает вопрос. Как с помощью IPTABLES возвращать ответ через ту сетевую карту, откуда пришел запрос?
iproute2 для этого используйте
barmaley
22.11.2015, 20:13
http://backdrift.org/lacp-configure-network-bonding-linux
может так попробуешь
Alexander Sofyenkov
22.11.2015, 20:37
Есть веб-сервер на Centos 6.7 с двумя сетевыми картами, где работает NGINX
eth0
ip: 10.10.10.147
mask: 255.255.255.128
gw: 10.10.10.129
eth1
ip: 10.10.10.145
mask: 255.255.255.0
gw: 10.10.10.129
Запросы приходят на обе сетевые карты.
После мониторинга видно что вес трафик уходить только через eth0
Возникает вопрос. Как с помощью IPTABLES возвращать ответ через ту сетевую карту, откуда пришел запрос?
Что-то у вас с масками. Попробуйте на второй карте поставить маску, как и на первой, а 4-й октет в адресе сделать в диапазоне 1-126.
Есть веб-сервер на Centos 6.7 с двумя сетевыми картами, где работает NGINX
eth0
ip: 10.10.10.147
mask: 255.255.255.128
gw: 10.10.10.129
eth1
ip: 10.10.10.145
mask: 255.255.255.0
gw: 10.10.10.129
Запросы приходят на обе сетевые карты.
После мониторинга видно что вес трафик уходить только через eth0
Возникает вопрос. Как с помощью IPTABLES возвращать ответ через ту сетевую карту, откуда пришел запрос?
Что-то у вас с масками. Попробуйте на второй карте поставить маску, как и на первой, а 4-й октет в адресе сделать в диапазоне 1-126.
Прошу прощение. Там у обеих одинаково было. При копировании наверное перепутал. То есть у обеих маска 255.255.255.128
На уровне http http://nginx.org/en/docs/http/load_balancing.html
На уровне интерфесов http://xgu.ru/wiki/Linux_Bonding
Оптимальней всего разруливать трафик используя маршруты, так как в дефолтном наборе утилит нет логики балансировки трафика на разные интерфейсы, у которых один и тот же шлюз.
ip ro add 10.10.10.0/24 via dev eth0
ip ro add 10.10.11.0/24 via dev eth1
и т.д.
Оптимальней всего разруливать трафик используя маршруты
Хм это по какому принципу? половина тасикса и мира сюда половина туда?
Хм это по какому принципу? половина тасикса и мира сюда половина туда?
Гениальное просто. Поставить карточку 1Gb =)
Оптимальней всего разруливать трафик используя маршруты, так как в дефолтном наборе утилит нет логики балансировки трафика на разные интерфейсы, у которых один и тот же шлюз.
ip ro add 10.10.10.0/24 via dev eth0
ip ro add 10.10.11.0/24 via dev eth1
и т.д.
Вариант. Как бы для разных подсеток пойдет.
Но как быть если у обеих картах все одинаково кроме самого IP?
Вариант. Как бы для разных подсеток пойдет.
Но как быть если у обеих картах все одинаково кроме самого IP?
Я показал пример именно для Вашего случая.
Вариант. Как бы для разных подсеток пойдет. Но как быть если у обеих картах все одинаково кроме самого IP?
Чем bonding не устроил?
Вариант. Как бы для разных подсеток пойдет.
Но как быть если у обеих картах все одинаково кроме самого IP?
Я показал пример именно для Вашего случая.
вечером постараюсь проверить. Спасибо за помощь.
Вариант. Как бы для разных подсеток пойдет. Но как быть если у обеих картах все одинаково кроме самого IP?
Чем bonding не устроил?
если с routing не получиться, то придется воспользоваться Bonding.
Уже подготовил вариант реализации с mode=6 (так как switch не в моей компетенции)
Спасибо за помощь.
Оптимальней всего разруливать трафик используя маршруты, так как в дефолтном наборе утилит нет логики балансировки трафика на разные интерфейсы, у которых один и тот же шлюз.
ip ro add 10.10.10.0/24 via dev eth0
ip ro add 10.10.11.0/24 via dev eth1
и т.д.
ip ro add 192.168.10.0/24 via dev eth0
Error: an inet address is expected rather than "dev".
JET, http://xgu.ru/wiki/Маршрутизация_в_Linux
Добавление маршрута через интерфейс: ip route add 172.16.10.0/24 dev eth0
т.е. без via =)
JET, http://xgu.ru/wiki/Маршрутизация_в_Linux
Добавление маршрута через интерфейс: ip route add 172.16.10.0/24 dev eth0
т.е. без via =)
RTNETLINK answers: File exists
Не получилось
JET, так скорей всего маршрут уже существует.
Фёдор, но этот маршрут работает только через eth0.
eth1 уже ничего не делает.
Для теста в eth1 сменил ip диапазон из другого класса.
Все пакеты стали нормально ходить именно по своим сетевым картам.
Думаю что это глюк Centos, из за одинаковых ip диапазонов в обеих картах
shumbola
25.11.2015, 23:34
Фёдор, но этот маршрут работает только через eth0.
eth1 уже ничего не делает.
Для теста в eth1 сменил ip диапазон из другого класса.
Все пакеты стали нормально ходить именно по своим сетевым картам.
Думаю что это глюк Centos, из за одинаковых ip диапазонов в обеих картах
Эх, зачем вы это сказали? Теперь админы CentOS ненавидят. :-)
Может быть вам SUSE попробовать, там наверняка глюков меньше, все-таки немецкая ОС.
Abdurohman
25.11.2015, 23:57
Думаю что это глюк Centos, из за одинаковых ip диапазонов в обеих картах
Не только Centos. Недавно было такая ситуация в FreeBSD.
Думаю что это глюк Centos
Думаю что вы пытаетесь резать нож маслом.
Думаю что это глюк Centos, из за одинаковых ip диапазонов в обеих картах
С маршрутами глюков не бывает. Это давно "отточенная" система.
File exists означает что данное направление уже существует.
По идеи при загрузки ОС должно Вам дать ошибку что маршрут уже существует, поскольку Вы указали на втором интерфейсе шлюз по умолчанию и даже на ту самую сеть что и на первом интерфейсе.
Я бы по убирал все дефолтные маршруты и вручную добавил поочерёдно всё что нужно, после, убедивший что работает так как надо - добавить их в загрузку.
На второй странице я скинул ссылку, там подробно описывается возможности маршрутизации.
vBulletin® v3.8.5, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot