PowerScale. Преобразование InfiniBand в Ethernet может привести к неправильной конфигурации агрегации каналов
Summary: В этой статье описано, как устранить проблему, возникающую во время внутреннего преобразования InfiniBand в Ethernet кластера для OneFS версии до 9.1.0.0.
Symptoms
Версии OneFS до 9.1 и преобразование кластера из InfiniBand во внутреннюю часть Ethernet может привести к неправильно настроенным агрегированным портам. Перезагрузка узла приведет к созданию плохой статистической функции и разделению узла.
Неправильно настроенные для агрегирования интерфейсы Mellanox (mlxen) могут привести к сбою повторного присоединения узла к кластеру. При просмотре ifconfig с узла отображаются внутренние интерфейсы ISI, сопоставленные с lagg0.
Isilon-18# ifconfig bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=8009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,LINKSTATE> ether 00:60:16:cc:bb:aa inet 192.168.60.10 netmask 0xffffff80 broadcast 192.168.60.127 zone 1 nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> media: Ethernet autoselect (1000baseT <full-duplex,master>) status: active mlxen0: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,ISIINTERNAL> metric 0 mtu 1500 options=ed07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> ether 98:03:9b:cc:bb:aa inet 128.221.252.18 netmask 0xffffff00 broadcast 128.221.252.255 zone 1 inet 128.221.254.18 netmask 0xffffff00 broadcast 128.221.254.255 zone 1 nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> media: Ethernet autoselect (40Gbase-CR4 <full-duplex,rxpause,txpause>) status: active mlxen1: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,ISIINTERNAL> metric 0 mtu 1500 options=ed07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> ether 98:03:9b:cc:bb:aa inet 128.221.253.18 netmask 0xffffff00 broadcast 128.221.253.255 zone 1 inet 128.221.254.18 netmask 0xffffff00 broadcast 128.221.254.255 zone 1 nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> media: Ethernet autoselect (40Gbase-CR4 <full-duplex,rxpause,txpause>) status: active mlxen2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=ed07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> ether 98:03:9b:cc:bb:fa nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> media: Ethernet autoselect (10Gbase-CX4 <full-duplex,rxpause,txpause>) status: active mlxen3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=ed07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> ether 98:03:9b:cc:bb:fb nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> media: Ethernet autoselect (10Gbase-CX4 <full-duplex,rxpause,txpause>) status: active lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=ed07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWFILTER,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> ether 98:03:9b:cc:bb:aa nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> media: Ethernet autoselect status: active groups: lagg laggproto lacp lagghash l2,l3,l4 laggport: mlxen0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> laggport: mlxen1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> vlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=303<RXCSUM,TXCSUM,TSO4,TSO6> ether 98:03:9b:cc:bb:aa inet 10.10.20.11 netmask 0xffffff00 broadcast 10.10.20.255 zone 18 nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> media: Ethernet autoselect status: active vlan: 100 vlanpcp: 0 parent interface: lagg0 groups: vlan
Cause
При преобразовании из Infiniband в Ethernet имена интерфейсов изменяются с ib0 на mlxen0 (int-a) и ib1 на mlxen1 (int-b). Создатель задержки ссылается на «mlxen0» и «mlxen1» как на порты внешнего сетевого интерфейса. В случае возникновения проблемы (т.е. не были приняты превентивные меры) необходимо исправить сопоставление в FlexNet (управляющая программа управления сетью).
Resolution
Перед переносом:
Эта проблема устранена в OneFS 9.1 и более поздних версиях. Если вы используете затронутую версию, выполните следующие действия перед миграцией с InfiniBand на Ethernet.
- Удалите все агрегированные интерфейсы из всех сетевых пулов.
- Завершите перенос.
- Повторно добавьте все агрегированные интерфейсы во все необходимые сетевые пулы.
После переноса:
Если возникла проблема и произошло разделение узла, выполните одно из следующих действий (автоматически или вручную), чтобы обойти проблему.
Автоматическое разрешение (временное решение)
========================================================
-
Создайте резервную копию файла «lni»:
mv /etc/mcp/sys/lni.xml /etc/mcp/sys/lni.xml.bak
-
Удалите затронутый интерфейс узла из сетевого пула.
isi network pools modify <groupnet.subnet.pool> --remove-ifaces=<interface example: 2:40gige-agg-1>
-
Выполните следующую команду, чтобы восстановить файл lni.xml узла:
isi_create_lni_xml
-
Перезагрузите узел.
-
Убедитесь в правильности интерфейса.
-
Перейдите к последнему шагу настройки MTU 9000. После этого снова добавьте затронутый интерфейс узла в пул.
isi network pools modify <groupnet.subnet.pool> --add-ifaces=<interface example: 2:40gige-agg-1>
Ручное решение (временное решение)
========================================================
Чтобы решить эту проблему, приложение laggports необходимо удалить вручную, выполнив следующие действия.
-
Используйте последовательное подключение к затронутому узлу.
-
Отключите «mcp» на затронутом узле.
killall -9 isi_mcp
-
Отключите «isi_flexnet_d» на затронутом узле.
killall -9 isi_flexnet_d
-
Создайте резервную копию обоих файлов «flx_config.xml» в локальном каталоге.
-
mv /etc/ifs/flexnet/flx_config.xml /etc/ifs/flexnet/flx_config.xml.bak
-
mv /etc/ifs/flexnet/flx_config.xml~ /etc/ifs/flexnet/flx_config.xml~.bak
-
-
При наличии каких-либо VLAN, связанных с агрегированным портом, отключите их.
ifconfig <vlan interface> down
ПРИМЕР
ifconfig vlan0 down
-
Удалите laggports из интерфейса lag.
ifconfig <lag interface> -laggport <mlx iface>
ПРИМЕРЫ
ifconfig lagg0 -laggport mlxen0
ifconfig lagg0 -laggport mlxen1
-
Отключите интерфейс задержки.
ifconfig <lag iface> down
ПРИМЕР
ifconfig lagg0 down
-
Теперь, когда внутренний интерфейс отсоединен от порта задержки, проверьте связь с любым другим узлом с помощью «int-a» И «int-b».
ping <back-end IP [int-a]>
ping <back-end IP [int-b]>
-
Убедитесь, что узел больше не работает.
isi status -q
-
Чтобы обновить все процессы, перезагрузите узел.