Управление серверными платформами через интерфейс 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.
Контроллер 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.
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”:
Вкладка “Server Health” позволяет контролировать состояние оборудования сервера:
Sensor Reading — просмотр данных контролируемых датчиков
Sensor Reading with Thresholds — просмотр данных контролируемых датчиков и пороговых значений
Event Log — просмотр журнала событий
Отображаемая информация датчиков включает их имена, состояние и считанное значение. В нижней части экрана имеются кнопки Refresh — обновить данные датчиков и Show Thresholds — показать пороговые значения. С помощью подменю Select a sensor type category можно выбрать тип датчиков ( температура, напряжение и т.п. ). Пример отображаемой информации:
Просмотр журнала событий позволяет определить время возникновения фиксируемого состояния датчика, получить его краткое описание и оценить уровень опасности для функционирования оборудования. Пример отображаемой информации:
Вкладка 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
Также существуют утилиты командной строки IPMICFG и SMCIIPMITOOL .
Кроме того, существует открытое программное обеспечение с реализацией интерфейса IPMI:
OpenIPMI — проект на Sourceforge, предоставляющий драйверы ядра Linux и набор библиотек для реализации IPMI
ipmitool — пакет утилит командной строки для реализации управления IPMI-устройствами.
Если вы желаете помочь развитию проекта, можете воспользоваться кнопкой «Поделиться» для своей социальной сети
Источник
Что такое ipmi linux
Всем привет сегодня расскажу что такое IPMI порт управления, как его системный инженер может использовать у себя на работе в повседневные будни, упрощая себе жизнь просто до безобразия.
IPMI ( Intelligent Platform Management Interface) – это интерфейс для удаленного мониторинга и управления физическим состоянием сервера. IPMI является аналогом известных разработок IP-KVM, iLo , iDRAC, IMM .
Возможности IPMI
- удаленное включение, выключение и перезагрузка сервера;
- мониторинг температуры, напряжения и системы охлаждения;
- удаленное подключение к серверу носителя информации (например, для установки ОС и ПО);
- управление аккаунтами и правами пользователей (имеется поддержка LDAP и Active Directory );
- управление портами доступа и защита доступа SSL — сертификатом;
- настройка уведомлений о работе сервера.
Как работает контроллер BMC
Давайте посмотрим схему работы BMC контроллера. И так Baseboard Management Controller это интерфейс для удаленного управления и мониторинга состояния сервера. По сути Baseboard Management Controller это однокристальная система, как ее правильно называть System-on-a-Chip, SoC. У BMC есть встроенное графическое ядро, которое обращается и взаимодействует с основными компонентами материнской платы серверного железа, через всевозможные интерфейсы, нужные для работы стандарта IPMI. Чем хорош IPMI, так это, то что он не зависит от операционной системы хостового сервера. Лично я использую IPMI, для прошивки BIOS у серверов и установки серверной операционной системы.
Так же IPMI может работать за NAT, например в цодах, людям дают возможность управлять так своим сервером, полезно если он завис. Для NAT потребуется открыть вот такие порты:
- TCP 80: HTTP
- TCP 443: HTTPS
- TCP 5900, 5901: графическая консоль
- TCP 5120, 5123 — трафик Virtual Media
- UDP 623: IPMI
Как выглядит на серверах IPMI-порт
Приведу пример того, как на физическом сервере SuperMicro выглядит данный порт управления. Я выделил его стрелкой, чаще всего он располагается над портами USB.
Далее вам необходимо все сконфигурировать, как настроить IPMI на серверах Supermicro в BIOS или через утилиту ipmicfg, я уже рассказывал, на этом я не останавливаюсь.
Пароль по умолчанию на IPMI
Стандартным логином и паролем для IPMI будет ADMIN / ADMIN, именно большими буквами.
Перед вами появится страница со сводной информации о системе, которую вы можете себе лицезреть на картинке, она дает вам обзор системы, IP-адреса, номера версии прошивки, версии BIOS, а также предварительного просмотра удаленной консоли. Тут же вы вообще можете включить сервер, если он не работает. Я много раз пользовался IPMI интерфейсом, чтобы включить сервер, после того, как его случайно погасили.
На экране информации об оборудовании вы можете просмотреть различные компоненты оборудования, чтобы увидеть спецификации и т. д.
С помощью раздела Configuration вы можете выполнить целый ряд задач, включая оповещения, аутентификацию RADIUS, сетевую конфигурацию (для самого IPMI), настройку SMTP для предупреждений, контроль доступа по IP, системные журналы и т. д.
Раздел удаленного управления (Remote ControL) является одной из наиболее интересных вещей, так как, скорее всего, вам будет интересно иметь удаленный доступ к серверу, если вы в первую очередь заходите на IPMI.
В разделе дистанционного управления (Remote Control ), меню управления питанием позволяет:
- выполнить сброс
- немедленное отключение питания
- постепенное отключение питания
- включение или отключение питания и все это очень удобно, если вы пытаетесь удаленно устранить неполадки или отключить или снова включить сервер.
Меню Launch SOL позволяет запустить консоль SOL.
Virtual Media — это тоже потрясающая функция. Вы можете подключить виртуальный носитель через общий ресурс Windows и представить его, как если бы он был воткнут непосредственно в сервер. Единственным у IPMI есть и недостаток, ограничение в 4,7 ГБ, что может быть недостаточно для некоторых новых серверных ОС. VL-копия Windows Server 2012 R2 весит 5,1 ГБ, но кажется это решается обновлением прошивки.
Для запуска консоли удаленного управления в IPMI (Remote Console), кликните по превью изображению, у вас должен скачаться java файл. Браузер может на него ругаться, нажмите «Keep», чтобы подтвердить загрузку.
Во всплывающем окне нажмите «Continue»
далее для запуска консоли управления нажмите «Run». Может выскочить несколько разновидностей ошибок:
Источник