19. Настройка стекирования

19.1. Назначение

Стекирование - это технология объединения нескольких физических коммутаторов в один логический, в целях упрощения конфигурации и управления устройствами.

19.2. Описание

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

Модель коммутатора

Порты

Скорость

Тип

  • AQ-N3000-24T

  • AQ-N3000-24P

  • eth-x-25

  • eth-x-26

40G

QSFP+

  • AQ-N3000-48T

  • AQ-N3000-48P

  • eth-x-49

  • eth-x-50

40G

QSFP+

  • AQ-N5000-24X

  • eth-x-25

  • eth-x-26

40G / 100G

QSFP28

Важно!

Лицензия Professional включает функции, которые не поддерживаются в стеке. Для корректной работы устройства в составе стека необходима и достаточна лицензия Advanced.

Если в стек добавляется устройство с установленной лицензией Professional его функциональность автоматически ограничивается набором возможностей, соответствующих лицензии Advanced.

Важно!

В стеке поддерживается только использование профиля STM default. Система блокирует возможность настройки стека с неподдерживаемым профилем:

  • при выполнении команды stack enable проверяется, какой профиль STM будет установлен после перезагрузки. Если профиль отличается от default, выдается сообщение об ошибке.

  • Если команда активации стека (stack enable) уже выполнена, но коммутатор еще не перезагружен, изменить профиль STM на значение, отличное от default, невозможно. При попытке выполнить команду stm prefer с любым параметром, кроме default, система отобразит сообщение об ошибке.

  • При активной конфигурации стека команды изменения профиля STM (stm prefer) недоступны. Для просмотра текущего профиля можно использовать команду show stm prefer.

Подробнее о профилях STM см. раздел “Настройка STM”

Основные параметры текущей реализации стекирования в коммутаторах Aquarius:

  • Поддержка стекирования до 16 коммутаторов.

  • Поддержка линейной и кольцевой топологии стека.

  • Поддержка PoE в стеке.

  • Отказоустойчивость для коммутатора Master в стеке.

  • Роль Standby, в дополнение к ролям Master и Slave.

  • Поддержка High Availability в стеке при отказе Master для сценариев базового L2 доступа:

    • в топологиях STP, RSTP, MSTP;

    • для Static L2 Link Aggregation с интерфейсами, находящимися на разных устройствах стека, с поддержкой балансировки LinkAgg Static Load Balancing и Local Priority Forwarding;

    • для Dynamic LACP L2 Link Aggregation с интерфейсами, находящимися на разных устройствах стека, с поддержкой балансировки LinkAgg Static Load Balancing и Local Priority Forwarding;

    • для управления локальными учетными записями пользователей;

    • для управления PoE в стеке.

  • Стекирование обеспечивается при помощи портов QSFP+ на серии N3000 и QSFP28 на модели AQ-N5000-24X. Поддерживается использование DAC/AOC кабельных сборок и трансиверов.

  • Роли Master/Standby выбираются на основе приоритета.

В текущей фазе реализации AqStack HA присутствуют ограничения поддержки LLDP, Voice VLAN, ACL, UDLD, L3 интерфейсов (включая SVI, Loopback, субинтерфейсы, VRF), которые будут сняты в последующих версиях AqNOS.

19.3. Настройка

Ниже показан пример настройки стекирования в соответствии с представленной сетевой конфигурацией.

image

Рис. 19.1 Стекирование. Соединение в топологию “кольцо”.

Показано объединение в стек коммутаторов “Switch1” - “Switch4”. Коммутатор “Switch5” является внешним коммутатором, подключенным к коммутаторам “Switch1” (участнику стека) и “Switch2” (мастер-коммутатору стека).

Шаг 1: Вход в режим Global Config

На коммутаторах “Switch1” - “Switch4”:

Switch# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#

Шаг 2: Отключение портов

На коммутаторах “Switch1” - “Switch4”:

Switch(config)# interface eth-0-49
Switch(config-if)# shutdown

Подсказка

Порт “eth-0-49” приведен в качестве примера. Команда должна быть выполнена на обоих портах стекирования всех коммутаторов стека.

Шаг 3: Включение стекирования

На коммутаторах “Switch1” - “Switch4”:

Switch(config)# stack enable

Шаг 4: Назначение номеров коммутаторов в стеке и их приоритетов

На коммутаторе “Switch1”:

Switch(config)# stack slotid 1 priority 200

На коммутаторе “Switch2”:

Switch(config)# stack slotid 2 priority 255

На коммутаторе “Switch3”:

Switch(config)# stack slotid 3

На коммутаторе “Switch4”:

Switch(config)# stack slotid 4

Подсказка

Число, указанное после ключевого слова priority задает значение приоритета коммутатора (1- 255). Коммутатор с наивысшим приоритетом становится мастер-коммутатором, в случае его отказа мастер-коммутатором становится следующий по приоритету коммутатор стека.

Если значение приоритета не задано, приоритет коммутатора определяется по номеру slotid. Чем меньше номер slotid, тем выше приоритет.

Шаг 5: Создание интерфейсов стекирования

На коммутаторе “Switch1”:

Switch(config)# interface stack-0-1
Switch(config-if)# member-port eth-0-26
Switch(config-if)# member-port speed 40G 
Switch(config)# interface stack-0-2
Switch(config-if)# member-port eth-0-25
Switch(config-if)# member-port speed 40G 

На коммутаторе “Switch2”:

Switch(config)# interface stack-0-2
Switch(config-if)# member-port eth-0-26
Switch(config)# interface stack-0-3
Switch(config-if)# member-port eth-0-25

Примечание

Для синхронизации скорости с коммутаторами серии N3000, командой member-port speed 40G установлена скорость 40G.

На коммутаторе “Switch3”:

Switch(config)# interface stack-0-3
Switch(config-if)# member-port eth-0-50
Switch(config)# interface stack-0-4
Switch(config-if)# member-port eth-0-49

На коммутаторе “Switch4”:

Switch(config)# interface stack-0-4
Switch(config-if)# member-port eth-0-50
Switch(config)# interface stack-0-1
Switch(config-if)# member-port eth-0-49

Подсказка

При создании интерфейсов стекирования, так как стек еще не собран, они имеют названия вида stack-0-х, где 0 - фиксированное значение, а x - присваиваемый номер интерфейса стекирования.

После завершения настройки стекирования и перезагрузки коммутаторов стек будет окончательно настроен, и 0 будет заменен на настроенное для коммутатора значение slotid.

Шаг 6: Включение портов

На коммутаторах “Switch1” - “Switch4”:

Switch(config)# interface eth-0-49
Switch(config-if)# no shutdown

Подсказка

Порт “eth-0-49” приведен в качестве примера. Команда должна быть выполнена на обоих портах стекирования всех коммутаторов стека.

Шаг 7: Сохранение конфигурации и перезагрузка

На коммутаторах “Switch1” - “Switch4”:

Switch# copy running config startup-config
Switch# reboot

Важно!

Дальнейшая настройка стека и управление ведомыми коммутаторами должны производиться только на мастер-коммутаторе.

Системная подсказка на коммутаторах стека после перезагрузки:

На коммутаторе “Switch1”:

Switch (Standby:1)#

На коммутаторе “Switch2”:

Switch (Master:2)#

На коммутаторе “Switch3”:

Switch (Slave:3)#

На коммутаторе “Switch4”:

Switch (Slave:4)#

Шаг 8: Вывод информации о стеке

Информацию о состоянии интерфейсов стекирования можно вывести при помощи команды show stack link:

Switch(Master:2)# show stack link
AqStack Interface    Local Interface    Member Port    Remote Interface
=======================================================================
      stack-01-02                 up      eth-01-25                  up
      stack-01-01                 up      eth-01-26                  up
      stack-02-02                 up      eth-02-26                  up
      stack-02-03                 up      eth-02-25                  up
      stack-03-03                 up      eth-03-50                  up
      stack-03-04                 up      eth-03-49                  up
      stack-04-01                 up      eth-04-49                  up
      stack-04-04                 up      eth-04-50                  up

Схематичное представление топологии стека можно вывести при помощи команды show stack topology:

Switch(Master:2)# show stack topology

Unit role:    MA - Master
              SB - Standby
              S  - Slave

  ┌────┐    ┌────┐    ┌────┐    ┌────┐    ┌────┐  
  │MA02├─02─┤SB01├─01─┤S 04│─04─┤S 03├─03─┤MA02│  
  └────┘    └────┘    └────┘    └────┘    └────┘  

Known Unicast Forwarding Path Table:
Local Slot-ID      AqStack-Interface      Remote Slot-ID
========================================================
            2            stack-02-02                   1
            2            stack-02-03                   3
            2            stack-02-02                   4
Switch(Master:2)#

Служебную информацию о стеке можно вывести при помощи команды show stack:

Switch(Master:2)# show stack
AqStack Domain-ID: 0

Slot-ID    Unit Role           Unit MAC       Unit State    Unit Priority
=========================================================================
      1      Standby     0058:3f1c:e157              Run              100
      2       Master     0058:3f1c:e0e5              Run              100
      3        Slave     0058:3f1c:e4e7              Run              100
      4        Slave     0058:3f1c:e44f              Run              100

AqStack System MAC is: 0058:3f1c:e0e5
Password protection: Disable

Switch(Master:2)#

Шаг 9: Настройка связи с внешним коммутатором

Настройка скорости uplink-портов коммутаторов стека для установки соединения с внешним коммутатором (Switch5), порты которого поддерживают только скорость 25G.

Для коммутатора “Switch1”:

Switch(Master:2)# configure terminal
Switch(Master:2)(config)# interface eth-1-27
Switch(Master:2)(config-if)# group-speed 25G

Для коммутатора “Switch2”:

Switch(Master:2)# configure terminal
Switch(Master:2)(config)# interface eth-2-27
Switch(Master:2)(config-if)# group-speed 25G

Важно!

Изменение командой group-speed скорости uplink-порта влечет за собой изменение скорости всех uplink-портов данного коммутатора. Изменение скорости для отдельного порта не предусмотрено. Команда может быть применена только на коммутаторах серии N3000.

19.4. Аутентификация по паролю

Описание

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

Настройка

Настройка пароля на этапе создания стека

Шаг 1: Вход в режим Global Config

Switch# configure terminal

Шаг 2: Создание пароля

Пароль задается на standalone-устройстве до того, как стек будет собран

Switch(config)# stack password [8] <пароль>

Команда stack password должна задаваться на устройстве вместе с другими параметрами стека: stack enable, stack slotid, stack priority, stack domainid после ввода ключевых команд : stack enable и stack slotid.

Важно!

Если пароль не задан, стек работает без аутентификации.

Важно!

Если в работающем стеке задан пароль, то при добавлении в стек нового устройства необходимо задать пароль на этапе его первоначальной конфигурации. Если пароль не был задан или не совпадает с паролем на Master, устройство не будет добавлено в стек.

Важно!

На Slave-коммутаторах команда stack password недоступна.

Добавление (изменение) пароля в уже работающем стеке

В уже существующем стеке комманда stack password доступна только на Master-коммутаторе.

Новый пароль вступит в силу только после сохранения конфигурации и перезагрузки всего стека командой reload slot all. До перезагрузки старые настройки аутентификации остаются активными.

Важно!

Если пароль задан, но стек не перезагружен, активной является конфигурация с неустановленным паролем. В этом состоянии можно добавлять в стек новые устройства без заданного пароля. После перезагрузки пароль будет применен ко всем участникам стека на момент перезагрузки.

Проверка статуса аутентификации

Текущее состояние защиты паролем отображается в выводе команды:

Switch (Master) (config)# show stack
Password protection: Enabled/Disabled

19.5. Процедура ISSU (In-Service Software Upgrade)

Назначение

Процедура ISSU (In-Service Software Upgrade) предназначена для обновления программного обеспечения стека без необходимости одновременной остановки всех участников стека и полного прекращения передачи трафика.

Описание

ISSU – это процедура последовательного обновления ПО AqNOS в стеке, позволяющая обновить коммутаторы без остановки передачи трафика. В рамках ISSU с новой версией AqNOS сначала загружается текущий Master-коммутатор. После его перезагрузки функции управления без разрыва остальных сетевых соединений переходят к Standby-коммутатору, который становится новым Master-коммутатором. После перезагрузки бывший Master возвращается в стек в роли Slave, уже работая с новой версией AqNOS. Затем процедура повторяется – обновление выполняется уже на новом Master-коммутаторе.

ISSU предусматривает специальный режим работы, допускающий одновременное существование в работающем стеке двух разных версий операционной системы (при условии, что возможность их использования для процедуры ISSU подтверждена в release notes).

Активация режима ISSU

Режим ISSU включается командой stack issu-mode.

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

Особенности режима ISSU

В обычном режиме стек требует, чтобы на всех участниках была установлена одна и та же версия AqNOS. В режиме ISSU автоматическая проверка идентичности версий AqNOS не производится. Это позволяет временно иметь в стеке устройства с разными версиями AqNOS (старой и новой).

Процесс установки нового образа

Новый образ загружается на все устройства стека с помощью команды:

copy tftp://<путь_к_образу> slotall#boot:

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

boot system flash:/<путь_к_образу> slot all

Поочередная перезагрузка Master-коммутаторов

Для минимизации перерыва в обслуживании выполняется контролируемая поочерёдная перезагрузка устройств, выполняющих роль Master-коммутатора в стеке. Если в стеке более трёх устройств, необходимо использовать опцию standby-prefer перед перезагрузкой. Она обеспечивает управляемый переход роли Standby к заранее выбранному устройству.

Возврат в стандартный режим

После того как все участники стека загрузились с новой версией ПО, необходимо отключить режим ISSU командой no stack issu-mode.

После этого стек возвращается к стандартному режиму эксплуатации, в котором проводится проверка использования идентичной версии AqNOS на всех участниках стека с возможным ограничением для устройств с отличающейся от установленной на Master-коммутаторе версии AqNOS и автоматической синхронизацией версии AqNOS для коммутаторов Slave, подключающихся к стеку.

Настройка

Шаг 1: Вход в режим Global Config

Switch(Master:1)# configure terminal

Шаг 2: Активация режима ISSU

Switch(Master:1)(config)# stack issu-mode
Switch(Master:1)(config)# end

Шаг 3: Проверка

Switch(Master:1)# show running-config | include issu
stack issu-mode

Шаг 4: Загрузка образа новой версии AqNOS

Switch(Master:1)# copy tftp://10.0.64.250/aqnos-cg1-7.6.1.bin slotall#boot:

Шаг 5: Настройка образа AqNOS, используемого при запуске коммутатора

Switch(Master:1)# boot system flash:/boot/aqnos-cg1-7.6.1.bin slot all

Шаг 6: Проверка

Switch(Master:1)# show boot
boot information on slot1:
The current boot image version is: AQ-N3001-7.6.1
The current running image is:  flash:/boot/aqnos-cg1-7.6.1.bin
The next time boot image version is: v7.6.1
The next running image is:  flash:/boot/aqnos-cg1-7.6.1.bin
boot information on slot2:
The current boot image version is: AQ-N3001-7.6.1
The current running image is:  flash:/boot/aqnos-cg1-7.6.1.bin
The next time boot image version is: v7.6.1
The next running image is:  flash:/boot/aqnos-cg1-7.6.1.bin
boot information on slot3:
The current boot image version is: AQ-N3001-7.6.1
The current running image is:  flash:/boot/aqnos-cg1-7.6.1.bin
The next time boot image version is: v7.6.1
The next running image is:  flash:/boot/aqnos-cg1-7.6.1.bin

Шаг 7: Перезагрузка Master-коммутатора

Switch(Master:1)# reload slot 1

Применение опции standby-prefer для стека из 4 и более коммутаторов

При перезагрузке текущего Master-коммутатора стека текущий Standby-коммутатор становится новым Master-коммутатором, а новым Standby-коммутатором становится Slave-коммутатор с наивысшим приоритетом. Так как после первой перезагрузки Master-коммутатор становится Slave-коммутатором с сохранением наивысшего приоритета, то при перезагрузке нового Master-коммутатора он станет Standby-коммутатором из-за своего приоритета. В результате четвёртый (и последующие) коммутатор никогда не получит роль Standby, а значит, не сможет стать Master и не будет обновлён.

Команда standby-prefer позволяет принудительно выбрать коммутатор, который при перезагрузке станет новым Standby-коммутатором, без учета приоритета, чтобы каждый коммутатор в стеке последовательно получил возможность стать Master-коммутатором и обновиться.

Шаг 8: Вход в режим Global Config

Switch(Master:1)# configure terminal

Шаг 9: Выбор коммутатора в слоте 4 следующим Standby-коммутатором

Switch(Master:1)(config)# stack standby-prefer slot 4
Switch(Master:1)(config)# end

Шаг 10: Сохранение конфигурации перед перезагрузкой

Switch(Master:1)# copy running-config startup-config

Шаг 11: Выход из режима ISSU

Для перевода стека из режима ISSU в стандартный режим работы выполните команду:

Switch(Master:1)(config)# no stack issu-mode