Назад | Перейти на главную страницу

Как боковая полоса IPMI разделяет порт Ethernet с хостом?

У нас есть несколько машин Supermicro с функциями IPMI / BMC. Некоторые из этих машин используют встроенный BMC, в то время как другие используют дополнительная карта.

Мы рассматриваем возможность использования боковой полосы из-за снижения затрат и требований к прокладке кабелей. Однако некоторые детали боковой полосы не совсем понятны.

Для боковой полосы требуется один кабель Ethernet, который вставляется в порт Ethernet на материнской плате. Затем этот сетевой порт используется совместно системой IPMI и операционной системой. Из того, что я прочитал в это руководство Supermicro, «Используйте тот же MAC-адрес, который вы используете для LAN1 для карты SIMSO IPMI». Однако IPMI должен иметь другой IP-адрес, чем операционная система.

Как можно иметь два устройства (операционная система и IPMI), которые могут прослушивать и передавать через один и тот же физический сетевой порт? Когда пакет поступает на интерфейс, как система определяет, предназначен ли этот пакет для операционной системы или для системы IPMI?

Обрабатываются ли эти пакеты ЦП с помощью прерываний ЦП? Может ли операционная система просматривать пакеты, поступающие на интерфейс IPMI?

Я управляю множеством серверов SuperMicro, используя встроенный IPMI. У меня есть отношения любви / ненависти к общему (так называемому боковому каналу) Ethernet. В общем, эти вещи работают так, что LAN1 имеет 2 (разных) MAC-адреса - один для интерфейса IPMI, другой - для стандартной сетевой карты Broadcom. Трафик к интерфейсу IPMI (уровень 2, основанный на MAC-адресе) волшебным образом перехватывается ниже уровня операционной системы и никогда не просматривается какой бы то ни было ОС.

Вы уже нашли для них один хороший момент: меньше кабелей. Теперь позвольте мне рассказать о некоторых недостатках:

  • Особенно сложно безопасно разделить интерфейс IPMI на отдельную подсеть. Поскольку весь трафик проходит по одному и тому же кабелю, вы (почти) всегда должны иметь интерфейс IPMI и интерфейс LAN1 в одной IP-подсети. На новейших материнских платах карты IPMI теперь поддерживают назначение VLAN сетевой карте IPMI, поэтому вы можете получить некоторое подобие разделения, но базовая ОС всегда может прослушивать трафик для этой VLAN. Старые контроллеры BMC вообще не позволяют изменять VLAN, хотя такие инструменты, как ipmitool или ipmicfg якобы позволят вам это изменить, но это просто не работает.
  • Вы централизуете свои точки отказа в системе. Выполняете настройку переключателя и каким-то образом можете отключиться? Поздравляем, вы отключили основное сетевое подключение к серверу И резервное копирование через IPMI. Сбой оборудования сетевой карты? Поздравляю, такая же проблема.
  • Ранние контроллеры BMC SuperMicro IPMI были печально известны тем, что делали нестандартные вещи с сетевым интерфейсом. Использование встроенного порта или выделенного порта IPMI часто определялось при включении питания (не перезапуске) и не переключалось оттуда. Если у вас отключилось электричество, и ваш коммутатор не обеспечил питание достаточно быстро, вы можете закончить тем, что IPMI не сможет работать, потому что он автоматически определил неправильную настройку.
  • У меня лично было много странных, необъяснимых проблем с подключением, чтобы IPMI боковой полосы работал надежно. Иногда я просто не мог пропинговать IP-адрес интерфейса в течение нескольких минут. Иногда я получал бурю пакетов в назначенной VLAN, но казалось, что весь трафик пропадает.

Хотя это не имеет ничего общего с выделением боковой полосы или выделением, я также отмечу, что инструменты для доступа к хост-системам написаны очень плохо. Старые карты IPMI не поддерживают ничего, кроме локальной аутентификации, что затрудняет смену пароля. Если вы используете функциональность KVM-over-IP, вы застряли в использовании неправильно подписанного Java-апплета с истекшим сроком действия или странного настольного приложения Java, которое работает только в Windows и требует для запуска повышения прав UAC. Я обнаружил, что ввод на клавиатуре в лучшем случае неравномерный, иногда «застревают» клавиши, так что невозможно ввести пароль для входа в систему, не попробовав 10 раз.

В конце концов мне удалось заставить 40+ систем работать с этой схемой. У меня в основном более новые системы, я могу подключить интерфейсы IPMI к отдельной подсети, и я в основном использую последовательную консоль через ipmitool, которая работает очень хорошо. Для следующего поколения серверов я ищу Технология Intel AMT с поддержкой KVM; поскольку он попадает в пространство сервера, я вижу замену IPMI этим.

Я не использовал эти карты раньше, те, которые я использовал, либо имеют другой MAC-адрес для трафика IPMI, либо порт предназначен только для трафика IPMI. Вполне возможно, что IPMI совместно использует сетевой адаптер, включая MAC.

IPMI будет отличаться от IP-адреса операционной системы, поэтому пакеты будут правильно направляться на основе этого. Трафик IPMI никогда не попадает в ЦП, он обрабатывается ИС управления боковой полосой.

Хотел добавить к общему совету, что использование боковой полосы означает, что вы не можете разговаривать с сервера с BMC. Кажется, что трафик отфильтрован. Я пробовал это на комплекте IBM / Dell / HP.

Я сделаю резервную копию последнего маркера natacados в его первоначальном ответе, ваши сеансы IPMI будут случайным образом истекать по таймауту (я использую IPMIView от supermicro, чтобы смотреть на консоль на своих ящиках). Такие вещи, как обновления прошивки и циклы включения, кажутся необъяснимыми и случайными.

Отличный ответ натакадо, невероятно обстоятельный.