Что такое IPMI?

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

Что Такое Ipmi  (1)

Немного истории

Технологию удаленного доступа разработали и внедрили видные изготовители серверных решений: Intel, Dell, Hewlett-Packard и NEC. Цель — выполнять операции на устройствах, расположенных в разных сооружениях и даже в другой части света.

Первая технология появилась в 1998 году. В ней подключались к модулю по RS-232, последовательному интерфейсу. В новых версиях, например, integrated IPMI 2.0, используется стандартный сетевой интерфейс, исправлены недочеты, добавлены новые функции.

Обратите внимание, что тандарт распространяется на интерфейс. Поэтому у разных производителей — свои устройства, оборудование и микроконтроллеры, поддерживающие технологию.

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

Сейчас используют контроллеры BMC, интегрированные в серверные материнские платы. Они базируются на технологии SoC, которая подразумевает:

  • продуктивную коммуникацию с объектами управления;
  • наличие утилит для удаленного мониторинга;
  • событийные журналы;
  • оповещение через почту или по стандартному интернет-протоколу SNMP.

Все ли технологии одинаковы

Компании создают оборудование на базе спецификаций, варьируя тонкости технологии и выбор сервис-процессоров. Например, у IPMI Dell — это iDRAC, а у Lenovo — IMM. Их функциональные возможности приблизительно равны, а основа — интерфейс IPMI.

Таблица соответствий технологий на основе IPMI и производителей.

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

Технология на основе IPMI

DELL

iDRAC (Integrated Dell Remote Access Controller)

HP

iLO (Integrated Lights-Out)

Supermicro

SIM (Supermicro Intelligent Management)

Lenovo

IMM (Integrated Management Module)

IBM

IMM (Integrated Management Module)

Cisco

IMC (Integrated Management Controller)

Технологии могут отличаться:

  • визуалом;
  • возможностью использования PCI-Express, чтобы подключиться к ПК;
  • набором утилит для возобновления работы;
  • статистикой;
  • показателями состояния устройств.

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

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

Где расположен порт IPMI

Подключиться к локальной сети вы можете через порт RJ-45. Его обозначение — IPMI lan.

На серверах компании SuperMicro, например, IPMI port чаще всего размещен выше портов USB.

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

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

Смотрим на заднюю панель вашей IPMI board. Здесь вы увидите несколько портов RJ45, их количество зависит от типа сетевой карты. Вам нужно найти одиноко стоящий порт RJ45 lan, как правило, слева, рядом с com-портом. Когда порт найден, подключаем туда патч-корд. Лампочки загорелись — значит, пакеты пошли.

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

  • Заходим в BIOS, ищем вкладку BMC NetWork Configuration.
  • Настраиваем IP-адрес в BIOS.

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

Можно использовать динамический адрес (DHCP), полученный BMC. Тогда вам придется перезагрузиться, чтобы увидеть назначенный IP-адрес.

  • Сохраняем изменения и перезагружаем систему.

Вбиваем в браузере тот же IP, что указывали в BIOS, затем вводим логин и пароль. Иногда эти данные указаны непосредственно на оборудовании.

Внимание. Стандартные атрибуты для входа в IPMI — ADMIN и ADMIN, введенные в верхнем регистре. Вы сами понимаете, что оставлять учетные данные в таком виде крайне опасно. Поэтому создайте нового пользователя, а стандартного удалите или поменяйте пароль на надежный.

Возможности платформы

Вы будете управлять удаленными машинами напрямую, без привлечения ОС, установленной на сервере:

  • включать/выключать электропитание и перезагружать сервер;
  • делать аппаратный сброс;
  • устанавливать серверные ОС и ПО с помощью виртуальных носителей;
  • управлять ОС, используя стандартные устройства ввода/вывода;
  • руководить аккаунтами и устанавливать права пользователей, используя протокол доступа к каталогам LDAP и службу каталогов Active Directory;
  • менять настройки BIOS;
  • перепрошивать BIOS контроллеров и серверов;
  • устанавливать сертификаты и передавать информацию по защищенному протоколу;
  • настраивать уведомления;
  • следить за температурой и напряжением;
  • контролировать систему охлаждения;
  • управлять периферией и портами;
  • анализировать журнал событий;
  • мониторить состояние техники.

Статистика по железу с Zabbix IPMI

Для отслеживания доступности, производительности и загруженности серверов удобно применять внешнее ПО. Если вам нужна статистика не только по ОС, но и по железу, ее можно получить благодаря содружеству Zabbix с IPMI.

Можно отслеживать перепады температуры, напряжения, наблюдать за скоростью вращения кулеров и за многим другим, если конфигурация сервера поддерживает эту технологию. Хост настраивается на обработку проверок: добавляются интерфейс, IP и номер порта.

Zabbix не генерирует процессы опроса хостов (поллеры) по умолчанию. Чтобы изменить ситуацию, вам понадобится открыть файл конфигурации zabbix_server.conf и откорректировать его.

Для этого войдите с правами Root (учетная запись главного администратора), перейдите на строку StartIPMIPollers, затем проставьте в ней количество поллеров, например:

# StartIPMIPollers=5

После сохранения файла конфигурации перезапустите сервер.

Чтобы настроить узел сети:

  • укажите IP-адрес и номер порта;
  • выберите IPMI-агента;
  • введите id или name датчика;
  • пропишите уникальный ключ;
  • укажите тип информации, единицы измерения, а также другие характеристики данных.

Примечание. Чтобы идентифицировать нужный Zabbix датчик, включите сервер с параметром DebugLevel=4. Спустя несколько минут отобразится журнал сервера. В нем вы увидите найденные датчики. Чтобы расшифровать их типы и возможные состояния, вам понадобиться скачать с сайта-производителя описание спецификаций технологии IPMI для нужной версии.

Что входит во все IPMI

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

Контроллеры управления в IPMI

Controller содержит встроенные процедуры и сетевой интерфейс.

Микроконтроллер BMC

Это основа системы. IPMI module BMC может быть впаян в плату или подсоединен к ней через шину PCI.

BMC — система со своим графическим ядром. Благодаря ему можно обращаться к серверному железу и коммуницировать с ним через удаленный интерфейс.

Этот микроконтроллер регулирует мощность, температуру и прочие показатели всей конфигурации. Он служит таймером, по которому перезапускается центральный процессор, если система сбоит.

Достоинство центрального контроллера — независимость от ОС сервера. Еще один плюс — состояние сервера не влияет на функциональность BMC. Он всегда работоспособен, так как для питания используется дежурное напряжение блока питания. Контроллер заработает, как только на вход блока поступит 220V, и ему все равно — включен сервер или нет.

Дополнительные контроллеры

Обозначение — MCs. Их подключают с целью расширить стандартные средства управления.

Справка. MCs мониторят различные устройства: периферию, запасные источники питания, системы с RAID. Этим они отличаются от BMC, который контролирует всю систему.

Дополнительные контроллеры идут как несколько отдельных плат, а центральный модуль BMC — всего один.

MCs взаимодействуют с центральным контроллером через интерфейс IPMB. С помощью этой шины BMC переадресует:

  • коммуникации с MCs;
  • обращения к энергонезависимому хранилищу;
  • считывания сенсорных данных.

Чтобы получить доступ к сенсорным данным, удаленный администратор сначала посылает команду центральному контроллеру, а тот потом взаимодействует с сенсорами.

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

  • Platform Event Filtering. Микроконтроллер содержит таблицу, в которой описаны события: оповещение, перезагрузка, выключение, а также варианты реакции на них.
  • Watchdog Timer. Устанавливается таймер для начала операций.
  • Firmware Firewall. Блокируются команды и настройки, способные нарушить работоспособность аппаратуры.

Энергонезависимое хранилище

Содержит:

  • журнал записи системных событий — System Event Log (SEL), который ведет BMC;
  • место (репозиторий), где хранятся и поддерживаются данные о сенсорах — Sensor Data Record (SDR);
  • информация о блоках архитектуры — Field Replaceable Units (FRUs) Info.

При сбое центрального процессора на удаленном сервере такое хранилище может продолжать работать через локальную IPMI network.

Совет. Если пользователи жалуются на неустойчивую работу сервера, а логи утверждают, что все хорошо — проанализируйте SEL. Когда сбоит какая-то из планок, событие отражается в журнале. В нем указывается слот, поэтому вам будет понятно, что нужно заменить.

Требования к журналу

  • В SEL хранится как минимум 16 событий
  • На доступ к данным журнала не влияет состояние сервера и досягаемость центрального контроллера.

Важно. Память журнала не бесконечна, поэтому его необходимо периодически очищать. Автоматическая очистка проставляется в настройках центрального контроллера.

Записи SDR

Состоят:

  • из типов и количеств устройств, датчиков и блоков, подключенных к IPMB;
  • типов показаний;
  • возможностей формировать события.

Записи FRU

Состоят из инвентарных данных: серийников, марок процессоров, контроллеров, линеек памяти и устройств ввода-вывода.

Эти данные предоставляют команды интерфейса IPMI, а также команды низкого уровня, с помощью которых взаимодействуют контроллеры и модули, не поддерживающие IPMI.

IPMI-команды

Система функционирует в режиме запрос-ответ. Запрос — это сообщение, отправленное с целью получить реакцию. Запросы состоят из команд, которые запускают заданные действия и присваивают значения атрибутам. Режим допускает, чтобы несколько контроллеров одновременно взаимодействовали по одной шине.

У всех команд — единообразный синтаксис, его описывает спецификация интерфейса v2.0. Обязательные поля и опции следуют строго по порядку.

Рассмотрим структуру команд.

NetFn (Network Function)

Классифицирует группы команд по типам. Младшие 6 битов идентифицируют функции, старшие 2 — поле, отвечающее за адресацию в рамках платформы. Функция распределяет команды по кластерам, с которыми они связаны: хранилища, события, шасси.

Cmd

Управляющая команда, уникальная в пределах сетевой функции.

Subcmd

Необязательное поле, расширяющее Cmd.

Request Data

Необязательные поля, которых может быть от 0 до цепочки полей. Их структура обусловлена содержимым Cmd и Subcmd;

Data

Дополнительные параметры. К ним относятся данные, возвращаемые командой.

Request/Response Identifier

Поле служит для идентификации: запрос это или ответ.

Requester’s ID

Указывает на источник сообщения, может содержать номер логического блока.

Response Data

Результат.

Обратите внимание. Ответ обязательно содержит Completion Code, оповещающий с каким результатом была завершен запрос. Если при выполнении команды что-то пошло не так, система вернет код ошибки.

Рассмотрим пример трехбайтового формата команд для платформы SuperMicro X11SCL-F.

30 45 00

Функция 030 рядом с командой 045 относятся к системам охлаждения. Параметр 00 в поле data0 запрашивает режим вентилятора.

Ели из 4 возможных значений контроллер вернул 03, это значит, что режим оптимальный.

LAN Interface

Сетевой интерфейс используется в спецификации IPMI 2. Он доступен через выделенный сетевой порт центрального контроллера с собственным IP.

Справка. Инкапсуляция — методология, соединяющая данные и обрабатывающий код. Она защищает их от стороннего вмешательства или недопустимого использования. Благодаря инкапсуляции закрытые коды и данные становятся недосягаемыми для частей программы, функционирующих вне объекта.

Сообщения, которые пересылаются через сеть, инкапсулируются поэтапно: пакеты IPMI Session, протокол RMCP, UDP datagrams, фреймы Ethernet.

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

  • Serial Port Sharing позволяет применить для совместного использования последовательный коннектор между системой, которой управляют, и последовательными центральными контроллерами. Эта функция перенаправляет консоль BIOS на центральный контроллер.
  • Serial-over-LAN взаимодействует с теми узлами структуры, которые способны коммуницировать лишь по последовательному интерфейсу обмена данными. Функция позволяет напрямую через серверную консоль давать указания серверным составляющим — картам, чипам, дискам.

Установление сеанса

Перед тем, как сообщения IPMI начнут передаваться, устанавливается IPMI Session — сеанс формирования пакетов данных. Установить сеанс ― то же самое, что аутентифицировать пользователя.

Рассмотрим, что происходит, когда сеанс активируется.

  1.   Удаленная консоль обращается к центральному контроллеру за данными об аутентификации.
  2.   Модуль BMC отправляет информацию о типах аутентификации, которые поддерживаются. Например, это могут быть: NONE, отключающий аутентификацию, протокол простой проверки подлинности PASSWORD, а также алгоритмы хеширования MD2 и MD5.
  3.   Удаленная консоль выбирает тип аутентификации, оповещает о выборе и передает логин.
  4.   Модуль BMC проверяет, имеет ли этот пользователь права на доступ к выбранному каналу. Если ответ положительный, он санкционирует вход и отправляет в ответном сообщении ID сеанса. Установление ID позволяет нескольким сеансам одновременно функционировать на одном канале.
  5.   Удаленная консоль просит активировать сеанс. В сообщении указывает данные аутентификации и ID. В зависимости от типа опознавания это могут быть ключи, имя входящего в систему и пароль.
  6.   После проверки информации центральный контроллер подтверждает ID и отправляет оповещение об активации.

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

Рекомендация. Если одновременно запросить множество активаций, доступ к центральному контроллеру будет заблокирован, ведь все его ресурсы будут задействованы в обработке сессий. Чтобы предотвратить это, применяйте методологию LRU (Last Recently Used). Согласно этому алгоритму будет утвержден ID для самого раннего запроса.

Может ли интерфейс стать недоступным

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

  1.   Сетевые неполадки: поломки оборудования, обрыв кабеля, некачественный обжим витой пары, нерабочие порты, замыкания проводов.  
  2.   Проблемы программного обеспечения: завис центральный контроллер, модуль нуждается в прошивке, системные баги.
  3.   Аппаратные поломки: поломка памяти или процессора, перегрев комплектующих.
  4.   Неполадки по питанию: поломка серверного блока питания, обесточивание центрального контроллера.

Настройка IPMI management

IPMI сервер управляется с помощью:

  • web-браузера;
  • утилит, поставляемых производителем;
  • плагинов, исходный код которых открыт.

Визуально web-интерфейс различен для каждой из реализаций интерфейса, но алгоритм доступа к удаленным объектам одинаков: сначала в адресную строку вбивается IP-адрес порта центрального контроллера, затем вводятся данные для аутентификации.

KVM-консоль

Справка. KVM — это узел, позволяющий удаленно подключиться к серверу по IP-адресу. С помощью консоли вы сможете перезагрузить сервер, протестировать правильность функционирования ОС, а также зайти в BIOS, когда нет доступа по внешнему IP.

Консоль запускается с помощью панели управления. Окно открывается в браузере и адаптируется под параметры экрана.

После запуска Java KVM-консоли вы увидите страницу, на которой отображены данные о системе:

  • IP-адреса;
  • номера прошивок,
  • версия BIOS;
  • предварительный вид удаленной консоли.

Здесь же, пользуясь IPMI-интерфейсом, можно включить удаленный сервер.

Потом должно появиться окно, которое предоставит доступ к материнской плате на сервере. После ввода пароля серверной винды, вы получите полный доступ и сможете:

  • перезагрузить сервер;
  • зайти в BIOS;
  • получить более низкоуровневый доступ, чем в любом из InViewer.

Консоль оснащена встроенной клавиатурой. Ее можно вызывать, выбирая Virtual Keyboard в меню Virtual Media.

Вкладка Event Log позволяет нам получить лог событий, который ведется автоматически и запоминает все, что происходит с сервером. Проанализировав логи, вы можете понять причины неполадки.

Вкладка Virtual Media позволяет создать виртуальный сидером. Мы подключаем виртуальный образ (ISO), и он появляется на материнской плате. Происходит подгрузка данных по сети, и не нужно вставлять никаких флешек. Вы выбираете бут с флешки на материнской плате, и все загружается и работает.

Вы можете обновить прошивку материнской платы при помощи утилиты AFUDOS, без флешек, просто зайдя в IPMI, и запустив прошивку.

Remote ControL — это секция удаленного управления. В ней есть меню, которое позволит осуществить сброс, а также немедленно или постепенно отключить питание.

IPMI Supermicro

Для управления используются web-интерфейс либо графическая утилита IPMIView, в которой присутствуют функции web-интерфейса.

Первичная настройка: зайдите в BIOS, затем в раздел Adnanced, и перейдите на IPMI Configuration.

Рассмотрим возможности настройки, доступной через меню BIOS.

  • Status of BMC — информация о состоянии центрального контроллера.
  • View BMC System Event Log — просмотр SEL, системного журнала событий, который формирует BMC.
  • Clear BMC System Event Log — очистка журнала.
  • Set LAN Configuration — конфигурирование адаптера, который использует центральный модуль. Здесь указывается, как будут получены маски, адреса шлюза и IP — автоматически или вручную.
  • Set PEF Configuration — здесь настраивается фильтр событий, которые регистрирует контроллер. По умолчанию фильтр пуст. Можно указать как должен реагировать контроллер на определенные ситуации. Например, отключить питание, если температура возросла или вентилятор перестал вращаться.
  • BMC Watch Dog Timer Action — отключен по умолчанию. Можно сканировать состояние управляемой системы, а в случае зависания — сбросить, перезагрузить или отключить питание.

Основные функции управления и мониторинга состояния платформы реализованы через веб-интерфейс. Для подключения введите адрес IPMI и авторизуйтесь.

Справка. Адрес и реквизиты содержатся в личном кабинете или в письме о доступе к вашему серверу.

После ввода IP и авторизации вы попадете на главное окно управления платформой с активной вкладкой “System Information”:

Переходя по другим вкладкам, вы сможете:

  • контролировать состояние серверного оборудования;
  • считывать данные сенсоров и пороговые значения;
  • читать журнал событий;
  • конфигурировать оповещения о ситуациях с оборудованием;
  • корректировать параметры сети;
  • настраивать политики доступа;
  • подключиться к серверной консоли;
  • включить/выключить/сбросить устройства;
  • обновить прошивку.

Управлять удаленно платформами по интеллектуальному интерфейсу вы можете с помощью ПО, которое разрабатывают производители оборудования.

Утилита с графическим интерфейсом от Супермикро поддерживает стандартные команды IPMI и KVM и выполняет те же задачи, например: поиск, диагностика и настройка, управление пользователями, а также функции BMC. Также вы сумеете перезагрузить, включить или выключить ваш удаленный сервер.

Скачать программу можно на официальном сайте, после того, как вы укажете свои данные.

Итоги и выводы

Мы рассказали, что это за технология — IPMI и каковы ее возможности. Вы узнали про ее основные компоненты, настройки и структуру команд.  Если заинтересовало управление удаленными серверами — заходите, ответим на все ваши вопросы.

Платформа хороша тем, что на ее работу не влияют состояние BIOS, ОС и оборудования. Вы сможете удаленно мониторить и конфигурировать выделенные серверы cloud.timeweb.com с помощью IPMI server, а также сократите расходы компании на программные и аппаратные средства.

Telegram
VK
Скопировать ссылку
Что такое персональные данные (ПДн), как их обрабатывать и защищать
Что такое персональные данные (ПДн), как их обрабатывать и защищать
Что такое JAMstack
Что такое JAMstack

Зарегистрируйтесь и начните пользоваться
сервисами Timeweb Cloud прямо сейчас

15 лет опыта
Сосредоточьтесь на своей работе: об остальном позаботимся мы
165 000 клиентов
Нам доверяют частные лица и компании, от небольших фирм до корпораций
Поддержка 24/7
100+ специалистов поддержки, готовых помочь в чате, тикете и по телефону