Раздел помощи SpaceWeb

Что такое IPMI и зачем он нужен

07 авг, 2024

Что такое IPMI

IPMI (Intelligent Platform Management Interface) – это стандартный интерфейс, который разработан для управления и мониторинга серверов независимо от их состояния. Он обеспечивает удаленный доступ к серверу, позволяя администраторам выполнять широкий спектр задач по управлению и диагностике. Его использование существенно повышает надежность и управляемость серверной инфраструктуры.

Основные компоненты IPMI

В основе IPMI лежит несколько ключевых компонентов:

  • BMC (Baseboard Management Controller) – это центральный компонент IPMI. Он представляет собой микроконтроллер, который встроен в материнскую плату сервера. BMC отвечает за управление и мониторинг аппаратного обеспечения: собирает данные с сенсоров, обрабатывает их и предоставляет доступ к этой информации администраторам. Он функционирует независимо от основной операционной системы, что позволяет выполнять операции даже в случае ее отказа.
  • Сетевой интерфейс обеспечивает удаленный доступ к BMC через выделенный или общий сетевой порт. Благодаря этому администраторы могут подключаться к серверу через IP-сеть. Он поддерживает различные протоколы и методы аутентификации, таким образом обеспечивая безопасный доступ к функциям IPMI.
  • Сенсоры и контроллеры – ещё одни важные компоненты IPMI. Серверы оснащены различными сенсорами, которые измеряют параметры системы: температуру процессоров, напряжение питания, скорость вращения вентиляторов и другие критически важные показатели. Они подключены к BMC, который собирает и обрабатывает данные, предоставляя их администраторам. А контроллеры могут управлять компонентами сервера: вентиляторами и блоками питания, в зависимости от собранных данных и установленных политик.

Чем отличаются IPMI у разных производителей

Модуль удаленного управления сервером IPMI – это стандарт для управления и мониторинга серверного оборудования. Однако различные производители добавляют свои уникальные функции и улучшения, чтобы сделать свои IPMI-реализации более мощными и удобными. 

Рассмотрим особенности IPMI у основных производителей серверов:

Производитель

Название технологии

Особенности

Dell

iDRAC (Integrated Dell Remote Access Controller)

Расширенные функции управления, поддержка виртуальных носителей, автоматическое обновление

HP

iLO (Integrated Lights-Out)

Поддержка сценариев для автоматизации, интуитивно понятный веб-интерфейс, возможность интеграции с HPE OneView

Supermicro

IPMIView

Поддержка многих платформ, расширенные возможности для мониторинга, поддержка KVM

Cisco

CIMC (Cisco Integrated Management Controller)

Интеграция с UCS Manager, поддержка политики управления, высокоуровневая безопасность

Lenovo

XClarity Controller

Интеграция с Lenovo XClarity Administrator, поддержка мобильного приложения для управления, расширенная аналитика

Intel

Intel RMM (Remote Management Module)

Высокая степень интеграции с платформами Intel, поддержка сценариев безопасности, гибкость в настройке

ASUS

ASMB (ASUS Server Management Board)

Простота в использовании, поддержка мобильного управления, интеграция с ASUS Control Center

Fujitsu

iRMC (Integrated Remote Management Controller)

Поддержка интерактивных функций, гибкость в управлении, интуитивный интерфейс

IBM

IMM (Integrated Management Module)

Глубокая интеграция с IBM System Director, поддержка динамического перераспределения ресурсов, расширенные функции безопасности

Возможности IPMI

IPMI предоставляет широкий спектр возможностей для удаленного управления и мониторинга серверов, включая:

Мониторинг и диагностика состояния системы

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

Журналирование и уведомления. 

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

Удаленное управление питанием

Одна из наиболее важных функций IPMI – это возможность управлять питанием сервера дистанционно. Администраторы могут включать, выключать и перезагружать сервер. Это может быть полезно в разных сценариях, например, если необходимо провести техническое обслуживание без физического доступа к оборудованию.

Консольный доступ

IPMI предоставляет доступ к консоли сервера, позволяя администратору видеть и взаимодействовать с экраном сервера так, как если бы он находился непосредственно перед ним. 

Обновление прошивки и управление конфигурациями

IPMI поддерживает удаленное обновление прошивки BMC и других компонентов сервера. Благодаря этому можно поддерживать оборудование в актуальном состоянии, даже находясь далеко от физического сервера. Также через IPMI можно управлять и изменять конфигурации системы – это упрощает процесс настройки и развертывания серверов.

Поддержка виртуальных носителей

С помощью IPMI можно подключать виртуальные носители к серверу, а значит, устанавливать операционные системы или загружать утилиты для диагностики и восстановления системы удаленно. 

IPMI-команды

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

  • NetFn (Network Function) указывает, к какому кластеру относится конкретная команда, что помогает систематизировать и управлять различными функциями IPMI.
  • Request/Response Identifier используется, чтобы отличить запросы и ответы. 
  • Requester’s/Responder’s ID идентифицирует источник сообщения или адресата команды, помогая системе точно направлять команды к нужным получателям.
  • Command определяет конкретную операцию или задачу, которая должна быть выполнена. Каждая команда уникальна и выполняет определенную функцию в управлении сервером.
  • Data используется для передачи необходимых данных в запросе или для получения дополнительной информации в ответе. 

После выполнения команды всегда возвращается код завершения (Completion Code). Он предоставляет информацию о результате выполнения команды. Если во время выполнения команды появилась ошибка, код завершения будет равен нулю.

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

  • IPMB (Intelligent Platform Management Bus) – это шина, которая связывает различные компоненты системы управления.
  • Системный интерфейс обеспечивает взаимодействие между BMC и остальными компонентами системы через внутренние шины сервера.
  • Serial Interface и LAN – эти интерфейсы позволяют удаленно управлять сервером, обеспечивая связь между BMC и удаленными администраторами через последовательный порт или локальную сеть.

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

Основные IPMI-команды

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

Команда

Описание

ipmitool -I lanplus -H server.example.ru -P password chassis power on

Включает сервер.

ipmitool -I lanplus -H server.example.ru -P password chassis power off

Выключает сервер.

ipmitool -I lanplus -H server.example.ru -P password chassis status

Проверяет текущее состояние сервера.

ipmitool -I lanplus -H server.example.ru -P password chassis power cycle

Перезагружает сервер (включает и сразу выключает).

ipmitool -I lanplus -H server.example.ru -P password sol activate

Активирует системную консоль SOL (Serial Over LAN).

ipmitool -I lanplus -H server.example.ru -P password sol deactivate

Деактивирует системную консоль SOL (Serial Over LAN).

ipmitool -I lanplus -H server.example.ru -P password sel list

Показывает список записей в журнале событий.

ipmitool -I lanplus -H server.example.ru -P password sdr list

Выводит информацию о состоянии всех датчиков.

ipmitool -I lanplus -H server.example.ru -P password sol set retry-interval значение

Устанавливает интервал повторных попыток для SOL в миллисекундах.

ipmitool -I lanplus -H server.example.ru -P password fru print

Выводит информацию о модуле FRU (Field Replaceable Unit).

ipmitool -I lanplus -H server.example.ru -P password user list

Показывает список пользователей IPMI.

Вы можете изменить следующие значения на свои:

  • «server.example.ru» – имя хоста;
  • «password» – пароль для доступа к IPMI;
  • «значение» – значение интервала повтора для SOL в миллисекундах.

Примеры применения 

Рассмотрим конкретные ситуации, в которых IPMI может оказаться незаменимым.

  1. Восстановление сервера после сбоя операционной системы

На сервере произошел критический сбой операционной системы, и он перестал отвечать на запросы? Администратор может использовать команды IPMI, чтобы провести корректную перезагрузку сервера.

  1. Мониторинг температуры и предотвращение перегрева

В дата-центре повысилась температура, что может привести к перегреву серверов и выходу из строя критически важных компонентов? С помощью IPMI администратор может получить данные с температурных сенсоров. Если обнаружится превышение допустимых значений, он может вовремя среагировать на проблему: например, увеличить скорость вращения вентиляторов или перенаправить нагрузку на другие сервера.

  1. Удаленное обновление прошивки

Требуется обновить прошивку BMC на нескольких серверах в удаленном филиале? Администратор может использовать IPMI для загрузки и установки новой прошивки удаленно. 

  1. Управление пользователями и безопасностью

Необходимо создать нового пользователя для IPMI доступа или изменить пароль существующего пользователя для повышения безопасности? С помощью IPMI-команд администратор может управлять учетными записями пользователей, устанавливать или менять пароли.

  1. Диагностика и устранение неполадок

Сервер перестал работать корректно, и требуется провести диагностику, чтобы определить причину проблемы? Администратор может просмотреть журналы системных событий и данные сенсоров, чтобы быстро определить источник проблемы и принять необходимые меры для ее устранения.

Таким образом, IPMI помогает минимизировать время простоя и оперативно отреагировать на возникающие проблемы.

Как подключиться к IPMI

Чтобы выполнить подключение к IPMI, необходимо выполнить несколько шагов. 

Физическое подключение

Первый шаг – это физическое подключение к IPMI-интерфейсу:

  1. На задней панели сервера вы найдете несколько портов RJ-45, количество которых зависит от конфигурации сетевой карты. Найдите порт «IPMI lan». На серверах SuperMicro он часто расположен выше портов USB и может находиться слева, рядом с COM-портом.
  2. Вставьте сетевой кабель (патч-корд) в порт IPMI. Если индикаторы на порту загорелись, это означает, что физическое соединение установлено и данные пакеты начали передаваться. Если индикаторы не загорелись, проверьте соединение и кабель. 

Аппаратное подключение и настройка IPMI

После физического подключения необходимо настроить сетевые параметры IPMI в BIOS сервера. Перезагрузите сервер и войдите в BIOS, нажав соответствующую клавишу (например, Del или F2) во время загрузки.

Перейдите в раздел BMC Network Configuration. Здесь можно задать IP-адрес для IPMI-интерфейса. У вас есть два варианта:

  • Введите статический IP-адрес, который будет использоваться для доступа к IPMI. Убедитесь, что этот адрес уникален в вашей сети и не конфликтует с другими устройствами. Также настройте маску подсети и шлюз, чтобы обеспечить правильную маршрутизацию.
  • Выберите получение IP-адреса через DHCP. В этом случае BMC автоматически получит IP-адрес от DHCP-сервера, но вам нужно будет перезагрузить сервер, чтобы увидеть назначенный адрес. Этот подход удобен в динамических сетях, но важно иметь доступ к серверу DHCP для проверки назначенного IP-адреса.

Сохраните настройки в BIOS и перезагрузите сервер. Убедитесь, что все изменения применились корректно, чтобы избежать проблем с доступом. Рекомендуется записать IP-адрес и другие сетевые настройки для дальнейшего использования.

Доступ к IPMI через браузер

После настройки IP-адреса в BIOS вы можете получить доступ к IPMI через веб-интерфейс.

  1. Откройте веб-браузер и введите IP-адрес, который вы настроили в BIOS. Браузер должен быть подключен к той же сети, что и сервер.
  2. Введите логин и пароль для доступа к IPMI. По умолчанию учетные данные могут быть ADMIN и ADMIN (в верхнем регистре), но это небезопасно. Поэтому после первого входа обязательно измените эти данные.

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

Почему IPMI может стать недоступен

Рассмотрим основные причины, по которым IPMI может перестать работать.

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

Программные и аппаратные сбои также могут сделать IPMI недоступным. В том числе из-за сбоя BMC, ошибок прошивки и перегрузки системы.

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

Что делать, если не работает IPMI

Решение проблемы может зависеть от того, что именно у вас произошло. Ниже мы привели несколько ошибок и способы их устранения:

Проблема с отображением консоли IPMI 

Если при подключении к консоли IPMI вы видите черный экран, попробуйте следующие шаги:

  1. Нажмите любую клавишу на физической или виртуальной клавиатуре. Это может пробудить консоль из режима ожидания. Если вы пользователь серверов на базе Ubuntu, нажмите комбинацию клавиш Ctrl+Alt+F1. Это переключит вас на первый виртуальный терминал, что может восстановить отображение консоли.
  2. Если первый шаг не помог, попробуйте перезагрузить IPMI. Для этого подключитесь к серверу по SSH под учетной записью root и выполните команду:
ipmicfg -r

или

ipmitool bmc reset cold

Для серверов под управлением Windows Server подключитесь под учетной записью администратора и в командной строке выполните команду:

ipmicfg-win.exe -r

  1. В консоли IPMI нажмите на три точки в правом верхнем углу и выберите пункт «Обновить окно IPMI». Это может помочь восстановить отображение консоли.

Ошибка «Connection failed»

Если, пытаясь подключиться к IPMI, вы столкнулись с ошибкой «Connection failed», попробуйте:

  1. Сбросить IPMI. В консоли IPMI нажмите на три точки в правом верхнем углу и выберите пункт «Перезагрузка управления IPMI». 
  2. Выполнить полную перезагрузку IPMI. Если «мягкая» перезагрузка не помогла, выберите пункт «Полная перезагрузка IPMI» в том же меню. На это может уйти около пяти минут, но зачастую это решает проблему с подключением.

Проблемы с клавиатурой в консоли IPMI

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

  1. В консоли IPMI нажмите на три точки в правом верхнем углу и выберите пункт «Перезагрузка управления IPMI». 
  2. Если предыдущий шаг не помог, выберите пункт «Полная перезагрузка IPMI». Перезагрузка займет несколько минут, но она может решить проблему с клавиатурой.
  3. Если после перезагрузки проблема не исчезла, включите виртуальную клавиатуру. Для этого откройте меню «Virtual Media» и выберите пункт «Virtual Keyboard». Виртуальная клавиатура позволяет выполнять необходимые действия даже при проблемах с физической клавиатурой.
  4. Вернуть работу клавиатуры и мыши можно через меню «Options». Выберите пункт «Keyboard Mouse Hotplug», чтобы переподключить устройства ввода.

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

  • регулярно проверять и обновлять прошивку BMC;
  • настроить и протестировать сетевые параметры IPMI, чтобы убедиться в их корректности;
  • использовать качественное сетевое оборудование и кабели;
  • настроить и проверить сетевую защиту, чтобы она не блокировала доступ к IPMI;
  • обеспечить резервное электропитание и мониторинг состояния блоков питания.

Заключение 

В этом руководстве мы познакомили вас с IPMI – инструментом для удаленного управления и мониторинга серверного оборудования. Мы рассмотрели основные компоненты, процесс подключения и настройки IPMI. 

Он помогает администраторам быстро реагировать на возникающие проблемы, выполнять обновления и диагностику, а также управлять серверами, даже если операционная система недоступна. Благодаря этому IPMI стал незаменимым инструментом для поддержания стабильной работы серверов в современных дата-центрах.