Введение
Стандарт интерфейса
Интеллектуальный интерфейс управления платформой (IPMI) — это набор спецификаций компьютерного интерфейса для автономной компьютерной подсистемы, обеспечивающей возможности управления и мониторинга независимо от процессора, прошивки (BIOS или UEFI) и операционной системы хост-системы. IPMI определяет набор интерфейсов, используемых системными администраторами для внеполосного управления компьютерными системами и мониторинга их работы. Например, IPMI предоставляет возможность управлять компьютером, который может быть выключен или не отвечать на запросы, используя сетевое соединение непосредственно с аппаратным обеспечением, а не с операционной системой или командной оболочкой. Другой пример использования — удаленная установка пользовательской операционной системы. Без IPMI установка пользовательской операционной системы может потребовать от администратора физического присутствия рядом с компьютером, вставки DVD-диска или USB-накопителя с установщиком ОС и завершения процесса установки с использованием монитора и клавиатуры. С помощью IPMI администратор может подключить образ ISO, эмулировать DVD-диск с установщиком и выполнить установку удаленно. Спецификация разработана компанией Intel и впервые опубликована 16 сентября 1998 года. Она поддерживается более чем 200 производителями компьютерных систем, включая Cisco, Dell, Hewlett Packard Enterprise и Intel.
The Intelligent Platform Management Interface (IPMI) is a set of computer interface specifications for an autonomous computer subsystem that provides management and monitoring capabilities independently of the host system's CPU, firmware (BIOS or UEFI) and operating system. IPMI defines a set of interfaces used by system administrators for out of band management of computer systems and monitoring of their operation. For example, IPMI provides a way to manage a computer that may be powered off or otherwise unresponsive by using a network connection to the hardware rather than to an operating system or login shell. Another use case may be installing a custom operating system remotely. Without IPMI, installing a custom operating system may require an administrator to be physically present near the computer, insert a DVD or a USB flash drive containing the OS installer and complete the installation process using a monitor and a keyboard. Using IPMI, an administrator can mount an ISO image, simulate an installer DVD, and perform the installation remotely. The specification is led by Intel and was first published on September 16, 1998. It is supported by more than 200 computer system vendors, such as Cisco, Dell, Hewlett Packard Enterprise, and Intel.
Компоненты IPMI
Подсистема IPMI состоит из главного контроллера, называемого контроллером управления базовой платой (BMC), и других контроллеров управления, распределенных по различным модулям системы, именуемым спутниковыми контроллерами. Спутниковые контроллеры в одном и том же шасси подключаются к BMC через системный интерфейс Intelligent Platform Management Bus/Bridge (IPMB) – усовершенствованную реализацию I²C (Inter Integrated Circuit). BMC соединяется со спутниковыми контроллерами или другим BMC в другом шасси через шину или мост Intelligent Platform Management Controller (IPMC). Управление может осуществляться с помощью протокола удаленного управления (RMCP) – специализированного проводного протокола, определенного в данной спецификации. RMCP+ (протокол на основе UDP с более надежной аутентификацией, чем RMCP) используется для IPMI через LAN. Несколько производителей разрабатывают и поставляют чипы BMC. BMC, используемый во встраиваемых приложениях, может иметь ограниченный объем памяти и требовать оптимизированного кода прошивки для реализации полной функциональности IPMI. Высокоинтегрированные BMC могут предоставлять сложные инструкции и обеспечивать полную функциональность внеполосного управления, как у сервисного процессора. Прошивка, реализующая интерфейсы IPMI, предоставляется различными поставщиками. Репозиторий полевых заменяемых модулей (FRU) содержит информацию об инвентаризации, такую как идентификатор поставщика и производителя, потенциально заменяемых устройств. Репозиторий записей данных датчиков (SDR) предоставляет свойства отдельных датчиков, присутствующих на плате. Например, на плате могут быть датчики температуры, скорости вращения вентилятора и напряжения.
Контроллер управления базовой доской
Контроллер управления базовой платой (BMC) обеспечивает функциональность в архитектуре IPMI. Это специализированный микроконтроллер, встроенный в материнскую плату компьютера, как правило, сервера. BMC управляет интерфейсом между программным обеспечением для управления системой и аппаратным обеспечением платформы. BMC имеет собственную прошивку и оперативную память. Различные типы датчиков, встроенных в компьютерную систему, передают в BMC данные о параметрах, таких как температура, скорость вращения вентиляторов охлаждения, состояние питания, состояние операционной системы (ОС) и т. д. BMC контролирует показания датчиков и может отправлять оповещения системному администратору по сети, если какой-либо из параметров выходит за пределы заданных значений, что указывает на возможный сбой системы. Администратор также может удаленно взаимодействовать с BMC для выполнения корректирующих действий, таких как перезагрузка или циклическое отключение/включение питания системы, чтобы восстановить работу зависшей ОС. Эти возможности снижают совокупную стоимость владения системой. Системы, соответствующие IPMI версии 2.0, также могут осуществлять связь по последовательному порту через LAN, при этом вывод последовательной консоли может быть удаленно просмотрен через LAN. Системы, реализующие IPMI 2.0, обычно также включают KVM over IP, удаленные виртуальные носители и встроенный веб-сервер с доступом вне основной полосы, хотя строго говоря, эти функции не входят в область действия стандарта интерфейса IPMI. Физические интерфейсы BMC включают SMBus, последовательную консоль RS 232, адресные и информационные линии, а также IPMB, который позволяет BMC принимать сообщения запросов IPMI от других контроллеров управления в системе. Прямое последовательное соединение с BMC не шифруется, поскольку само соединение считается защищенным. При подключении к BMC через LAN шифрование может использоваться или не использоваться в зависимости от требований безопасности пользователя. Возрастает обеспокоенность по поводу общей безопасности BMC как закрытой инфраструктуры. OpenBMC – это совместный проект Linux Foundation, разрабатывающий BMC с открытым исходным кодом.
Последние улучшения в области безопасности спецификации IPMI
Спецификация IPMI была обновлена за счет внедрения RAKP+ и более надежного шифра, взлом которого вычислительно невозможен. В связи с этим поставщики выпустили исправления, устраняющие эти уязвимости. Организация DMTF разработала безопасную и масштабируемую спецификацию интерфейса Redfish для использования в современных центрах обработки данных.