LINUX.ORG.RU
ФорумAdmin

Bond сетевых интерфейсов с целью отказоустойчивости

 ,


0

1

Хочу сделать сабж с целью повышения стабильности линка.
Есть машинка на базе Debian 9 выполняющая роль DHCP, NAT, DNS, WINS NAS, VPN и кучки других сервисов в маленькой корпоративной сетёнке.
Встроенная сетевуха «иногда» дурит и теряет линк - достаточно переткнуть кабель и всё ок снова.
Решил воткнуть внешнюю, поискал и нашёл 2 одинаковые. И задумался, а если воткнуть 2, то можно ли объединить все имеющиеся сетевухи в bond (не James Bond) с основной функцией резервирования друг друга. Да всяко можно, вот только с другой стороны SWITCH должен что-то об этом знать? А если он тупой как пробка и не имеет возможности конфигурироваться то всё пропало? Идея провалилась?
Или так называемый Link Aggregation это bond с целью повышения ширины канала и для резервирования можно без него...
Чё-то запутался... Help!

Да, свитч должен знать.
По-хорошему, концы должны втыкаться в два разных свитча, которые должны знать про бондинг и друг про друга.

pekmop1024 ★★★★★
()

Есть разные режимы бондинга.
Есть те, которым нужна подджержки со стороны свитча (802.3ad), есть те, которым не нужно ничего.
См. параметр mode в bonding.txt.

bigbit ★★★★★
()

Отказоустойчивость между свичом и сервером в общем случае можно организовать двумя способами(на самом деле способов больше, но эти - самые широкораспространенные):

1) STP/RSTP/MSTP;
2) LACP (он же 802.3ad);

Первый вариант - это именно отказоустойчивость, никакой балансировки нагрузки там не будет. В Linux с поддержкой RSTP так себе(вроде только в openvswitch есть), с MSTP всё совсем тухло. Чистый STP - это боль, использовать только если вообще выбора нет.

Второй вариант - агрегация портов с контролем состояния(LACP). Он вообще про балансировку нагрузки(поэтому, например, объединять в LACP интерфейсы с разной пропускной способностью - хреновая идея), отказоустойчивость там довеском идет. В Linux работает хорошо через старый добрый bond-интерфейс(или через уже упомянутый выше openvswitch). Главное алгоритм балансировки подкрутить - дефолтный обычно по MAC-адресам, в некоторых топологиях толку от него примерно ноль.

В обоих случаях - настройки необходимо проделывать как на стороне свича, так и на стороне сервера.

И да, на всякий случай: статическая агрегация портов(без LACP) - это сразу путь в никуда, отказоустойчивости там НЕ БУДЕТ, может про нее забыть сразу.

Ну и последнее - в идеале тот же LACP желательно делать между сервером и несколькими разными свичами(чтобы было не так больно, если один свич сдохнет). Однако свичи должны уметь договариваться о таком между собой, то есть как правило - быть в стеке(технологии у разных вендоров называются по-разному, но по факту там под капотом вариации стека).

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Ну ващет есть mode=1 (active-backup). Обычный фейловер.ничего от свитчей не нужно.

Стп это вообще не про оконечное устройство. Каждый интерфейс оконечного устройства должен быть как edge port и не стоит делать из него - устройства - стп свитч.

anonymous
()
Ответ на: комментарий от anonymous

Ну ващет есть mode=1 (active-backup). Обычный фейловер.ничего от свитчей не нужно.

Не совсем. Знаю D-Link не понаслышке - нужно тюнить arp timeout, иначе будет очень тоскливо. Ну или втыкаться в L2-свичи D-link-а, где такой проблемы не будет by design.

Или совсем хороший вариант - нормальные свичи(читай как «не D-Link») таким не страдают.

Pinkbyte ★★★★★
()
Ответ на: комментарий от anonymous

Каждый интерфейс оконечного устройства должен быть как edge port и не стоит делать из него - устройства - стп свитч.

Зависит от того, будет ли там у ТСа оконечное устройство :-)

Если там та сборная солянка сервисов начнет распихиваться по виртуальным машинам, рано или поздно там появится виртуальный коммутатор - а там и до STP недалеко(но, как я уже сказал - необязательно, LACP всё же в Linux работает лучше).

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.