Инструменты пользователя

Инструменты сайта


mellanox:detailedsetup:mlag

Отказоустойчивость: Настройка агрегации каналов LACP и технологии MLAG на Mellanox SX6036

В современных корпоративных сетях и средах виртуализации простой оборудования недопустим. Стандартное объединение портов (LACP) защищает от обрыва отдельного кабеля или выхода из строя сетевой карты, но оставляет коммутатор единой точкой отказа.

Для решения этой проблемы в операционной системе MLNX-OS на коммутаторах Mellanox SX6036 применяется технология MLAG (Multi-Chassis Link Aggregation). Она позволяет объединить два физических свитча в единую логическую сущность. В этой статье мы пошагово разберем, как связать два коммутатора SX6036 в пару MLAG и настроить отказоустойчивые подключения к серверам.

Архитектурный подход: Как устроен MLAG

Для работы MLAG коммутаторы соединяются друг с другом специальным каналом связи, который называется IPL (Inter-Peer Link). Через IPL-линк коммутаторы синхронизируют свои таблицы MAC-адресов, состояния портов и трафик протокола LACP.

Рекомендуется выделять под IPL как минимум два физических порта (например, порты 35 и 36), объединенных в Port-Channel, чтобы обеспечить высокую пропускную способность и резервирование самого служебного канала.

Управление MLAG происходит через служебный IP-интерфейс в выделенном VLAN (например, VLAN 4000), который работает исключительно внутри IPL-линка.

Шаг 1. Подготовка и базовая настройка коммутаторов

Настройку необходимо выполнить на обоих коммутаторах. Назовем их Switch-01 (Master) и Switch-02 (Standby). Перед стартом убеждаемся, что на обоих устройствах созданы идентичные VLAN для пользовательского трафика (10, 20, 30 и т.д.).

Настройка на Switch-01:

Входим в режим конфигурации

Switch-01 > enable
Switch-01 # configure terminal

Включаем подсистему MLAG глобально

Switch-01 (config) # mlag ssl-no-validate
Switch-01 (config) # mlag

Создаем служебный VLAN для синхронизации MLAG-пиров

Switch-01 (config) # vlan 4000
Switch-01 (config vlan 4000) # exit

Настраиваем IPL-интерфейс (объединяем порты 1/35 и 1/36)

Switch-01 (config) # interface port-channel 10
Switch-01 (config interface port-channel 10) # ipl 1
Switch-01 (config interface port-channel 10) # exit

Привязываем физические порты к IPL Port-Channel

Switch-01 (config) # interface ethernet 1/35-1/36
Switch-01 (config interface ethernet 1/35-1/36) # channel-group 10 mode active
Switch-01 (config interface ethernet 1/35-1/36) # exit

Назначаем IP-адрес для внутренней связи пиров в VLAN 4000

Switch-01 (config) # interface vlan 4000
Switch-01 (config interface vlan 4000) # ip address 192.168.254.1 255.255.255.252
Switch-01 (config interface vlan 4000) # exit

Конфигурируем сам домен MLAG (задаем имя, свой IP и IP соседа)

Switch-01 (config) # mlag-domain MyCluster
Switch-01 (config mlag-domain MyCluster) # peer-ip 192.168.254.2 interface vlan 4000
Switch-01 (config mlag-domain MyCluster) # my-ip 192.168.254.1
Switch-01 (config mlag-domain MyCluster) # exit

Настройка на Switch-02:

На втором коммутаторе конфигурация идентичная, меняются только IP-адреса.

Switch-02 > enable
Switch-02 # configure terminal

Switch-02 (config) # mlag ssl-no-validate
Switch-02 (config) # mlag
Switch-02 (config) # vlan 4000
Switch-02 (config vlan 4000) # exit

Switch-02 (config) # interface port-channel 10
Switch-02 (config interface port-channel 10) # ipl 1
Switch-02 (config interface port-channel 10) # exit

Switch-02 (config) # interface ethernet 1/35-1/36
Switch-02 (config interface ethernet 1/35-1/36) # channel-group 10 mode active
Switch-02 (config interface ethernet 1/35-1/36) # exit

Switch-02 (config) # interface vlan 4000
Switch-02 (config interface vlan 4000) # ip address 192.168.254.2 255.255.255.252
Switch-02 (config interface vlan 4000) # exit

Switch-02 (config) # mlag-domain MyCluster
Switch-02 (config mlag-domain MyCluster) # peer-ip 192.168.254.1 interface vlan 4000
Switch-02 (config mlag-domain MyCluster) # my-ip 192.168.254.2
Switch-02 (config mlag-domain MyCluster) # exit

Проверяем, что коммутаторы успешно нашли друг друга и установили сессию, командой:

Switch-01 # show mlag

В выводе статус «MLAG Session» должен измениться на UP.

Шаг 2. Подключение хостов (Агрегация через MLAG)

Теперь, когда свитчи объединены в кластер, создаём распределенный Port-Channel для нашего сервера. Предположим, первый порт сетевой карты хоста (ConnectX-3) идет в порт 1/1 на Switch-01, а второй порт — в порт 1/1 на Switch-02.

Для этого на каждом коммутаторе создается свой Port-Channel, но с одинаковым идентификатором mlag-id.

Конфигурация на Switch-01:

Создаем интерфейс агрегации

Switch-01 (config) # interface port-channel 1

Присваиваем уникальный mlag-id (должен совпадать на обоих свитчах для этого сервера)

Switch-01 (config interface port-channel 1) # mlag-id 1

Настраиваем порты в режим Trunk (пробрасываем продуктивные VLAN)

Switch-01 (config interface port-channel 1) # switchport mode trunk
Switch-01 (config interface port-channel 1) # switchport trunk allowed-vlan 10,20,30
Switch-01 (config interface port-channel 1) # exit

Привязываем локальный физический порт 1/1 к этому Port-Channel

Switch-01 (config) # interface ethernet 1/1
Switch-01 (config interface ethernet 1/1) # channel-group 1 mode active
Switch-01 (config interface ethernet 1/1) # exit

Конфигурация на Switch-02:

Switch-02 (config) # interface port-channel 1
Switch-02 (config interface port-channel 1) # mlag-id 1
Switch-02 (config interface port-channel 1) # switchport mode trunk
Switch-02 (config interface port-channel 1) # switchport trunk allowed-vlan 10,20,30
Switch-02 (config interface port-channel 1) # exit

Switch-02 (config) # interface ethernet 1/1
Switch-02 (config interface ethernet 1/1) # channel-group 1 mode active
Switch-02 (config interface ethernet 1/1) # exit

После этого на стороне сервера (будь то ESXi или Proxmox, конфигурации которых мы разбирали ранее) настраивается стандартный LACP Бонд (802.3ad).

Проверка отказоустойчивости

После проведения пусконаладочных работ обязательно выполняем серию тестов для подтверждения отказоустойчивости:

  • [X] Проверка статуса MLAG интерфейсов: Убеждаемся, что все распределенные порты находятся в активном состоянии синхронизации.
Switch-01 # show mlag interface
  • [X] Тест отключения линка: Запускаем постоянный пинг до виртуальных машин внутри кластера и физически отключаем один из портов на Switch-01. Потери пакетов быть не должно.
  • [X] Тест перезагрузки коммутатора: Выполняем перезагрузку одного из коммутаторов. Сетевая фабрика должна продолжить работу в штатном режиме за счет ресурсов второго коммутатора.
  • [X] Сохранение настроек на обоих устройствах:
Switch-01 # configuration write
Switch-02 # configuration write
mellanox/detailedsetup/mlag.txt · Последнее изменение: — Chigus