IPMI: настройка и удаленное управление серверами Supermicro

Не так давно, мне удалось поработать с новыми для меня серверами Supermicro удаленное управление которыми осуществляется с помощью интерфейса IPMI . В данной статье я постараюсь раскрыть основные моменты в настройки IPMI на серверах Supermciro, покажу основные пункты меню интерфейса IPMI, а также расскажу о дополнительных утилитах, командах и способах мониторинга сервера с помощью ipmi.

IPMI (Intelligent Platform Management Interface) — интеллектуальный интерфейс управления платформой, предназначенный для автономного мониторинга и управления функциями, встроенными непосредственно в аппаратное и микропрограммное обеспечения серверных платформ. (информация взята с официального источника). IPMI реализуется в виде отдельного контроллера сервера, который не зависит от операционной системы, BIOS, CPU севера и позволяет удаленно управлять физическим оборудованием.

Первичная настройка IPMI консоли и знакомство с интерфейсом

Настройка IPMI начинается с настройки IP адреса интерфейса, который нужно указать в BIOS. Если сервер установлен в офисе, это может быть серый IP-адрес, если же ваше оборудование размещается в ДатаЦентре, то наверняка вы используете белый статический IP-адрес.

На серверах Supermicro в BIOS можно попасть, нажав кнопку “ Del ” при загрузке сервера, я не буду заострять на этом внимание и сразу перейду к интерфейсу самого BIOS.

настройка ip адреса ipmi на сервера supermicro

Как видите на скриншоте, я вошел в пункт меню IPMI и активировал возможность конфигурации Lan для интерфейса (Update IPMI Lan Configuration=Yes, Configuration Address Source = Static), указал IP-адрес, маску подсети и основной шлюз.

Применить настройки можно нажав кнопку F4 , после чего произойдет перезагрузка сервера.

Если вы все сделали правильно, то введя в браузере, указанный для интерфейса IPMI IP, у вас откроется авторизация:

supermicro ipmi login page

Теперь пройдем по основным моментам.

При покупке нового сервера, в IPMI уже создан пользователь ADMIN с паролем ADMIN , именно с этими данными мы и авторизуемся. Я всегда рекомендую создавать нового пользователя, а стандартного удалять или менять у него пароль, так оставлять такой логин и пароль, крайне небезопасно. Создать нового пользователя или поменять пароли/привилегии у текущих, можно в меню Configuration -> Users .

список пользвоателей ipmu и привелегий

Рестарт интерфейса IPMI можно сделать из меню Maintenance -> Unit Reset .

Монтирование iso образа ОС для установки на сервер выполняется в меню Virtual Media -> CD-ROM Image .

подключение iso образа в ipmi для установки хостовой операционной системы У меня iso образы ОС хранятся на сервере Samba в той же подсети что и интерфейсы IPMI серверов. Я указываю адрес сервера Samba, путь к образу установочному ISO с ОС, после чего монтирую ISO образ и приступаю к установке операционной системы.

Удаленную графическую Java консоль сервера ( KVM-over-IP ) можно открыть через Remote Control -> Console Redirection .

Консоль в целом удобная, но после установки ОС, для работы с сервером я обычно использую ssh клиенты. Иногда есть моменты когда, это невозможно, например если у вас не работает или еще не настроена сеть на сервере или же имеются какие-то проблемы с доступом. Именно тогда на помощь и приходит Remote Console.

KVM-over-IP - удаленная java консоль сервера через ipmi

Никаких отдельных настроек в самой консоли делать не нужно, хочу лишь добавить, что она имеет встроенную клавиатуру, которую можно вызывать из меню Virtual Media -> Virtual Keyboard .

клавиатура в ipmi консоли

Совет. После продолжительной работы с серверами SUpermicro, я обнаружил один неприятный баг. После установки операционной системы Centos 7 и установки KVM на нее, пропадает возможность использовать Remote Console. Пока сервер в процессе загрузки, консоль отвечает и можно пройти в Bios или увидеть загрузку ядра ОС. Но как только операционная система загрузилась, видео в консоли пропадает. Путем экспериментов мне удалось победить этот баг. Нужно в загрузки ядра добавить параметр загрузки nomodeset. Для этого после установки ОС нужно выполнить команду:

grubby --args "nomodeset" --update-kernel /boot/vmlinuz-`uname -r`

После этого, Remote Console работает исправно.

Управление сервером через утилиту IPMICFG от SuperMicro

Для управления серверами через IPMI компания SuperMicro разрабатывает собственную утилиту IPMICFG .

Скачать файл IPMICFG можно с помощью команды:

wget ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_1.30.0_build.190710.zip

На момент публикации файл был с таким названием, я рекомендую заходить на репозиторий SuperMicro по ссылке ftp://ftp.supermicro.com/utility/IPMICFG/ и копировать url актуального файла.

Распакуем скачанный файл в директорию которой находимся:

unzip IPMI*.zip

Далее создаем символическую ссылку для удобства запуска утилиты:

ln -s /root/IPMI*/Linux/64bit/IPMICFG-Linux.x86_64 /usr/local/sbin/ipmicfg

Теперь мы можем запускать утилиту с помощью команды ipmicfg (символической ссылки). Рассмотрим базовые возможности утилиты ipmicfg.

Если выполнить команду ipmicfg -help мы получим список всех возможных параметров утилиты.

утилита настройки ipmi от supermicro: ipmicfg -help

Разберем основные команды:

  • ipmicfg -help – полная справка по утилите;
  • ipmicfg -m – просмотр текущего IP и mac-адреса для IPMI;
  • ipmicfg -k — просмотр маски подсети;
  • ipmicfg -g – просмотр заданного шлюза;
  • ipmicfg -fd — сброс IPMI к заводским настройкам;
  • ipmicfg -user list – просмотр созданных пользователей и их привилегий.

Вы можете изменить IP адрес, маску и шлюз интерфейса IPMI:

  • ipmicfg -m 192.168.1.200
  • ipmicfg -k 255.255.255.0
  • ipmicfg -g 192.168.1.1

Создать нового пользователя IPMI и его пароль:

ipmicfg -user add <user id> <name> <password> <privilege>

С помощью утилиты делаем следующее:

ipmicfg -user add 6 test 123456 4

Тем самым мы создали пользователя test с паролем 123456 и привилегиями администратора.

Список пользователей IPMI и их привилегии в системе можно вывести командами:

  • ipmicfg -user list
  • ipmicfg -user help

ipmicfg -user list - вывести список пользователей ipmi и права

Как уже видите на скриншоте, пользователь test создан.

Чтобы изменит (сбросить) пароль пользователя IPMI, исползайте команду:

ipmicfg -user setpwd

И приведу еще пару примеров использование данной утилиты:

  • ipmicfg -hostname [value] — задать hostname для ipmi интерфейса;
  • ipmicfg -r — перезагрузка IPMI.

Мониторинг железа на сервере SuperMicro через IPMI и утилиту IPMICFG

Мониторинг сервера SuperMicro через IPMI

Через IPMI мониторить температуру и работу железа сервера SuperMicro довольно просто. Полная информация о железе сервера содержится в пункте System -> Hardware Information.

железо сервера supermicro через ipmi

Информацию по состоянию процессора, оперативной памяти и вентиляторах, можно посмотреть перейдя во вкладку Server Health -> Sensor Readings.

состояние сенсоров на сервере supermicro

Для удобства просмотра, можно менять категории отображения датчиков, например, температуры:

датчики температуры

Или датчики напряжения:

датчики напряжения

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

Мониторинг с помощью утилиты ipmicfg

Проверка состояния блоков питания:

[root@ ~]# ipmicfg -pminfo

[SlaveAddress = 78h] [Module 1]_x000D_Item | Value_x000D_---- | -----_x000D_Status | [STATUS OK] (00h)_x000D_Input Voltage | 217.5 V_x000D_Input Current | 1.06 A_x000D_Main Output Voltage | 12.28 V_x000D_Main Output Current | 17.93 A_x000D_Temperature 1 | 23C/73F_x000D_Temperature 2 | 21C/70F_x000D_Fan 1 | 2064 RPM_x000D_Fan 2 | 2032 RPM_x000D_Main Output Power | 220 W_x000D_Input Power | 228 W_x000D_PMBus Revision | 0x22_x000D_PWS Serial Number | P2K4FCH02LT0125_x000D_PWS Module Number | PWS-2K04F-1R_x000D_PWS Revision | REV1.0_x000D_Current Sharing Control | PEC error_x000D_[SlaveAddress = 7Ah] [Module 2]_x000D_Item | Value_x000D_---- | -----_x000D_Status | [STATUS OK] (00h)_x000D_Input Voltage | 217.5 V_x000D_Input Current | 1.09 A_x000D_Main Output Voltage | 12.30 V_x000D_Main Output Current | 18.09 A_x000D_Temperature 1 | 24C/75F_x000D_Temperature 2 | 22C/72F_x000D_Fan 1 | 2064 RPM_x000D_Fan 2 | 2064 RPM_x000D_Main Output Power | 223 W_x000D_Input Power | 234 W_x000D_PMBus Revision | 0x22_x000D_PWS Serial Number | P2K4FCH02LT0126_x000D_PWS Module Number | PWS-2K04F-1R_x000D_PWS Revision | REV1.0_x000D_Current Sharing Control | PEC error_x000D_

ipmicfg -pminfo - проверка состояния блоков питания

Посмотреть температуру процессора можно командой:

ipmicfg -nm oemgettemp

ipmicfg -nm oemgettemp - температура процессора

Так же можно проверить в каком режиме работают вентиляторы и изменить режим, если это необходимо.

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

[root@~]# ipmicfg -fan

Current Fan Speed Mode is [ PUE2 Optimal Mode ]_x000D_Supported Fan modes:_x000D_0:Standard_x000D_1:Full_x000D_3:PUE2 Optimal_x000D_4:Heavy IO

ipmicfg -fan - состояние вентилятора

Изменение режима работы кулера: ipmicfg -fan <mode> Например, ipmicfg -fan 3

Информация о версии и прошивке IPMI:

[root@~]# ipmicfg -nm deviceid

Device ID = 50h_x000D_Firmware Version = 4.1.4.54_x000D_IPMI Version = 2.000000_x000D_Manufacturer ID = 57 01 00_x000D_Product ID Minor Ver = Greenlow platform_x000D_Implemented DCMI version = DCMI not implemented/enabled_x000D_Firmware implemented version = NM Revision 4.0_x000D_Image Flag = operational image 1_x000D_raw = 50 01 04 14 02 21 57 01 00 09 0b 04 05 40 01

ipmicfg -nm deviceid версия и прошивка ipmi

И посмотреть все сенсоры можно командой ipmicfg -sdr

ipmicfg -sdr все сенсоры на сервере supermicro

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

Так же существует еще не малое количество утилит, которые можно использовать для мониторинга и автоматизировать этот процесс, например, с nagios. В данный момент заострять на этом внимание мы не будем, так как цель статьи рассказать основные моменты в работе с IPMI. Если вас заинтересует тема мониторинга, вы можете оставить свои пожелания и возможно в дальнейшем мы осветим и эту тему. Надеюсь, данная статья окажется для вас полезной!

EnglishRussianUkrainian