Распределение нагрузки м/ду сетевыми интерфейсами

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-05 15:56:21

ПРОБЛЕМА : Весь трафф инетовский ходит через 1 сетевуху eth0 , хочеться что бы все что бы работало по принципу "Куда пришло оттудаи ушло" , к примеру , один из вебсерверов пашет на eth3, весь трафф , который крутиться на этом вебсервере - должен ходить сугубо по eth3 и т.п.


Хочеться простое и надежное решение , помогите кто чем может :)

Коллеги , ситуация следующая:

имеется тазик с 4 мя сетевыми интерфейсами:

Код: Выделить всё

root@www:/usr/local/www/uakino# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:02:a5:4e:db:04
          inet addr:94.154.222.33  Bcast:94.154.222.255  Mask:255.255.255.0
          inet6 addr: fe80::202:a5ff:fe4e:db04/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2380779831 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4404551233 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:302892729170 (302.8 GB)  TX bytes:6445661615221 (6.4 TB)

eth1      Link encap:Ethernet  HWaddr 00:18:fe:26:bd:0a
          inet addr:94.154.222.34  Bcast:94.154.255.255  Mask:255.255.255.0
          inet6 addr: fe80::218:feff:fe26:bd0a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:218580 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:16100270 (16.1 MB)  TX bytes:492 (492.0 B)
          Interrupt:70 Base address:0xc000

eth2      Link encap:Ethernet  HWaddr 00:02:a5:4e:db:05
          inet addr:192.168.1.8  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::202:a5ff:fe4e:db05/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6607379 errors:0 dropped:0 overruns:0 frame:0
          TX packets:19126531 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:505997682 (505.9 MB)  TX bytes:27498780557 (27.4 GB)

eth3      Link encap:Ethernet  HWaddr 00:18:fe:26:bd:0b
          inet addr:94.154.222.36  Bcast:94.154.255.255  Mask:255.255.255.0
          inet6 addr: fe80::218:feff:fe26:bd0b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:217058 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:15795903 (15.7 MB)  TX bytes:492 (492.0 B)
          Interrupt:69
eth0, eth1,eth3 - смотрят в инет , на одного и того же провайдера . eth2 - смотрит в мою маленькую локальную сеть .

Конфиг следующий:

Код: Выделить всё

root@www:/# cat /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
        address 94.154.222.33
        netmask 255.255.255.0
        network 94.154.222.0
        broadcast 94.154.222.255
        gateway 94.154.222.1
# dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 94.154.223.243
        dns-search uakino.net

auto eth1
iface eth1 inet static
    address 94.154.222.34
    netmask 255.255.255.0
    network 94.154.222.0
    broadcast 94.154.255.255
    dns-nameservers 94.154.223.243

auto eth2
    iface eth2 inet static
    address 192.168.1.8
    netmask 255.255.255.0
    network 192.168.1.0
    broadcast 192.168.1.255
dns-nameservers 94.154.223.243

auto eth3
iface eth3 inet static
    address 94.154.222.36
    netmask 255.255.255.0
    network 94.154.222.0
    broadcast 94.154.255.255
    dns-nameservers 94.154.223.243
Актуальная таблица маршрутов:

Код: Выделить всё

root@www:/# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth2
94.154.222.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
94.154.222.0    0.0.0.0         255.255.255.0   U     0      0        0 eth3
94.154.222.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
0.0.0.0         94.154.222.1    0.0.0.0         UG    100    0        0 eth0
Да, возможно тупая таблица, но так "оно само" сделало :)
так тоже работает аналогичным образом:

Код: Выделить всё

root@www:/# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth2
0.0.0.0         94.154.222.1    0.0.0.0         UG    100    0        0 eth0

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-05 16:06:43

ах да

Код: Выделить всё

root@www:/# uname -a
Linux www 2.6.38-8-server #42-Ubuntu SMP Mon Apr 11 03:49:04 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

Dark_ASU
сержант
Сообщения: 258
Зарегистрирован: 2009-10-31 22:13:04
Контактная информация:

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение Dark_ASU » 2011-07-05 21:30:09

Ставь религиозную ос тогда подскажу. Или кури ман по iptables.

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-05 21:58:07

Бугагаг , фашист?
Не фашисты , подскажите . Вариант с маркировкой пакетов iptables-ом я знаю . Он геморный , другие варианты подскажите

FiL
ст. лейтенант
Сообщения: 1366
Зарегистрирован: 2010-02-05 0:21:40

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение FiL » 2011-07-05 22:21:55

arty777 писал(а): Актуальная таблица маршрутов:

Код: Выделить всё

root@www:/# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         94.154.222.1    0.0.0.0         UG    100    0        0 eth0
                                                                        ^^^^
куда сказали - туда и посылается. А по уму, если все адреса из одной сети, то надо аггрегировать линки и вешать все адреса на аггрегированный канал.

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-05 22:33:29

О, вот хорошая идея .... Попробую на днях забондить в один логический . спасибо за подсказку :)

homoadminus
рядовой
Сообщения: 41
Зарегистрирован: 2011-06-27 3:45:02

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение homoadminus » 2011-07-06 1:54:32

только агрегацию еще и со стороны провайдера надо настроить ;))) И зачем ТС хотеть чтобы всё бегало через разные интерфейсы? Трафик несколько гигабит? 8)

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-06 7:32:34

Канал провайдер дает гигабит . Да , вебсервер вечерами сильно гагружен 500-600 мегабит , 3-4 к соединений , мне кажеться не совсем правильным что 1 сетевуха напрягается .
олько агрегацию еще и со стороны провайдера надо настроить
Я ж вроде могу у себя на тазике в 1 логический сделать .... , и нет? :)
PS Свитч у меня Cisco 2960G 48

homoadminus
рядовой
Сообщения: 41
Зарегистрирован: 2011-06-27 3:45:02

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение homoadminus » 2011-07-06 13:14:11

вы конечно можете на каталисте сделать агрегацию, но это как был гигабит, так им и останется.

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-06 13:27:26

То понятно . Что выше того что провайдер дает не прыгнешь . зато будет нагрузка распределяться м/ду моими физическими сетевухами .

Вот кстати ман для бондинга нашел для убунты (вдруг кому надо) https://help.ubuntu.com/community/UbuntuBonding

homoadminus
рядовой
Сообщения: 41
Зарегистрирован: 2011-06-27 3:45:02

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение homoadminus » 2011-07-06 17:06:05

зачем тут оно? ман найти не проблема, как и документашку на /etc/network/interfaces. вы можете объяснить чем лучше вариант с агрегацией?

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-06 17:24:46

Как я понял , что при бондинге, будет 1 логический канал , в который будет объеденено в моем случае 3 сетевухи , и система будет нагружать в равных частях все сетевые карты . т.к. в таблице маршрутизации будет прописано примерно следующее:

Код: Выделить всё

root@www:/# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         94.154.222.1    0.0.0.0         UG    100    0        0   bond0
т.е все железо будет юзаться в равных частях , мне это подходит , лучше чем юзать из 3 только 1 сетевуху по полной .

Я еще это не сделал , это все пока предположения , на вых попробую

homoadminus
рядовой
Сообщения: 41
Зарегистрирован: 2011-06-27 3:45:02

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение homoadminus » 2011-07-06 20:20:57

т.е все железо будет юзаться в равных частях , мне это подходит , лучше чем юзать из 3 только 1 сетевуху по полной .
так ведь чем лучше то? :)

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-06 21:34:44

В перспективе , когда канал будет юзаться вечерами по полной (1 гигабит и много "к" соединений) не уверен что работать через 1 сетевуху будет лучше чем с 3мя . Т.е. что б не упираться в сеть...

Лучше чем что? :)

arty777
рядовой
Сообщения: 22
Зарегистрирован: 2011-02-16 15:30:07

Re: Распределение нагрузки м/ду сетевыми интерфейсами

Непрочитанное сообщение arty777 » 2011-07-09 11:37:49

Ну в общем, вот теперь какая картинка , балансировку использовал round-robin:

Код: Выделить всё

 #   Interface                RX Rate         RX #     TX Rate         TX #
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
www (source: local)
  0   lo                         0.00B            0       0.00B            0
  1   eth1                      12.11MiB      10651       6.80MiB       2534
  2   eth0                      14.33MiB      13048       6.80MiB       6179
  3   eth3                      13.45MiB      12535       7.18MiB       2534
  4   eth2                      59.00B            0     297.00B            0
  5   bond0                     39.89MiB      36235      20.79MiB      11248
Короче, получил то что хотел , весь сетевой трафф равномерно распределяется по интерфейсам внешним ! Супер