Cуперкомпьютеры: администрирование - страница 15



>State – состояние канального уровня передачи данных. >Active – состояние нормального функционирования, возможна передача любых типов данных. >Down – передача данных невозможна (физический уровень ещё не перешёл в состояние >LinkUp). >Initialize – состояние, в которое канальный уровень переходит сразу после того, как физический уровень перешёл в состояние >LinkUp. В этом состоянии возможны приём и передача только пакетов управления подсетью (SMP, Subnet Management Packets). В этом состоянии менеджер подсети должен настроить порт (задать LID и прочие параметры) и перевести порт в состояние >Active. Есть и другие состояния, но порт не должен находиться в них долгое время, поэтому мы опустим их описания.

>Capability mask – набор флагов, описывающих поддерживаемые портом режимы работы (скорости и т. п.).

Команда >ibstatus также выводит информацию обо всех портах, но немного в другом формате, и выдаёт частично отличающийся набор данных:



Обратите внимание, что информация о базовом LID и LID менеджера подсети дана в шестнадцатеричном виде. Более подробно дана информация о скорости, на которой работает порт. Ещё добавлена строка >default gid, в которой указан GID для данного порта.

Иногда нужно узнать, какой машине назначен конкретный LID. Для этого можно применить утилиту >smpquery. Вообще эта утилита предназначена для посылки пакетов управления подсетью SMP (Subnet Management Packet) и выдачи ответов в понятной человеку форме. В нашем случае нам нужен запрос описания узла (node description). Вот пример выдачи команды >smpquery nodedesc 914 (запрос описания узла с LID >914):



Узел ответил, что LID >914 назначен адаптеру HCA-1 вычислительного узла с именем >n51001.

При помощи >smpquery доступна информация о том узле, которому адресован запрос. В то же время менеджер подсети имеет информацию обо всех узлах подсети. Запросить информацию у менеджера подсети можно при помощи утилиты >saquery. Информацию об узле подсети с LID >914 можно запросить командой >saquery 914. Вот пример выдачи такой команды:



В последней строке указано описание узла, включающее имя хоста. Также приводится дополнительная информация. Ещё раз обращаем внимание, что команда >smpdump позволяет запрашивать информацию об узле в сети InfiniBand у самого этого узла, а команда >saquery – у менеджера подсети. Если результаты этих запросов различаются или если команда >saquery выдаёт ошибку – это свидетельство того, что имеются проблемы с менеджером подсети. Ещё две полезные утилиты при диагностике сетей InfiniBand – утилиты >ibnetdiscover и >ibdiagnet. Утилита >ibnetdiscover пытается обнаружить все компоненты подсети: конечные узлы, коммутаторы, маршрутизаторы и связи между ними, и выводит информацию обо всех найденных компонентах. Утилита >ibdiagnet также пытается найти все компоненты подсети, но кроме этого она ещё и пытается обнаружить ошибки в конфигурации подсети, такие как совпадающие GUID, скорости портов и т. п.

Мы не будем приводить примеры выдачи этих утилит, так как они достаточно объёмны, а для >ibdiagnet ещё и состоят из нескольких файлов. Мы упоминаем эти утилиты, чтобы иметь представление, какие средства можно использовать при диагностике проблем с сетью InfiniBand.

Утилиты, которые посылают информацию в сеть, имеют ключи для выбора адаптера и порта, с которым следует работать (напомним, что в разных подсетях один и тот же LID может относиться к разным устройствам). Ключ