Управление платформами Supermicro по IPMI

Как правило, сервер, впол­не мо­жет об­хо­дить­ся без ап­па­рат­ной кон­со­ли — дис­п­лея и кла­ви­а­туры. Все, что с ним про­ис­хо­дит, ре­ша­ет­ся се­те­вым со­е­ди­не­ни­ем: будь то вне­по­лос­ный out-of-band или клас­си­че­с­кий in-band. В этом кон­тек­с­те «са­мым важ­ным из ис­кусств» ад­ми­ни­ст­ри­ро­ва­ния был и ос­та­ет­ся IPMI (In­tel­li­gent Plat­form Ma­na­ge­ment In­ter­face) — ин­тел­лек­ту­аль­ный ин­тер­фейс уда­лен­но­го уп­рав­ле­ния плат­фор­мой.

IPMI позволяет выполнять мониторинг удаленной серверной платформы без ис­поль­зо­ва­ния до­пол­ни­тель­ных про­г­рам­мно-ап­па­рат­ных ре­ше­ний. Он хорош для доступа к обес­то­чен­ным компьютерам (правда, де­жур­ное на­пря­же­ние все же должно по­да­вать­ся) или до старта опе­ра­ци­он­ной системы (когда, например, требуются на­ст­рой­ки UEFI BIOS). Пол­но­фун­к­ци­о­наль­ное уп­рав­ле­ние до­сти­га­ет­ся за счет встроенного в чипсет платформы кон­т­рол­ле­ра BMC, который фак­ти­че­ски яв­ля­ет­ся ком­пью­те­ром в ком­пью­те­ре со своим про­цес­со­ром, па­мя­тью, сетевым интерфейсом и даже ви­де­о­а­дап­те­ром.

Важным результатом такой автономности является со­хра­не­ние ди­с­тан­ци­он­ной уп­рав­ля­е­мос­ти сер­вер­ной плат­фор­мы — при отказе или даже полном раз­ру­ше­нии опе­ра­ци­он­ной системы, проблемах со стар­том вследствие сбоев CMOS Setup и других по­доб­ных си­ту­а­ци­ях. Ква­ли­фи­ци­ро­ван­ный системный ад­ми­ни­ст­ра­тор, составив список ти­по­вых не­ис­прав­но­с­тей, условно оценит их ве­ро­ят­ность и разделит все про­б­ле­мы на два типа:

  1. устраняемые дистанционно;
  2. требующие физического присутствия специалиста.

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

MegaRAC как реализация IPMI

В процессе эволюции интерфейс IPMI смог нарастить функциональность до нужного пользователям уров­ня, опе­ре­див по уровню применения конкурирующую технологию Intel AMT. Немаловажным преимуществом ока­за­лась и его ин­те­гра­ция в DMTF Redfish — открытую экосистему управления серверным парком. При­ве­ден­ная ссылка не зря по­гру­жа­ет нас во внут­рен­ние де­ла Ame­ri­can Me­ga­trends. Именно AMI является раз­ра­бот­чи­ком про­грам­много обес­пе­че­ния MegaRAC, положенного в основу реализации IPMI на платформах Su­per­mic­ro.

У American Megatrends не так много конкурентов в сфере удаленного управления. Если не брать во вни­ма­ние кор­по­ра­тив­ные продукты Dell-EMC, HP и IBM (DRAC, Integrated Lights-Out и Remote Supervisor со­от­вет­ст­вен­но), разработкой средств управления занимается еще разве что компания Avocent, поставщик MergePoint Embedded Management Soft­ware для серверов Gigabyte. Оценкой качества низ­ко­у­ров­не­во­го про­грам­мно­го продукта может служить охват парка компьютерной техники. По этому показателю равных AMI нет.

Вместе с тем, интерес ведущих сер­ве­ро­ст­ро­и­те­лей к IPMI демонстрирует актуальность кон­цеп­ции уда­лен­но­го уп­рав­ле­ния. Прикладная польза очевидна — минимизация простоя и снижение расходов на обслуживание сер­вер­но­го пар­ка, где цена за ма­ши­но­комп­лект существенно выросла. Козырем здесь являются функции ап­па­рат­но­го мо­ни­то­рин­га и вос­ста­нов­ле­ния, что особенно важно на фоне роста сложности базового UEFI BIOS и ми­кро­ко­да под­держ­ки (BMC, Intel In­no­va­tion/Man­age­ment Engine, AMD Ge­ne­ric En­cap­su­lat­ed Soft­ware Archi­tec­ture).

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

В этой связи интересен опыт компании Supermicro, предлагающей гибкий подход к лицензированию широкого спектра сер­вис­ных функций. И что немаловажно — на основе цифрового ключа, что су­щес­т­вен­но по­вы­ша­ет на­деж­ность, сни­жая рас­хо­ды на содержание. Привязка уда­лен­ной (Out of Band, OOB) лицензии вы­пол­ня­ет­ся только к MAC-ад­ре­су се­те­во­го адап­те­ра и может быть легко вос­ста­нов­ле­на, чего не скажешь, на­при­мер, о ли­цен­зи­он­ном ключе Intel, в ка­че­с­т­ве ко­то­ро­го ис­поль­зу­ет­ся микросхема Winbond W25X10BV для мо­ду­ля уда­лен­но­го уп­рав­ле­ния — Re­mo­te Ma­na­ge­ment Mo­dule.

IPMI: первые шаги

По-хорошему, наладку IPMI стоит начинать с пе­ре­клю­ча­те­лей на системной плате. Установки в CMOS Setup всего лишь ин­фор­ми­ру­ют нас о состоянии BMC-контроллера. Убедится в этом можно, оз­на­ко­мив­шись c пунктами меню BMC Net­work Con­fi­gu­ra­tion (в качестве стен­до­во­го об­раз­ца бу­дем ис­поль­зо­вать Supermicro X11SSL-F — одну из самых рас­про­с­т­ра­нен­ных серверных плат­форм):

Выбор сетевого подключения для удаленного управления серверной платформой по интерфейсу IPMI c канальным резервированием

Выбор сетевого подключения (Failover) не может быть изменен в установках UEFI BIOS — это программная ре­а­ли­за­ция, за­ви­ся­щая от настройки IPMI-интерфейса (об этом ниже). Но запретив на системной плате доступ к BMC в целом или к се­те­вым ин­тер­фей­сам в частности, мы существенно урежем функциональность ме­не­дж­мен­та. Сетевой статус IPMI де­мон­ст­ри­ру­ет возможности платформы по переключению интерфейса уп­рав­ле­ния в ава­рий­ной си­ту­а­ции, когда ре­жим Failover задействован: доступ к серверу воз­мо­жен по вы­де­лен­но­му пор­ту (Dedicated LAN) либо с од­но­вре­мен­ным ис­поль­зо­ва­ни­ем одного из общих се­те­вых ресурсов (Shared LAN).

Резервирование каналов доступа для распределения функциональной нагрузки имеет своей целью не только от­ка­зо­ус­той­чи­вость сервисных операций, но позволяет в некоторых случаях добиться эко­но­ми­че­ско­го эффекта — путем ми­ни­ми­за­ции платы за сетевые подключения или стоимости аренды IP-адресов: один линк вместо двух обой­дет­ся де­шев­ле.

Конфигурирование сетевого интерфейса в комментариях не нуждается: статическое или динамическое выделение ад­ре­сов или реликт в виде VLAN понятны сами собой. Единственное, что стоит принять во внимание — на­чаль­ное се­те­вое ав­то­оп­ре­де­ле­ние вы­пол­ня­ет­ся, если серверная платформа подключена к сети до подачи дежурного питания.

Особенности программной реализации

Console Redirection для доставки ап­па­рат­ной консоли по сети (KVM-over-IP) — одно из са­мых по­пу­ляр­ных при­ло­же­ний в обойме IPMI, — тре­бу­ет ус­та­нов­ки Java-машины в опе­ра­ци­он­ной среде ин­ст­р­у­мен­таль­но­го ком­пью­те­ра. К слову, 32-х и 64-битная версии мирно уживаются в Micro­soft Win­dows, и для без­за­бот­ной экс­плу­а­та­ции JRE стоит со­дер­жать в ОС обе. А еще потребуется на­строй­ка без­о­пас­нос­ти, до­ступ­ная в свой­ст­вах Java из панели уп­рав­ле­ния:

Для удаленного доступа по KVM-over-IP через IPMI-интерфейс требуется настройка безопасности в свойствах Java панели управления

 

Впрочем, доступ к административной панели выполняется без участия Java, предоставляя после ввода ло­ги­на и па­ро­ля веб-интерфейс. Большинство пунктов меню интуитивно понятны, остановимся на самых загадочных, комментируя их прикладное значение. Заметим попутно, что структуризация опций IPMI не всегда логична, но она подвержена из­ме­не­ни­ям и после обновления микрокода BMC-контроллера ее удобство зачастую повышается.

Главные кнопки IPMI: аутентификация и сетевые настройки

Самое важное в IPMI — разграничение доступа силами самого IPMI-интерфейса. Другими словами, сменить пароль (или зарегистрировать нового пользователя) можно, залогинившись через веб-интерфейс удаленного управления.

Управление пользователями: сменить пароль или зарегистрировать нового пользователя можно, залогинившись через веб-интерфейс удаленного управления

 

Могут ли возникнуть сложности с доступом к «главной кнопке» IPMI? Могут, но они решаемы. Решаемы без участия веб­-ин­тер­фей­са — с помощью утилит IPMIView и IPMIcfg — специализированного ПО, раз­ра­бо­тан­но­го Supermicro.

Можно ли обезопасить коммуникации с удаленным сервером, задействовав криптографическую защиту? На этот слу­чай спецификация IPMI 2.0 предлагает связку протокола прикладного уровня Remote Management Control Protocol с про­то­ко­лом Authenticated Key-Exchange Protocol — сокращенно RAKP.

Обезопасить коммуникации с удаленным сервером криптографической защитой в рамках спецификация IPMI 2.0 можно с помощью связки протокола прикладного уровня Remote Management Control Protocol с протоколом Authenticated Key-Exchange Protocol — сокращенно RAKP

 

Для защиты от атак по подбору паролей Supermicro предлагает свой собственный криптографический алгоритм (это от­ра­же­но в названии меню — SuperMicro enCryption). В паре с аутентификацией методом обмена ключами он дол­жен обес­пе­чить мак­си­маль­ную защиту. Переход на про­при­е­тар­ный SMC RAKP сопряжен с рядом оговорок: вместо при­выч­но­го IPMIView придется использовать более продвинутый SMCIPMITool.

Конфигурирование сетевых настроек: изменить способ доступа к IPMI можно в меню Network раздела Configuration: доступен режимы Failover, Dedicated и Shared LAN

 

Самое время вспомнить о выборе сетевого подключения, с которым мы сталкивались в UEFI BIOS. Изменить способ доступа к IPMI можно в меню Network раздела Configuration. Доступны все режимы: от Failover до Dedicated или Shared LAN. Там же выбор порта для уже известного нам RMCP-протокола. Есть и установки для VLAN.

Лицензионная политика

Доступ к удаленной консоли

За все нужно платить, но даже в бесплатном варианте IPMI пользователь получает воз­мож­ность управлять боль­шин­ст­вом про­цес­сов на сервере Supermicro. Доступ к его графической консоли по веб-интерфейсу возможен либо через Java-приложение (вызывается как Console Redirection), либо по HTML5 (вызывается как iKVM/HTML5).

Доступ к его графической консоли по веб-интерфейсу возможен либо через Java-приложение (вызывается как Console Redirection), либо по HTML5 (вызывается как iKVM/HTML5)

 

Доступ в режиме Console Redirection требует, как сказано выше, за­пус­ка на ин­ст­ру­мен­таль­ной платформе java-при­ло­же­ния, что сопряжено с ря­дом до­пол­ни­тель­ных действий:

Доступ в режиме Console Redirection требует запуска на инструментальной платформе java-приложения

 

Выполнение файла с расширением .jnlp позволяет получить удаленный экран и рычаги управления к нему (кла­ви­а­ту­ра плюс мышь). По опыту, работа с указателем в графической консоли иногда требует сноровки. В раз­де­ле Con­fi­gu­ra­tion есть ме­ню настройки, с помощью которого можно приладиться под конкретную ре­а­ли­за­цию ОС:

В разделе Configuration есть меню настройки, с помощью которого можно выбрать способ позиционирования указателя «мышь»

 

И Java, и HTML5 сценарии Console Redirection абсолютно пол­но­фун­к­ци­о­наль­ны в том смысле, что пред­о­став­ля­ют гра­фи­че­скую кон­соль удаленного сервера и дают возможность управлять ею с помощью кла­ви­а­ту­ры и мыши. Го­ря­чие кла­ви­ши или их комбинации (типа Ctrl-Alt-Del или Alt-Tab) можно вызвать из меню Macro, которое предлагает ряд час­то ис­поль­зу­е­мых за­го­то­вок. Для эк­зо­ти­че­ских комбинаций можно вызвать Virtual­Keyboard — вир­ту­аль­ную эк­ран­ную кла­ви­а­ту­ру.

И Java, и HTML5 абсолютно полнофункциональны: они предоставляют графическую консоль удаленного сервера и дают возможность управлять ею с помощью клавиатуры и мыши

 

В меню Virtual­Media и Virtual­Storage удобно подключить к удаленному серверу виртуальные носители для ин­стал­ля­ции или тес­ти­ро­ва­ния. Там они видятся USB-устройствами, причем подключать можно или реальный привод, или просто об­раз но­си­те­ля.

В HTML5-консоли из виртуальных устройств есть только Virtual­Keyboard — она имеет несколько урезанную фун­к­ци­о­наль­ность, но пол­но­стью реализуется средствами браузера и не тре­бу­ет установки до­пол­ни­тель­ных про­грам­мных средств на ин­стру­мен­таль­ную платформу. Ею можно вос­поль­зо­вать­ся там, где нет сре­ды выполнения для Java-при­ло­же­ний или установка таковой невозможна или по каким-либо при­чи­нам за­труд­не­на.

Удаленное обновление UEFI BIOS

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

Firmware Update доступен в рамках базовой функциональности IPMI, а обновление и восстановление UEFI BIOS становится возможным только для владельцев OOB-лицензии

 

Данное обслуживание можно выполнять удаленно, но если Firmware Update доступен в рамках базовой фун­к­ци­о­наль­нос­ти IPMI, то обновление UEFI BIOS становится возможным для владельцев OOB-ли­цен­зии. Это от­дель­но при­об­ре­та­е­мый ли­цен­зи­он­ный ключ, который можно ввести в меню Activate License в раз­де­ле Miscellanious:

Отдельно приобретаемый лицензионный ключ для обновления и восстановления UEFI BIOS можно ввести в меню Activate License в разделе Miscellanious

 

Ключ OOB-лицензии не обязательно покупать на сайте Supermicro. Все ли­цен­зи­он­ные пол­но­мо­чия есть и у ло­каль­но­го дис­три­бу­то­ра, который в некоторых случаях может предложить более выгодные условия.

Лицензионный ключ не обязательно вводить через IPMI-интерфейс. Для уда­лен­но­го об­но­в­ле­ния UEFI BIOS мож­но ре­ко­мен­до­вать утилиту Supermicro Update Manager (SUM), воз­мож­нос­ти которой куда более раз­но­об­раз­ны по срав­не­нию с фун­к­ци­о­наль­но­стью IPMI-интерфейса. Кроме нее, Supermicro предлагает пер­во­клас­сный софт, по­кры­ва­ю­щий все ас­пек­ты ад­ми­ни­ст­ри­ро­ва­ния удаленных платформ. Обзор программных про­дук­тов, по­свя­щен­ных уп­рав­ле­нию сер­вер­ным обо­ру­до­ва­ни­ем, выходит за рамки данной статьи, он за­слу­жи­ва­ет от­дель­ной публикации.

Управление серверным пулом

В рамках безплатного использования IPMI-интерфейс предполагает только простейшие операции, которые мож­но считать лишь намёком на управлением серверным пулом. Одна из них — идентификация отдельно взя­той плат­фор­мы UID Control.

IPMI-интерфейс Supermicro предлагает простейшие операции для управления серверным пулом, одна из них — идентификация отдельно взятой платформы с помощью функции UID Control

 

Ее суть в том, что активностью голубого светодиода можно обозначить конкретный сервер в стойке од­но­тип­ных уст­ройств. Включая UID Control, наблюдаем прерывистое мигание индикаторов, не­ак­тив­ных в вы­клю­чен­ном со­сто­я­нии. Один из них расположен на лицевой стороне шасси, второй — на тыльной. Функция полезная еще и по­то­му, что иден­ти­фи­ка­ция шас­си выполняется не только по запросу IPMI, но и сред­ст­ва­ми про­грам­мно­го обеспечения IPMITool.

UID Control активизирует синие индикаторы, один из них расположен на лицевой стороне шасси, второй — на тыльной

 

В начале данной статьи говорится о том, какую важную роль в организации некоторых функций IPMI играет ап­па­рат­ная плат­фор­ма. В случае UID Control для этого используется переключатель на системной плате, который на­зы­ва­ет­ся UID Identifier Switch (для Supermicro X11SSL-F — это UID-SW). Если идентификация шасси аппаратно отключена, все по­пыт­ки управления ею будут напрасны.

Светодиод UID Control и переключатель UID-SW на серверной платформе Supermicro X11SSL-F

 

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

  • Supermicro Power Manager (SPM) — централизованный сбор статистики энергопотребления серверов (SFT-SPM-LIC-лицензия);
  • Supermicro Server Manager (SSM) — централизованная интегрированная система управления пулом серверов (SFT-DCMS-Single лицензия).

Про удаленную загрузку

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

В меню VirtualMedia и VirtualStorage можно подключить к удаленному серверу виртуальные носители для инсталляции ОС или тестирования программной среды, они видятся USB-устройствами, причем подключать их можно как реальный привод или образ носителя

 

Платформы, использующие программное обеспечение MegaRAC от American Me­ga­trends для BMC-контроллера, в пла­не поддержки виртуальных носителей достаточно однотипны. Это диктуется не­об­хо­ди­мо­стью под­держ­ки та­ких уст­ройств со стороны UEFI BIOS.

В качестве резюме

Пример реализации IPMI-интерфейса, интегрированного в каждую серверную платформу Supermicro, де­мон­ст­ри­ру­ет не­ос­по­ри­мые преимущества уда­лен­но­го ад­ми­ни­ст­ри­ро­ва­ния, по­зво­ля­ю­ще­го вы­пол­нять ряд задач без вы­ез­да спе­ци­а­лис­та не­по­сред­ст­вен­но к обо­ру­до­ва­нию. Такого рода фун­к­ции доступны «из ко­роб­ки», т.е. не под­ра­зу­ме­ва­ют до­пол­ни­тель­ных затрат после при­об­ре­те­ния го­то­во­го сер­ве­ра или ма­ши­но­ком­п­лек­та.

Есть и дополнительные средства, по­вы­ша­ю­щие эф­фек­тив­ность уда­лен­но­го уп­ра­в­ле­ния. Для их ис­поль­зо­ва­ния Super­micro пред­ла­га­ет гибкую ли­цен­зи­он­ную политику. Наиболее вос­тре­бо­ван­ным в этом пла­не для от­дель­но сто­я­щих сер­ве­ров видится до­ступ­ная по цене OOB-ли­цен­зия, да­ю­щая воз­мож­ность удаленного об­нов­ле­ния UEFI BIOS.

На первый взгляд, удаленный BIOS Upgrade не является клю­че­вой по­зи­ци­ей в сервисном об­слу­жи­ва­нии. В ре­аль­но­с­ти, сложность низ­ко­у­ров­не­во­го ПО на се­го­дня­ш­ний день такова, что даже его об­нов­ле­ние «че­рез вер­сию» мо­жет при­вес­ти к не­стар­ту ма­те­рин­ской платы. Выход из такой си­ту­а­ции только один — вос­ста­нов­ле­ние UEFI BIOS в ре­жи­ме Console Redirection по IPMI-интерфейсу.

Серверная платформа Supermicro X11SSL-F
предоставлена компанией Onix