Ни для кого не секрет, что крупные производители серверного оборудования любят продавать самые вкусные фишки своего оборудования за отдельную плату. Supermicro ничем не лучше: начиная с X9 (Romley), появилась возможность обновлять BIOS материнской платы из-под веб-интерфейса IPMI, но, как говорится, есть нюанс. Для разблокировки этой возможности необходимо приобрести отдельную лицензию OOB.
Для разных случаев у Supermicro есть несколько лицензий:
Получается, чтобы обновить BIOS на лету, достаточно базовой ООВ лицензии, но если нужно централизованное управление группой серверов через «Supermicro Server Manager», нужна уже SFT-DCMS-SINGLE. Также в программе IPMIView заблокирована возможность запускать «KVM Console» через HTML5, можно только через тормозную Java.
Также попался мне как-то на глаза плагин VMWare VCSA для управления серверами Supermicro, называется «Supermicro Management Plug-in for VMware vCenter» (на сайте Supermicro, рядом с ним лежат плагины для Nagios и Microsoft SCOM). Штука показалась интересной. Но после установки оказалось, что и тут без лицензии никуда…
Казалось, делать нечего… продолжаем работать как раньше. Но однажды на Авито мне попалось объявление: человек за 700 деревянных продавал лицензии OOB для серверов Supermicro, и для этого нужно было только отправить MAC адрес BMC.
«Это жжж… неспроста!» - подумал я и полез узнавать, что по этому поводу думает Гугл. И как выяснилось, мир не без добрых людей, и все уже придумано до нас. На GitHub есть несколько проектов по этому поводу, самым интересным мне показался «Supermicro Product Key Utility»:
https://github.com/zsrv/supermicro-product-key?tab=readme-ov-file
Оказалось, все, что нужно, уже есть - бери да пользуйся.
Ну а теперь к делу!
В этой статье я ничего своего не придумал, просто опробовал и описал.
Все эксперименты я делал на уже довольно старой плате Supermicro X10SRW-F, но должно работать и на X11 (в 12 поколении они перешли на JSON-ключи и способ работает только с некоторыми моделями).
Статья разбита на следующие разделы:
Ключи OOB и SFT-DCMS-SINGLE: как получить, установить и удалить
Установка и настройка «Supermicro Management Plug-in for VMware vCenter»
Пробуем на вкус «Supermicro Server Manager»
Ключи OOB и SFT-DCMS-SINGLE: как получить, установить и удалить
Первым делом нужно скачать архив с GitHub (ссылка была выше), там под всевозможные платформы, начиная от FreeBSD до Windows. Лично я решил не заморачиваться и взял самый простой Windows. Программа имеет много разных ключей, про которые можно почитать в документации, я же опишу только то, что пригодилось мне. Сервера X12 у меня нет, поэтому с ключами JSON я не разбирался.
Следующим пунктом нужно выяснить MAC адрес BMC сетевой платы. Тут проблем быть не должно, смотрим в веб-морде IPMI
В нашем случае MAC-адрес: ac1f6bb72223
Дальше делаем по инструкции, которая в архиве с приложением:
Генерируем на основе мака OOB ключ:
Для проверки делаем обратное, на основе ключа получаем MAС
Теперь идем в админку IPMI и пытаемся обновить BIOS, где нам говорят, что без лицензии эта штука не работает:
Но у нас уже есть ключ!!! Его и вводим: 6660-A1A1-0611-AEBB-2E95-B74E
Ура, ООВ активирован! Можно обновлять BIOS, но это не самый простой ключ, а хочется большего.
Теперь займемся ключом SFT-DCMS-SINGLE, который даст нам гораздо большие возможности.
Для генерации этого ключа вводим команду:
supermicro-product-key.exe nonjson encode --sku SFT-DCMS-SINGLE ac1f6bb72223
Вот он наш ключ! Но куда его вводить?
Для этого шага нам понадобится консольная утилита Supermicro Update Manager (или просто SUM). Качаем прямо с сайта производителя. Вместе с утилитой идет очень большая инструкция, из которой следует, что для установки ключа на удаленную систему нужно выполнить команду:
Вот и все. Ключ активирован!
Посмотрим, какие ключи установлены на хосте:
Теперь немного о непонятном. Вдруг нас загрызет совесть, и мы захотим удалить не совсем честно полученные ключи. А как это сделать? У нас есть команды добавления и просмотра (ActivateProductKey и QueryProductKey), но нет команды удаления. А ведь раньше была!
На момент написания статьи последняя версия SUM это 2.13. А в версии 2.0 была еще команда ClearProductKey, которая и позволяла удалять установленные ключи. Так что если нужно очиститься от ключей, ищите старую версию.
Убедимся, что мы можем теперь пользоваться HTML5 KVM Console в IPMIView:
Напоследок замечу, что сервера Х9 не поддерживают ключи SFT-DCMS-SINGLE, и поэтому управлять ими через HTML5 IPMIView не даст, хотя через веб-морду они именно так и управляются. Зато они тоже понимают ключи OOB и могут через веб обновлять BIOS.
Установка и настройка «Supermicro Management Plug-in for VMware vCenter»
Данный плагин скачивается, как и остальные приложения удаленного управления, с сайта Supermicro:
https://www.supermicro.com/de/support/resources/downloadcenter/smsdownload
Последняя версия плагина была 2.3, и, как это ни странно, она у меня отказалась запускаться (вообще ничего не происходит). Немного поискав, нашел у себя версию 2.2.1, которая прекрасно запустилась. Что не так с 2.3, я так и не понял… может, в новой версии поправят. Из документации следует, что главное нововведение в 2.3 - это поддержка vCenter 8.
У меня vCenter 7, так что версия 2.2.1 подойдет.
Установка плагина подробно расписана в инструкции, которая лежит в архиве с программой. Там все просто:
Вводим учетные данные от vCenter и ждем окончания установки, после чего нас попросит зайти на vSphere Client.
Если не залогиниться, то установка окончится неудачей, и придется начинать все сначала
Проверяем: в vCenter выбираем нужный хост и идем на вкладку Monitor. Там в самом низу должен появиться Supermicro Plug-in:
Вводим логин и пароль от IPMI и видим, что ничего не работает!
А для того чтоб заработало, нужно было внимательней читать инструкцию, в которой написано, что нужно запустить службу «CIM Server»
После этого в консоли хоста выполнить команду:
#esxcli system wbem set -e true
После этого все должно заработать!
Теперь попробуем удалить этот плагин. Для этого нужно положить на vCenter файл unregister-redfish.jar (идет вместе с плагином) и залогиниться по SSH, после чего выполнить команду:
java -jar unregister-redfish.jar
У меня возникла небольшая проблема с переносом файла на vCenter с помощью программы WinSCP
Чтобы этого избежать, нужно через SSH на VCSA выполнить команду:
chsh -s /bin/bash root
После того как файл будет загружен, вернем все как было командой:
chsh -s /bin/appliancesh root
Пробуем на вкус «Supermicro Server Manager»
Ну и напоследок попробуем добавить сервер в Supermicro Server Manager.
Скачиваем последнюю версию SSM сайта и устанавливаем. В самой установке нет ничего интересного или непонятного, нужно только указать пользователя и пароль, с которым мы будем заходить в SSM и почту админа, на которую будут приходить сообщения в случае обнаружения проблем.
Попробуем добавить наш сервер, для этого запускаем Host Discovery Wizard
Искать будем IPMI, все пункты я описывать не буду, ничего сложного там нет, нужно указать учетные данные и диапазон адресов, среди которых нужно искать.
Если бы мы до этого не ввели лицензию SFT-DCMS-SINGLE, то он бы ничего не дал добавить (на скрине хосты 21, 22 и 23 это X9 сервера):
А если лицензия введена, то совсем другое дело:
После добавления видно, какие у хоста есть лицензии
Программа очень мощная для управления сразу большим количеством серверов, полное описание всех возможностей можно прочитать в документации или, как обычно все делают, просто потыкать разные кнопки, пытаясь понять для чего все это нужно.
На этом все, надеюсь, кому-нибудь данный материал покажется интересным.
PS: Все вышеперечисленное писалось исключительно с ознакомительных целях, а не как призыв к действию. Целью было проверить техническую возможность и опробовать преимущества которые дают ключи описанные в статье. Информация как удалить установленный ключ, есть в статье.
Так что, услышали, прочитали, опробовали, удалили и при необходимости купили…