Хостинг
Подключить и настроить Агрегирование каналов
Агрегирование каналов (bonding) — технологии объединения нескольких параллельных каналов передачи данных в сетях Ethernet. Опция поможет сбалансировать нагрузку на выделенном сервере и повысить отказоустойчивость.
Мы настраиваем агрегирование каналов по стандартному протоколу LACP. Услуга платная, актуальную стоимость можно уточнить в отделе продаж по почте sales@edgecenter.ru.
Для того, чтобы подключить услугу, выполните настройки, как описано ниже, после чего обратитесь к нам в техническую поддержку.
Предварительные условия
Перед настройкой агрегирования каналов:
1. Убедитесь, что знаете IP-адрес вашего сервера, IP-адрес шлюза, а также маску подсети — эта информация будет нужна для настройки сетевых интерфейсов.
IP-адрес вашего сервера и данные сети, к которой он принадлежит, можно найти в Панели управления. Для этого в разделе Товары/Услуги → Выделенные серверы выберите нужный сервер и нажмите IP-адреса.
2. Найдите активный IP-адрес сервера и запомните данные из колонок «IP-адрес», «Маска» и «Шлюз».
3. Закажите и оплатите услугу Агрегирование каналов.
В разделе Товары/Услуги → Агрегирование каналов нажмите Заказать и оплатите услугу.
Настройка на сервере
После заказа услуги необходимо подключиться к серверу и настроить сетевые интерфейсы, как описано ниже.
Пример настройки для Ubuntu 20.04
1. Обновите все пакеты Ubuntu.
sudo apt-get update
2. Установите пакет ifenslave.
sudo apt-get install ifenslave
3. С помощью команды modprobe загрузите модуль bonding.
sudo modprobe bonding
После этого вы можете выполнить команду lsmod | grep bonding. Если модуль загружен, то вы получите примерный ответ, который показан ниже.
bonding 147456 0
4. Просмотрите информацию о доступных интерфейсах.
ip addr show
Пример ответа представлен ниже.
1: lo: <LOOPBACK,UP,LOWER_UP> ...
...
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
...
3: eno2: <BROADCAST,MULTICAST> ...
...
В данном случае физические интерфейсы имеют названия eno1 и eno2. Запомните эти названия — их нужно будет указать в файле /etc/network/interfaces.
5. Отредактируйте настройки сетевых интерфейсов. Для этого откройте файл /etc/network/interfaces с помощью редактора nano.
nano /etc/network/interfaces
Замените содержимое файла на указанное ниже и сохраните изменения.
auto eno1
iface eno1 inet manual
bond-master bond0
bond-primary eno1
bond-mode 4
auto eno2
iface eno2 inet manual
bond-master bond0
bond-mode 4
auto bond0
iface bond0 inet static
address x.x.x.x
netmask y.y.y.y
network x.x.x.0
gateway z.z.z.z
bond-slaves eno1 eno2
bond-mode 4
bond-miimon 100
bond-downdelay 200
bond-lacp-rate 1
dns-nameservers 8.8.8.8
dns-search com
При этом:
-
вместо eno1 и eno2 вставьте названия интерфейсов на вашем сервере;
-
вместо x.x.x.x вставьте IP-адрес вашего сервера;
-
вместо y.y.y.y вставьте маску подсети;
-
в x.x.x.0 вместо x.x.x вставьте три первых числа из IP-адреса сервера;
-
вместо z.z.z.z вставьте IP-адрес шлюза;
-
значения параметров bond-primary, bond-miimon, bond-downdelay, bond-lacp-rate, dns-nameservers и dns-search указаны для примера — вы можете задать свои значения.
6. Перезагрузите сеть, чтобы изменения вступили в силу.
/etc/init.d/networking restart
Если после выполненных действий интерфейсы не были объединены, перезагрузите ОС.
reboot
Статус объединённых интерфейсов можно проверить, как показано ниже.
cat /proc/net/bonding/bond0
Пример ответа указан ниже.
Ethernet Channel Bonding Driver: v3.1.1 (September 26, 2006)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: 1
Active Aggregator Info:
Aggregator ID: 1
<span class="code-object">Number</span> of ports: 2
Actor Key: 17
Partner Key: 1
Partner Mac Address: 00:77:54:71:a8:6f
Slave Interface: eno1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:99:97:60:9d:48
Aggregator ID: 1
Slave Interface: eno2
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:00:85:60:9d:49
Aggregator ID: 1
Пример настройки для Debian 11
1. Обновите все пакеты Debian.
apt-get update
2. Установите пакет ifenslave.
apt-get install ifenslave
3. С помощью команды modprobe загрузите модуль bonding.
modprobe bonding
После этого вы можете выполнить команду lsmod | grep bonding. Если модуль загружен, то вы получите примерный ответ, который показан ниже.
bonding 147456 0
4. Просмотрите информацию о доступных интерфейсах.
ip addr show
Пример ответа представлен ниже.
1: lo: <LOOPBACK,UP,LOWER_UP> ...
...
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
...
3: eth1: <BROADCAST,MULTICAST> ...
...
В данном случае физические интерфейсы имеют названия eth0 и eth1. Запомните эти названия — их нужно будет указать в файле /etc/network/interfaces.
5. Отредактируйте настройки сетевых интерфейсов. Для этого откройте файл /etc/network/interfaces с помощью редактора nano.
nano /etc/network/interfaces
Замените содержимое файла на указанное ниже и сохраните изменения.
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
bond-master bond0
bond-primary eth0
bond-mode 4
auto eth1
iface eth1 inet manual
bond-master bond0
bond-mode 4
auto bond0
iface bond0 inet static
address x.x.x.x
netmask y.y.y.y
network x.x.x.0
gateway z.z.z.z
bond-slaves eth0 eth1
bond-mode 4
bond-miimon 100
bond-downdelay 200
bond-lacp-rate 1
dns-nameservers 8.8.8.8
dns-search com
При этом:
-
вместо eth0 и eth1 вставьте названия интерфейсов на вашем сервере;
-
вместо x.x.x.x вставьте IP-адрес вашего сервера;
-
вместо y.y.y.y вставьте маску подсети;
-
в x.x.x.0 вместо x.x.x вставьте три первых числа из IP-адреса сервера;
-
вместо z.z.z.z вставьте IP-адрес шлюза;
-
значения параметров bond-primary, bond-miimon, bond-downdelay, bond-lacp-rate, dns-nameservers и dns-search указаны для примера — вы можете задать свои значения.
6. Перезагрузите сеть, чтобы изменения вступили в силу.
/etc/init.d/networking restart
Если после выполненных действий интерфейсы не были объединены, перезагрузите ОС.
reboot
Статус объединённых интерфейсов можно проверить, как показано ниже.
cat /proc/net/bonding/bond0
Пример ответа указан ниже.
Ethernet Channel Bonding Driver: v3.1.1 (September 26, 2006)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: 1
Active Aggregator Info:
Aggregator ID: 1
<span class="code-object">Number</span> of ports: 2
Actor Key: 17
Partner Key: 1
Partner Mac Address: 00:77:54:71:a8:6f
Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:99:97:60:9d:48
Aggregator ID: 1
Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:00:85:60:9d:49
Aggregator ID: 1
Пример настройки для CentOS 7
1. Обновите все пакеты CentOS.
sudo yum update
2. С помощью команды modprobe загрузите модуль bonding.
sudo modprobe bonding
После этого вы можете выполнить команду lsmod | grep bonding. Если модуль загружен, то вы получите примерный ответ, который показан ниже.
bonding 147456 0
3. Просмотрите информацию о доступных интерфейсах.
ip addr show
Пример ответа представлен ниже.
1: lo: <LOOPBACK,UP,LOWER_UP> ...
...
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
...
3: eno2: <BROADCAST,MULTICAST> ...
...
В данном случае физические интерфейсы имеют названия eno1 и eno2. Запомните эти названия — файлы с этими названиями нужно будет отредактировать.
5. Отредактируйте настройки сетевых интерфейсов.
Cоздайте и откройте файл /etc/sysconfig/network-scripts/ifcfg-bond0.
vi /etc/sysconfig/network-scripts/ifcfg-bond0
Задайте содержимое файла, как показано ниже.
DEVICE=bond0
Type=Bond
NAME=bond0
BONDING_MASTER=yes
BOOTPROTO=none
ONBOOT=yes
IPADDR=x.x.x.x
PREFIX=y
GATEWAY=z.z.z.z
NM_CONTROLLED=no
BONDING_OPTS="mode=4 miimon=100 lacp_rate=1"
При этом:
-
вместо x.x.x.x вставьте IP-адрес вашего сервера;
-
вместо y вставьте сетевой префикс без символа /, который соответствует маске. Например, таблицу соответствия масок и префиксов можно посмотреть здесь;
-
вместо z.z.z.z вставьте IP-адрес шлюза;
-
значения параметров miimon, lacp_rate указаны для примера — вы можете задать свои значения.
vi /etc/sysconfig/network-scripts/ifcfg-eno1
Измените содержимое файла, как показано ниже.
DEVICE=eno1
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
IPV6INIT=no
MASTER=bond0
SLAVE=yes
Откройте файл с конфигурациями второго интерфейса. В данном примере это /etc/sysconfig/network-scripts/ifcfg-eno2.
vi /etc/sysconfig/network-scripts/ifcfg-eno2
Измените содержимое файла, как показано ниже.
DEVICE=eno2
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
IPV6INIT=no
MASTER=bond0
SLAVE=yes
6. Перезагрузите сеть, чтобы изменения вступили в силу.
sudo systemctl restart network
Если после выполненных действий интерфейсы не были объединены, перезагрузите ОС.
reboot
Статус объединённых интерфейсов можно проверить, как показано ниже.
cat /proc/net/bonding/bond0
Пример ответа указан ниже.
Ethernet Channel Bonding Driver: v3.1.1 (September 26, 2006)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: 1
Active Aggregator Info:
Aggregator ID: 1
<span class="code-object">Number</span> of ports: 2
Actor Key: 17
Partner Key: 1
Partner Mac Address: 00:77:54:71:a8:6f
Slave Interface: eno1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:99:97:60:9d:48
Aggregator ID: 1
Slave Interface: eno2
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:00:85:60:9d:49
Aggregator ID: 1
Пример настройки для Windows Server 2019
1. Откройте Server Manager.
2. В меню Local Server перейдите в настройку NIC Teaming.
3. В окне TEAMS откройте выпадающее меню TASKS и выберите New Team.
4. В появившемся окне:
-
в поле «Team name» задайте имя группы, которая будет включать объединённые физические интерфейсы;
-
в поле «Member adapters» отметьте интерфейсы, которые нужно объединить;
-
для настройки Teaming mode задайте значение LACP;
-
(опционально) с помощью настройки Load balancing mode задайте режим балансировки нагрузки на интерфейсы:
-
Dynamic (по умолчанию) — нагрузка на интерфейсы будет распределяться динамически;
-
Address hash — для каждого из интерфейсов вычисляется специальный хэш (на основании MAC или IP-адресов отправителя и получателя) и привязывается к определённому интерфейсу. Весь трафик от выбранного отправителя будет идти через этот интерфейс;
-
Hyper-V port — физический интерфейс или группа объединённых интерфейсов будет привязана к конкретному порту на виртуальном коммутаторе Hyper-V.
После настройки нажмите OK.
В результате в меню Network connections панели управления должен появиться новый интерфейс, который станет активен после настройки со стороны EdgeЦентр.
Настройка на стороне EdgeЦентр
После того, как вы настроили интерфейсы на сервере, напишите нам в поддержку — мы выполним все настройки с нашей стороны.