Перейти к содержимому

Bmc что это сервер

  • автор:

Bmc что это сервер

Контроллер управления основной платой (Baseboard Management Controller, BMC) – это встроенный служебный процессор для управления материнской платой компьютерной системы. Он способен управлять и контролировать различные аспекты работы сервера или компьютера на уровне аппаратного обеспечения.

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

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

Большой брат следит за вами, но мы знаем, как остановить его

6 октября, 2023

Supermicro обеспечила хакерам вечную жизнь на ваших серверах

Злоумышленники благодарят Supermicro за новые уязвимости в BMC-контроллерах.
21 июля, 2023

Исследователи из компании Eclypsium выявили 14 уязвимостей контроллеров BMC

Как избежать утечки данных, если вы специалист дата-центра?
19 июня, 2023

Контроллер управления основной платой — уязвимое место для хакерских атак

CISA и NSA дали рекомендации по защите BMC от злоумышленников, которые могут использовать их в качестве точек входа.

1 февраля, 2023

В программном обеспечении American Megatrends выявили новые уязвимости

В центре внимания снова серверные решения AMI MegaRAC BMC.
27 мая, 2022

Серверы Quanta Cloud Technology подвержены уязвимости трехгодичной давности

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

Уязвимости в BMC-контроллере позволяют удаленно атаковать серверы Supermicro

Исследователи обнаружили в Сети более 47 тыс. уязвимых серверов, расположенных в 90 странах.
20 декабря, 2018

Новый метод атаки на BMC превращает серверы в «кирпич»

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

7 сентября, 2018

Уязвимость в BMC-контроллере Supermicro позволяет запустить вредоносный код

Механизм обновления прошивки в контроллерах Supermicro не проводит криптографическую проверку загружаемого обновления.

IPMI ― обзор технологии

Чтобы удаленно управлять состоянием серверной платформы, системные администраторы и инженеры пользуются технологией IPMI, которая значительно упрощает им жизнь. Теперь не надо каждый раз бежать к серверу, чтобы нажать на кнопку перезагрузки ― своевременно реагировать на критические неполадки можно сидя дома в уютном кресле. В этой статье рассмотрим основные компоненты IPMI и детали работы технологии. Что […]

Изображение записи

Чтобы удаленно управлять состоянием серверной платформы, системные администраторы и инженеры пользуются технологией IPMI, которая значительно упрощает им жизнь. Теперь не надо каждый раз бежать к серверу, чтобы нажать на кнопку перезагрузки ― своевременно реагировать на критические неполадки можно сидя дома в уютном кресле. В этой статье рассмотрим основные компоненты IPMI и детали работы технологии.

Что такое IPMI

Аббревиатура IPMI расшифровывается как Intelligent Platform Management Interface (интеллектуальный интерфейс управления платформой). Через IPMI можно удаленно подключиться к серверу и управлять его работой:

  • Проводить мониторинг физического состояния оборудования, например, проверять температуру отдельных составляющих системы, уровни напряжения, скорость вращения вентиляторов
  • Восстанавливать работоспособность сервера в автоматическом или ручном режиме (удаленная перезагрузка системы, включение/выключение питания, загрузка ISO-образов и обновление программного обеспечения)
  • Управлять периферийными устройствами
  • Вести журнал событий
  • Хранить информацию об используемом оборудовании

Допустим, инженер перенастраивает сеть на сервере, допускает ошибку в конфигурации и теряет доступ по SSH. Как теперь «достучаться» до сервера? Можно подключиться по IPMI и поменять настройки.

IPMI хорош тем, что перечисленные выше функции доступны вне зависимости от работы процессора, BIOS или операционной системы (ОС) управляемой платформы. Например, можно удаленно перезагрузить сервер, если зависла ОС, или поискать причину выхода из строя CPU в журнале системных событий. Управлять можно даже выключенным сервером ― достаточно того, что сервер подключен к электрической сети.

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

Историческая справка

Первую версию спецификации IPMI v1.0 разработали совместно компании Intel, Dell, NEC и Hewlett-Packard в 1998 году. На практике обнаружились уязвимости и недостатки, которые исправили в последующих версиях IPMI v1.5 и v2.0.

Спецификация IPMI стандартизирует интерфейс общения, а не конкретную реализацию в «железе», поэтому IPMI не требует использования специальных запатентованных устройств и определенных микроконтроллеров. Производители, придерживаясь спецификаций, разрабатывают собственное оборудование IPMI, встроенное в серверные платформы:

Производитель Технология на основе IPMI
DELL iDRAC (Integrated Dell Remote Access Card)
HP iLO (Integrated Lights-Out)
Supermicro SIM (Supermicro Intelligent Management)
Lenovo IMM (Integrated Management Module)
IBM IMM (Integrated Management Module)
Cisco Cisco IMC (Integrated Management Controller)

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

Решения производителей отличаются между собой:

  • Наглядностью информации о состоянии оборудования
  • Уникальным набором приложений для восстановления работоспособности сервера, если отказали какие-либо комплектующие
  • Возможностью собирать статистику по всем комплектующим сервера, в том числе подключенным через карты расширения PCI, NVM и т.д.
  • Использование технологии не только в серверном оборудовании, но и с обычными компьютерами через платы расширения PCI-Express

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

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

Базовые компоненты любого IPMI

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

В центре архитектуры — «мозг» IPMI, микроконтроллер BMC (Baseboard Management Controller). Через него как раз и происходит удаленное управление сервером. По сути, BMC ― это отдельный компьютер со своим программным обеспечением и сетевым интерфейсом, который распаивают на материнской плате или подключают как плату расширения по шине PCI management bus.

Базовые компоненты архитектуры IPMI

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

К BMC можно подключить дополнительные контроллеры управления (Management Controllers, MCs), чтобы расширить возможности базового управления. Например, в то время как основная система управляется функциями BMC, MCs подключаются для мониторинга различных подсистем: резервных источников питания, RAID-накопителей, периферийных устройств.

MCs поставляются самостоятельными платами, отдельными от центрального BMC, поэтому их также называют Satellite Controllers. Дополнительных контроллеров может быть несколько, а вот центральный BMC — один.

К BMC контроллеры подключаются через интерфейс IPMB (Intelligent Platform Management Bus ― шина интеллектуального управления платформой). IPMB ― это шина на основе I2C (Inter-Integrated Circuit), по которой BMC перенаправляет команды управления к различным частям архитектуры:

  • Общается с дополнительными контроллерами (MCs)
  • Считывает данные сенсоров (Sensors)
  • Обращается к энергонезависимому хранилищу (Non-Volatile Storage)

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

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

PEF (Platform Event Filtering) BMC хранит таблицу событий с информацией о том, на какие события реагировать и какие действия предпринять. Когда BMC получает сообщение о событии, он сравнивает данные с таблицей и выбирает, как реагировать на событие. Реакция включает такие действия, как выключение, перезагрузка системы, формирование оповещения
Watchdog Timer Таймер настраивается на выполнение действия по истечении заданного промежутка времени. Действия включают в себя выключение, перезагрузку сервера, прерывание процессов. Если в качестве таймаута задать значение 0, действие будет выполнено сразу же. В зависимости от реализации Watchdog может опрашивать систему о состоянии раз в заданный временной интервал. Если система не отвечает (например, при зависании), инициируется действие
Firmware Firewall Некоторые действия BMC, реализуемые в отдельно стоящем сервере, могут нарушить работу модульных платформ (например, блейд-сервера). Чтобы предотвратить возможные проблемы, файрвол позволяет BMC блокировать настройки, команды IPMI и операции записи, поступающие через системный интерфейс. Файервол также содержит набор команд, через которые можно узнать, какие команды и функции управления доступны для конкретной платформы

Настройка PEF и Watchdog Timer в BIOS сервера

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

Энергонезависимое хранилище остается доступным даже при сбое CPU сервера, например, через локальную сеть; состоит из трех областей:

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

Модули системы генерируют (Event Generator) или получают (Event receiver) события. MCs выступают в качестве генераторов событий, а BMC в архитектуре может выполнять обе роли. BMC получает сообщения о событиях по системному интерфейсу и IPMB, затем регистрирует их в System Event Log (SEL).

К реализации SEL есть обязательные требования:

  • SEL хранит в памяти не меньше 16 событий
  • К информации, хранящейся в SEL, можно получить доступ вне зависимости от доступа к BMC и состояния управляемой платформы

Команды IPMI допускают чтение и удаление SEL. Поскольку память SEL ограничена, периодически журнал надо проверять и очищать, чтобы записывались новые события. В настройках BMC можно сконфигурировать автоочистку SEL. Автоочистка на различных платформах происходит по-разному — стирая старые записи, чтобы заполнить новые, или очищая всю историю.

Сообщение о событии несет в себе информацию из областей SDR Repository и FRU Info.

Записи SDR — это данные о типах и количестве сенсоров, их возможности генерировать события, типы показаний. SDR также содержат записи о количестве и типах устройств, подключенных к IPMB. Записи SDR хранятся в области памяти, которая называется SDR Repository (Sensor Data Records Repository).

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

Информация FRU может предоставляться через MC (командами IPMI) либо через доступ к чипам энергонезависимой памяти SEEPROM (Serial Electrically Erasable Programmable Read Only Memory), подключенным по шине Private Management Bus. По этой шине контроллеры общаются через низкоуровневые I2C-команды с устройствами, которые не поддерживают IPMI-команды.

Практическое применение

Допустим, клиент жалуется на зависания сервера, но в логах операционной системы всё в порядке. Смотрим SEL ― видим ошибки по одной из планок оперативной памяти с указанием информации о слоте, в котором она находится. Меняем ― сервер начинает работать как часы.

Выше мы разобрали основные модули архитектуры IPMI. Теперь обратимся к структуре передаваемых команд и посмотрим, по каким интерфейсам происходит удаленное подключение.

Структура IPMI-команд

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

Сообщения IPMI содержат базовый набор полей, единый для всех команд:

  • Network Function (NetFn) присваивает команде значение кластера, к которому команда относится (команды шасси, событий, хранилища и т. д.)
  • Поле Request/Response Identifier нужно, чтобы различать запросы и ответы
  • Requester’s ID — информация об источнике сообщения. Например, для IPMB эта информация содержит LUN (Logical Unit Number) устройства
  • Responder’s ID адресует запрос к желаемому ответчику
  • Command — уникальные в рамках Network Function команды
  • Data — дополнительные параметры (например, данные, возвращаемые в ответе)

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

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

  • BMC ― MCs, Sensors, Storage (IPMB)
  • BMC ― управляемая платформа (System Interface)
  • BMC ― удаленный администратор (LAN, Serial Interface)

В этой модели BMC можно воспринимать как коммутатор, который связывает между собой интерфейсы системы (в терминологии спецификации ― Bridging):

  • Serial ↔ IPMB
  • Serial ↔ System Interface
  • LAN ↔ IPMB
  • LAN ↔ System Interface
  • Serial ↔ PCI Management Bus
  • LAN ↔ PCI Management Bus
  • Другие комбинации, в том числе Serial ↔ LAN

При доставке через разные интерфейсы архитектуры базовый набор полей дополняется номерами каналов и фреймами. Например, протокол IPMB добавляет адресные поля и поля для проверки целостности передаваемых данных, а LAN инкапсулирует команды IPMI в UDP/IP пакеты.

Интерфейсы удаленного доступа

В начальной версии IPMI удаленная консоль подключалась к модулю BMC через последовательный интерфейс (Serial Interface). Спецификация IPMI v2.0 базируется на использовании сетевого интерфейса (LAN Interface).

Интерфейс LAN предоставляется через выделенный сетевой порт BMC со своим IP-адресом. При передаче через LAN сообщения IPMI проходят несколько этапов инкапсуляции:

  • Сообщения IPMI формируются в пакеты IPMI Session (позже в статье мы подробнее рассмотрим формирование IPMI Session)
  • Пакеты IPMI Session инкапсулируются по протоколу RMCP (Remote Management Control Protocol)
  • RMCP-пакеты формируются в UDP datagrams
  • Добавляются фреймы Ethernet

Последовательный интерфейс для подключения удаленной консоли к BMC уже не используется, однако он нужен для реализации двух функций:

  • Serial Port Sharing
  • Serial-over-LAN (SoL)

Serial Port Sharing ― это возможность использовать общий последовательный коннектор между последовательными контроллерами BMC и управляемой системы. Обычно Serial Port Sharing используется для реализации BIOS Console Redirection, то есть перенаправления BIOS-консоли на модуль BMC.

Serial-over-LAN нужен для взаимодействия с компонентами системы, которые понимают только последовательный интерфейс общения. Еще можно из консоли сервера посылать команды напрямую к устройствам сервера (чипам, картам, дискам и так далее). SoL реализован так, чтобы работать совместно с функцией Serial Port Sharing.

Сеанс и аутентификация

Для LAN и последовательного интерфейса началу передачи IPMI-сообщений предшествует установление сеанса, в ходе которого формируются пакеты данных IPMI Session.

Установление сеанса ― это аутентификация конкретного пользователя. Сеанс должен быть активирован перед началом передачи IPMI-сообщений по следующему алгоритму:

  1. Удаленная консоль запрашивает данные по аутентификации у BMC
  2. BMC посылает ответ о поддерживаемых типах аутентификации (none, password, алгоритмы MD2 и MD5 и т.д.)
  3. Удаленная консоль посылает команду о выбранном типе аутентификации и отправляет логин пользователя
  4. Если пользователь имеет привилегии доступа к каналу, BMC посылает ответ, содержащий ID сеанса. Благодаря назначению ID, несколько сеансов могут работать одновременно на одном канале (согласно требованиям спецификации ― не менее четырех одновременных сессий)
  5. Удаленная консоль посылает запрос активации сеанса. Запрос содержит ID сеанса и аутентификационную информацию (имя пользователя, пароль, ключи ― зависит от выбранного типа аутентификации)
  6. BMC верифицирует информацию о пользователе, утверждает ID сеанса и посылает ответ об активации

Сеансы автоматически прерываются, если в течение заданного интервала не выполняется никаких действий или если соединение разорвано.

Доступ к BMC можно заблокировать, отправив одновременно множество запросов об активации сеанса, тогда все ресурсы будут использоваться для отслеживания сессий, требующих активации. Чтобы предотвратить возможную атаку, в реализации BMC рекомендуется применять алгоритм LRU (Last Recently Used). Алгоритм утверждает ID сеанса для наиболее раннего запроса активации сеанса. Например, удаленная консоль запускается через браузер в noVNC-сессии. Если открыть несколько вкладок с запущенными сессиями, текстовый ввод будет доступен в наиболее ранней открытой вкладке.

Когда IPMI становится недоступен

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

  • На уровне сети. «Битые» порты, нерабочее оборудование, дефект кабеля, плохо обжатая витая пара
  • На уровне ПО. Баг системы, зависание модуля BMC, необходимость обновить прошивку модуля
  • На уровне «железа». Перегрев, выход из строя критичных комплектующих (память, процессор), дефекты архитектуры системы
  • На уровне питания. Отключение питания BMC или проблемы с блоком питания сервера

Перечисленные факторы влияют как на работу IPMI, так и на сам сервер. Модуль BMC ― это независимый от сервера чип, и отказ данного микроконтроллера говорит об отказе сервера в 90% случаев.

IPMI на практике

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

Веб-интерфейс у каждой реализации IPMI свой, но принцип доступа остается одинаковым:

  1. Ввести в адресную строку IP-адрес порта BMC
  2. Ввести логин и пароль. Иногда эта информация указана непосредственно на оборудовании

В Selectel мы работаем с IPMI-модулями компаний Intel, Asus и Supermicro. В качестве примера посмотрим на веб-интерфейс Supermicro:

Веб-интерфейс оборудования Supermicro

Возможности веб-интерфейса также реализованы в графической утилите Supermicro IPMIView:

Интерфейс Supermicro IPMIView

Чтобы управлять оборудованием через Linux-консоль, устанавливается соответствующая утилита (например, Ipmitool для локального и удаленного управления или IPMICFG для локального). Далее при помощи консольных команд добавляется IPMI-устройство и конфигурируется BMC.

Клиентам Selectel доступен IPMI для выделенных серверов и серверов произвольной конфигурации. IPMI реализован в виде KVM-консоли, которая запускается в noVNC-сессии через панель управления. Для этого в карточке с информацией о сервере надо нажать на значок консоли в правом верхнем углу:

Карточка с информацией о сервере

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

Сессия прерывается, если выйти из панели.

Заключение

IPMI ― это полностью автономный компонент серверной платформы, который не зависит ни от операционной системы, ни от BIOS, ни от CPU сервера.

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

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

Материалы, использованные в статье:

Bmc что это сервер

Встроенный сервисный процессор или BMC необходим для удаленного программно-аппаратно независимого обслуживания серверного оборудования: мониторинг, установка ОС, изменение настроек BIOS, управление питанием и прочее.

Сетевые настройки BMC

Для удаленной работы с сервисным процессором используется отдельный сетевой порт сервера.

По умолчанию IP адреса назначаются автоматически посредством протокола DHCP, но его можно изменить из меню настроек BIOS (клавиша F2 при загрузке сервера). В меню BIOS перейдите во вкладку Server Mgmt. Видно, что в данном случае BMC получил IP адрес от службы DHCP.

Для настройки статического IPv4 адреса необходимо в подменю Configuration Address source активировать опцию Static on next reset.

Это разблокирует для редактирования опции Station IP address, Subnet mask, Router IP address. После изменения IPv4 адреса в подменю Configuration Address source активируйте опцию Do Nothing.

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

После отключения IPv6 AutoConfig станут доступны поля настройки IPv6 вручную.

Основной функционал сервисного процессора

Воспользоваться функциями сервисного процессора можно при помощи стандартного Web-браузера. В адресной строке браузера следует ввести ip адрес BMC сервера (полученный по DHCP или установленный вручную), в нашем случае это 10.3.84.5. Появится приглашение.

Имя пользователя (Username): admin

Пароль (Password): admin

После входа появится интерфейс для работы с сервисным процессором.

Во вкладке Dashboard отображаются основная информация о сервере, системные датчики Sensor Monitoring. Здесь же можно увидеть и настроить сетевые параметры Network Information, нажав Edit.

Во вкладке Server Information можно посмотреть расширенную информацию о сервере. Подменю FRU Information содержит данные о платформе, материнской плате. Подменю Server Component содержит данные о установленных в сервере компонентах: процессор, память.

Во вкладке Server Health из подменю Sensor Readings выводятся значения различных датчиков, присутствующих в сервере. При просмотре можно группировать данные по типам и выводить график по интересующему датчику двойным нажатием мыши (при переключении в другие вкладки открытые графики отображаются).

Во вкладке Server Health в подменю Event log можно просмотреть все события происшедшие с сервером за интересующий период времени.

Во вкладке Remote Control доступны подменю Server Power Control, позволяющее удаленно производить включение, выключение, перезагрузку сервера, а также инструмент Console Redirection, позволяющий производить удаленную работу с сервером.

Инструмент Console Redirection обладает рядом функций:

  1. Playing redirection – перенаправляет видео изображение с сервера на управляющий компьютер (функция KVMoIP).
  2. Pause redirection – приостанавливает получение видео изображения с сервера.
  3. Full Screen – переключение в полно экранный режим.
  4. HDD/USB — подключение к серверу как виртуальных так и физических HDD/USB (функция VirtualMedia).
  5. FDD — подключение к серверу дисковода.
  6. CD — подключение к серверу CD/DVD дисков или ISO-образов.
  7. Show Cursor – показывать перемещение курсора.
  8. Displays a Softkeyboard – вызов виртуальной клавиатуры.
  9. Video Record – производит запись видео-потока в файл.
  10. Hot keys – вызов комбинаций горячих клавиш.
  11. Zoom Size – увеличение рабочего экрана.

Функции KVMoIP и VirtualMedia

Рассмотрим возможности Console Redirection на примере установки операционной системы Linux CentOS 6.2. Таким же образом можно установить любую другую ОС.

Для начала следует подключить образ диска на удаленный сервер.

Подключить (монтировать) можно образы находящиеся как на локальном компьютере, так и воспользоваться сетевым источником.

На удаленном сервере подключенный файл или устройство будет идентифицироваться как USB-накопитель.

После перезагрузки сервера при старте следует выбрать (клавиша F11 — BBS POPUP) загрузку с подключенного образа.

Далее следует стандартный процесс установки.

Производятся первичные настройки ОС и необходимые настройки дискового пространства.

Управление серверными платформами через интерфейс IPMI

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

— Включить или выключить электропитание.

— Выполнить аппаратный сброс компьютера.

— Посмотреть или изменить настройки BIOS.

— Установить операционную систему с использованием виртуальных носителей.

— Управлять операционной системой удаленно с использованием стандартных устройств ввода – вывода.

— Отслеживать техническое состояние наиболее важных узлов оборудования.

— Выполнять операции по обслуживанию аппаратной платформы (прошивка BIOS материнской платы или определенных контроллеров) и обеспечения авторизованного доступа к ней.

В результате совместных усилий крупных производителей серверного оборудования (Intel, Dell, NEC и Hewlett-Packard) была разработана спецификация интеллектуального интерфейса управления платформой — Intelligent Platform Management Interface (IPMI), ставшая стандартом для реализации удаленного доступа к компьютерному оборудованию серверных платформ.

Назначение и реализация интерфейса IPMI.

IPMI (от англ. Intelligent Platform Management Interface) — интеллектуальный интерфейс управления платформой, предназначенный для автономного мониторинга и управления функциями, встроенными непосредственно в аппаратное и микропрограммное обеспечения серверных платформ. Другими словами IPMI – это средство управления, которое реализовано независимо от основного оборудования сервера и обеспечивает его включение, выключение, сброс, удаленное подключение виртуальных мониторов, клавиатур и мышей, наблюдение за работой оборудования и оповещение о важных событиях, связанных с работоспособностью сервера. Спецификация IPMI версии 1.0 была опубликована еще в 1998г. и базировалась на подключении к модулю IPMI через последовательный интерфейс RS-232. Последующие спецификации IPMI 1.5 b 2.0 базируются на использовании стандартного сетевого интерфейса.

Ядром системы управления серверной платформой является специализированное устройство — Baseboard Management Controller (BMC) , который практически является специализированным компьютером, встроенным в серверную платформу, имеющим свои собственные процессор, память, периферийное оборудование и операционную систему. Модуль BMC питается от дежурного напряжения блока питания ( +5V Standby ) и, соответственно, начинает работать как только на вход блока питания подано первичное напряжение 220V, независимо от того, включен компьютер или нет.

Спецификация IPMI не задает жестких стандартов по реализации IPMI-устройств. Они могут быть выполнены в виде отдельного адаптера, могут быть распаяны непосредственно на материнской плате или выполнены в виде отдельного микроконтроллера. В настоящее время, наиболее распространены интегрированные в серверные материнские платы контроллеры BMC на базе технологии “система на одном кристалле” (System-on-Chip, SoC), позволяющие реализовать как эффективное взаимодействие с управляемой платформой, так и огромное количество функций по удаленному мониторингу, оповещению о важных событиях по e-mail или SNMP, ведению журналов и т.п.

Контроллеры BMC для серверных материнских плат подключаются к ним через системный интерфейс, названный IPMB (Intelligent Platform Management Bus/Bridge) или к другим контроллерам BMC через интерфейс IPMC (Intelligent Platform Management Chassis). Для удаленного управления оборудованием через контроллер BMC может быть использован специальный протокол прикладного уровня Remote Management Control Protocol (RMCP) , обеспечивающий работу через обычную локальную сеть. Как правило, современные контроллеры BMC обеспечивают управление серверными платформами через веб-интерфейс, а также обеспечивают удаленное подключение устройств CD/DVD и работу клавиатуры-видео-мыши по сети ( IP KVM ), что позволяет легко выполнять, например изменение настроек BIOS или выполнять установку операционной системы, не имея физического доступа к оборудованию сервера.

Основные возможности управления материнской платой через интерфейс IPMI.

Рассмотрим возможности управления сервером через интерфейс IPMI на примере материнской платы Supermicro X8DTT-IBQF с интегрированным контроллером Nuvoton WPCM450 Baseboard Management Controller с поддержкой IPMI 2.0.

Размещение BMC на материнской плате Supermicro X8DTT-IBQF

Контроллер Nuvoton WPCM450 поддерживает графическое ядро с PCI-интерфейсом, устройства Virtual Media ( виртуальные CD/DVD ) и перенаправление клавиатуры-видео-мыши (Keyboard/Video/Mouse, KVM ). Для подключения к локальной сети используется внешний контроллер Ethernet, распаянный на материнской плате.

Для взаимодействия с компонентами управляемой системы используются шины управления платформой Platform Environment Control Interface (PECI) . На материнской плате имеется перемычка для отключения BMC-контроллера, если возникнет такая необходимость. Также, на ней имеется светодиод BMC LED ( BMC Heartbeat LED) для индикации работоспособного состояния контроллера – зеленый мерцающий индикатор, обозначает, что BMC работает нормально.

Подключение к локальной сети выполняется через порт RJ-45, обозначенный как IPMI_LAN

Первичная настройка интерфейса IPMI выполняется в разделе Adnanced – IPMI Configuration основного BIOS.

Настройка конфигурации интерфейса IPMI

Status of BMC состояние контроллера BMC

View BMC System Event Log — просмотр системного журнала событий (SEL), который ведется контроллером BMC.

Clear BMC System Event Log — очистка журнала событий

Set LAN Confi guration — настройка сетевой конфигурации адаптера, используемого контроллером BMC. Можно настроить на получение IP-адреса, маски и адреса шлюза автоматически по DHCP, или задать их вручную.

Set PEF Confi guration — настройка фильтра событий, регистрируемых контроллером Platform Event Filter (PEF). В данном пункте меню можно настроить реакцию контроллера на определенные события, как например, выключение питания при увеличении температуры, или снижении скорости вращения вентиляторов. По умолчанию, фильтрация событий отключена.

BMC Watch Dog Timer Action — можно настроить опрос состояния управляемой системы и ее сброс, перезагрузку или выключение питания при зависании. По умолчанию, отключено.

Основные возможности по управлению и мониторингу состояния платформы доступны через веб-интерфейс. Для подключения к модулю BMC используется любой браузер с поддержкой java, в адресной строке которого вводится IP-адрес IPMI-устройства и, после подключения, выполняется авторизация с использованием имени пользователя и пароля, указанных в документации или заданных пользовательскими настройками. Имя пользователя и пароль по умолчанию для IPMI-устройств производства Supermicro — ADMIN / ADMIN . После успешной авторизации откроется основное окно управления платформой с активированной вкладкой “System Information”:

Информация о системе через IPMI

Вкладка “Server Health” позволяет контролировать состояние оборудования сервера:

Информация о состоянии сервера через IPMI

Sensor Reading — просмотр данных контролируемых датчиков

Sensor Reading with Thresholds — просмотр данных контролируемых датчиков и пороговых значений

Event Log — просмотр журнала событий

Отображаемая информация датчиков включает их имена, состояние и считанное значение. В нижней части экрана имеются кнопки Refresh — обновить данные датчиков и Show Thresholds — показать пороговые значения. С помощью подменю Select a sensor type category можно выбрать тип датчиков ( температура, напряжение и т.п. ). Пример отображаемой информации:

Датчики состояния через IPMI

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

Датчики состояния через IPMI

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

Alerts — настройка оповещений. Можно создать до 15 записей с различными правилами оповещений. Имеется возможность задать категорию событий, по которым выполняется оповещение – информация, предупреждение, критическое событие, невосстановимое состояние. Оповещение возможно по электронной почте или через отправку SNMP trap. В первом случае, необходимо указать e-mail, на который будет отправлено письмо, при возникновении события заданной категории, во втором – IP-адрес сервера, собирающего SNMP-оповещения. При использовании оповещения через электронную почту, необходимо указать IP-адрес и порт SMTP-сервера и адрес отправителя в разделе SMTP

Разделы LDAP , Active Directory , RADIUS , Users и SSL sertificate настраиваются в зависимости от требований безопасности доступа к IPMI-устройствам. В разделе Network можно изменить сетевые настройки IP-адрес, маску, шлюз. В разделе Ports — номера портов, которые используются при эмуляции виртуальных устройств загрузки, видеомонитора, клавиатуры и мыши. Также можно изменить номер порта для веб-доступа к устройству IPMI.

Вкладка Remote Control позволяет выполнить удаленное подключение к консоли сервера с использованием java-апплета. Необходимо учитывать, что при первом подключении, консоль может длительное время не работать, поскольку для выполнения апплета требуется запуск виртуальной машины Java. Кроме обычной эмуляции терминала, в данной программе возможно выполнение записи сеанса работы через меню Video – Capture Screen , использование программной клавиатуры ( Keyboard – Soft Keyboard ) и подключение виртуальных носителей ( Media – Virtual Media Wizard )

Вкладка Remote Control используется для включения, выключения и сброса сервера.

Вкладка Maintenance — для обновления прошивки и принудительного сброса IPMI-устройства.

Кроме ручного контроля оборудования, интерфейс IPMI позволяет настроить систему оповещения с использованием электронной почты о важных событиях, связанных с работой оборудования – изменении температуры, напряжений, скорости вращения вентиляторов, возникновении корректируемых ошибок памяти ( ECC ) и т.п. Также имеется возможность мониторинга с использованием протокола SNMP (Simple Network Management Protocol).

Реализация интерфейса IPMI может отличаться в зависимости от производителя оборудования и модели материнской платы. Так, например, для многих серверных платформ Intel подключение по IPMI через веб-браузер обеспечивается специальным модулем удаленного управления – Remote Management Module ( RMM ), который не входит в стандартную комплектацию и закупается отдельно. При чем, существует несколько редакций данных модулей, совершенно не совместимых между собой, модуль RMM3 невозможно установить на платформу, поддерживающую RMM4 и наоборот. При установке или замене модуля RMM необходимо руководствоваться документацией к материнской плате.

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

Для управления платформами через интерфейс IPMI может использоваться не только браузер, но и программное обеспечение, разрабатываемое производителями оборудования, как например утилита с графическим интерфейсом от Supermicro IPMI View

Утилита IPMI View – отображение состояния датчиков.

Также существуют утилиты командной строки IPMICFG и SMCIIPMITOOL .

Кроме того, существует открытое программное обеспечение с реализацией интерфейса IPMI:

OpenIPMI — проект на Sourceforge, предоставляющий драйверы ядра Linux и набор библиотек для реализации IPMI

ipmitool — пакет утилит командной строки для реализации управления IPMI-устройствами.

Схожие по тематике страницы сайта:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *