Ubuntu объединение сетевых интерфейсов

И опять — здравствуйте!
Назрела короткая заметка про агрегировании сетевых интерфейсов в Ubuntu.
С помощью которой можно существенно увеличить сетевую скорость сервера при наличии свободных сетевых интерфейсов.

Итак, дано:

  1. Сервер Ubuntu 14.04
  2. Сетевая карта eth0
  3. Сетевая карта eth1
  4. Сеть 10.200.6.0/24
  5. IP адрес сервера 10.200.6.8

  1. Устанавливаем необходимые пакеты:

    # apt-get install ifenslave ethtool
  2. Прописываем загрузку модуля bonding:

    # vi /etc/modules
    bonding
  3. Cудя по how-to нужно погасить сеть, но это если вы делаете настройку с физической консоли, в противном случае придется перезагрузить сервер в конце настройки:

    /etc/init.d/networking stop
  4. Подгружаем модуль ядра bounding:

    # modprobe bonding

    проверяем:

    # lsmod | grep bonding
    bonding               147456  0
  5. На всякий случай делаем копию сетевых настроек, на тот случай, если что-то пойдет не так и мы сможем быстро откатить настройки сети:

    # cp /etc/network/interfaces /etc/network/interfaces.old
  6.  Редактируем настройки сети:

    vi /etc/network/interfaces
    
    # The loopback network interface
    auto lo
    iface lo inet loopback
    
    # The primary network interface
    auto eth0
    iface eth0 inet manual
    bond-master bond0
    
    auto eth1
    iface eth1 inet manual
    bond-master bond0
    
    auto bond0
    iface bond0 inet static
    address 10.200.6.8
    gateway 10.200.6.6
    netmask 255.255.255.0
    network 10.200.6.0
    dns-nameservers 10.200.6.6
    bond-mode 0
    bond-miimon 100
    bond-slaves eth0 eth1
    

    bond-mode 0 — указывает, что мы делаем Round-robin балансировку

Все возможные варианты bond-mode:

mode=0 (balance-rr)

Этот режим используется по-умолчанию, если в настройках не указано другое. balance-rr обеспечивает балансировку нагрузки и отказоустойчивость. В данном режиме пакеты отправляются «по кругу» от первого интерфейса к последнему и сначала. Если выходит из строя один из интерфейсов, пакеты отправляются на остальные оставшиеся.При подключении портов к разным коммутаторам, требует их настройки.

mode=1 (active-backup)

При active-backup один интерфейс работает в активном режиме, остальные в ожидающем. Если активный падает, управление передается одному из ожидающих. Не требует поддержки данной функциональности от коммутатора.

mode=2 (balance-xor)

Передача пакетов распределяется между объединенными интерфейсами по формуле ((MAC-адрес источника) XOR (MAC-адрес получателя)) % число интерфейсов. Один и тот же интерфейс работает с определённым получателем. Режим даёт балансировку нагрузки и отказоустойчивость.

mode=3 (broadcast)

Происходит передача во все объединенные интерфейсы, обеспечивая отказоустойчивость.

mode=4 (802.3ad)

Это динамическое объединение портов. В данном режиме можно получить значительное увеличение пропускной способности как входящего так и исходящего трафика, используя все объединенные интерфейсы. Требует поддержки режима от коммутатора, а так же (иногда) дополнительную настройку коммутатора.

mode=5 (balance-tlb)

Адаптивная балансировка нагрузки. При balance-tlb входящий трафик получается только активным интерфейсом, исходящий — распределяется в зависимости от текущей загрузки каждого интерфейса. Обеспечивается отказоустойчивость и распределение нагрузки исходящего трафика. Не требует специальной поддержки коммутатора.

Описание скопировано отсюда 

  1. Запускаем сеть:

    # /etc/init.d/networking start

    Или перезагружаем сервер, если мы делали настройки на удаленном терминале

    # reboot

     

  2. Логинимся на сервере, проверяем настройки

    ifconfig
    bond0     Link encap:Ethernet  HWaddr 00:30:48:78:5d:fe
              inet addr:10.200.6.8  Bcast:10.200.6.255  Mask:255.255.255.0
              inet6 addr: fe80::230:48ff:fe78:5dfe/64 Scope:Link
              UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
              RX packets:919 errors:0 dropped:0 overruns:0 frame:0
              TX packets:555 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:97529 (97.5 KB)  TX bytes:53424 (53.4 KB)
    
    eth0      Link encap:Ethernet  HWaddr 00:30:48:78:5d:fe
              UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
              RX packets:451 errors:0 dropped:0 overruns:0 frame:0
              TX packets:277 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:48163 (48.1 KB)  TX bytes:25456 (25.4 KB)
    
    eth1      Link encap:Ethernet  HWaddr 00:30:48:78:5d:fe
              UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
              RX packets:468 errors:0 dropped:0 overruns:0 frame:0
              TX packets:278 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:49366 (49.3 KB)  TX bytes:27968 (27.9 KB)

    Собственно все, мы настроили  агрегирование двух сетевых интерфейсов.

Рейтинг
( 1 оценка, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

:) :D :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.