Рубрика: ipmi

Проблема с BMC (IPMI) на сервере Intel (CentOS)

Страница web-интерфейса BMC грузится и грузится, можно ждать хоть до посинения. IP BMC пингуется бодро.

Ситуация не совсем обычная, так как за 7 работы в хостинге вижу первый раз.

Можно сбросить BMC, без перезагрузки сервера.

# yum install ipmitool
Загружены модули: fastestmirror
Подготовка к установке
Loading mirror speeds from cached hostfile
* base: mirror.awanti.com
* extras: mirror.awanti.com
* openvz-kernel-rhel6: openvz.rinet.ru
* openvz-utils: openvz.rinet.ru
* updates: mirror.awanti.com
Разрешение зависимостей
—> Проверка сценария
—> Package ipmitool.x86_64 0:1.8.15-2.el6 will be для установки
—> Обработка зависимостей: gettext для пакета: ipmitool-1.8.15-2.el6.x86_64
—> Проверка сценария
—> Package gettext.x86_64 0:0.17-18.el6 will be для установки
—> Обработка зависимостей: libgomp.so.1(GOMP_1.0)(64bit) для пакета: gettext-0.17-18.el6.x86_64
—> Обработка зависимостей: cvs для пакета: gettext-0.17-18.el6.x86_64
—> Обработка зависимостей: libgomp.so.1()(64bit) для пакета: gettext-0.17-18.el6.x86_64
—> Проверка сценария
—> Package cvs.x86_64 0:1.11.23-16.el6 will be для установки
—> Package libgomp.x86_64 0:4.4.7-18.el6 will be для установки
—> Проверка зависимостей окончена

Зависимости разрешены

==================================================================================================================================================================================
Пакет Архитектура Версия Репозиторий Размер
==================================================================================================================================================================================
Установка:
ipmitool x86_64 1.8.15-2.el6 base 465 k
Установка зависимостей:
cvs x86_64 1.11.23-16.el6 base 712 k
gettext x86_64 0.17-18.el6 base 1.8 M
libgomp x86_64 4.4.7-18.el6 base 134 k

Результат операции
==================================================================================================================================================================================
Установить 4 пакет(а,ов)

Объем загрузки: 3.1 M
Будет установлено: 9.0 M
Продолжить? [y/N]: y
Загрузка пакетов:
(1/4): cvs-1.11.23-16.el6.x86_64.rpm | 712 kB 00:00
(2/4): gettext-0.17-18.el6.x86_64.rpm | 1.8 MB 00:00
(3/4): ipmitool-1.8.15-2.el6.x86_64.rpm | 465 kB 00:00
(4/4): libgomp-4.4.7-18.el6.x86_64.rpm | 134 kB 00:00
———————————————————————————————————————————————————————————-
Общий размер 7.7 MB/s | 3.1 MB 00:00
Запуск rpm_check_debug
Проверяем сценарий
Проверка сценария прошла успешно
Запускается сценарий
Установка : libgomp-4.4.7-18.el6.x86_64 1/4
Установка : cvs-1.11.23-16.el6.x86_64 2/4
Установка : gettext-0.17-18.el6.x86_64 3/4
Установка : ipmitool-1.8.15-2.el6.x86_64 4/4
Verifying : cvs-1.11.23-16.el6.x86_64 1/4
Verifying : ipmitool-1.8.15-2.el6.x86_64 2/4
Verifying : libgomp-4.4.7-18.el6.x86_64 3/4
Verifying : gettext-0.17-18.el6.x86_64 4/4

Установлено:
ipmitool.x86_64 0:1.8.15-2.el6

Зависимости установлены:
cvs.x86_64 0:1.11.23-16.el6 gettext.x86_64 0:0.17-18.el6 libgomp.x86_64 0:4.4.7-18.el6

Готово!

Если, при запуске ipmitool будет вот так:

# ipmitool
Could not open device at /dev/ipmi0 or /dev/ipmi/0 or /dev/ipmidev/0: No such file or directory

 

То надо под грузить модули:

# modprobe ipmi_devintf

# modprobe ipmi_si

После чего:

# ipmitool bmc reset cold
Sent cold reset command to MC

И мы имеем быстро загружающуюся страницу BMC.

Настройка IPMI

Пример для Debian: Установка с помощью менеджера пакетов:

apt-get install ipmitool

Для работы ipmitool необходимо с помощью «modprobe» загрузить следующие модули:

modprobe ipmi_devintf
modprobe ipmi_si

Проверить, что всё необходимое корректно загружено и установлено, можно с помощью команды в следующем примере, она отобразит данные со всех доступных датчиков:

ipmitool sensor list

Пользователи

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

  • callback (1) — может только лишь инициировать callback;
  • user (2) — может отправлять запросы с правами только на чтение, но не может редактировать никакие конфигурационные файлы;
  • operator (3) — может менять все настройки за исключением деактивации канала и изменения прав;
  • administrator (4) — может менять любые настройки.

Обычно один или более пользователей уже существуют. Обзор существующих пользовательских ID и логинов можно получить с помощью:

ipmitool user list 1

В моделях PX90/PX120 уже существует активный пользователь с администраторскими правами:

ID  Name             Callin  Link Auth  IPMI Msg   Channel Priv Limit
2   ADMIN            false   false      true       ADMINISTRATOR

В моделях PX91/PX121 есть два активных пользователя с администраторскими правами:

ID  Name             Callin  Link Auth  IPMI Msg   Channel Priv Limit
1                    false   false      true       ADMINISTRATOR
2   admin            false   false      true       ADMINISTRATOR

В моделях PX60/PX70 есть 5 стандартных неактивных пользователей, которых можно менять за исключением первого.

ID  Name             Callin  Link Auth  IPMI Msg   Channel Priv Limit
1                    true    false      true       ADMINISTRATOR
2   root             false   true       true       ADMINISTRATOR
3   test1            true    false      true       ADMINISTRATOR
4   test2            true    false      true       ADMINISTRATOR
5   test3            true    false      true       ADMINISTRATOR

ID пользователя root (или ADMIN) должен быть отключён и, по возможности, переименован после создания нового пользователя, но до активации сети.

Сменить логин можно с помощью ipmitool:

ipmitool user set name 2 john-doe

Для создания нового пользователя, просто назначьте имя неиспользованному ранее ID. Здесь процедура идентична процедуре смены логина для ID. Удаление ID возможно только при сбросе настроек BMC.

Создайте нового пользователя:

ipmitool user set name 6 max+meier

Затем задайте ему пароль:

ipmitool user set password 6 Correct-Battery-Horse-Staple

Теперь следует активировать этому пользователю доступ:

ipmitool channel setaccess 1 6 link=on ipmi=on callin=on privilege=4

Сам по себе пользователь также должен быть активирован:

ipmitool user enable 6

Для смены пользовательского пароля, достаточно следующей команды:

ipmitool user set password 6 Battery+Staple-Horse$Correct

В конце надо деактивировать админа по умолчанию:

ipmitool user disable 2

Сеть

Для того чтобы иметь доступ к BMC через Интернет Вам потребуется заказать через панель Robot дополнительный одиночный IP-адрес. Этот IP-адрес оплачивается. Настройка BMC на IPv4 может быть произведена при помощи ipmitool. Доступно как ручное задание IPv4 адреса, так и получение его по DHCP. Изменить эти настройки Вы сможете через веб-интерфейс (Configuration / IPv4 Network). В настоящий момент использование IPv6 невозможно. Позднее такая настройка должна появиться при использовании веб-интерфейса.

Начальная настройка должна быть произведена при помощи ipmitool.

На различных моделях серверов Shared LAN соответствует разным каналам:

  • PX60/70/90/120: канал 1
  • PX91/121: канал 8

Для получения MAC адреса BMC используйте команду lan print:

  • PX60/70/90/120:
ipmitool lan print 1
  • PX91/121:
ipmitool lan print 8

Далее приводятся команды с и использованием канала 1. Для серверов PX91/PX121 команды будут теми же, но с каналом 8 («set 1» замените на «set 8»).

Для получения IP-адреса при помощи DHCP используйте следующую команду:

ipmitool lan set 1 ipsrc dhcp

Если вы хотите задать IP-адрес вручную, то используйте следующую серию команд:

ipmitool lan set 1 ipsrc static

Задание IP-адреса:

ipmitool lan set 1 ipaddr <IP-адрес>

Задание маски сети:

ipmitool lan set 1 netmask <маска сети>

Задание шлюза по умолчанию:

ipmitool lan set 1 defgw ipaddr <IP-адрес шлюза>

Serial over LAN

Для активации SOL (Serial over LAN) введите следующую команду:

ipmitool -C 3 -I lanplus -H <IP-адрес> -U <имя пользователя> -P <пароль> sol activate

Использования шифрования третьего вида обязательно, без него будет невозможно использование lanplus.

Если вы увидите следующее сообщение об ошибке, то вам надо активировать пользователя для SOL:

$ ipmitool -C 3 -I lanplus -H <IP-адрес> -U <имя пользователя> -P <пароль> sol activate
Info: SOL payload disabled
$ ipmitool -C 3 -I lanplus -H <IP-адрес> -U <имя пользователя> -P <пароль> sol payload enable <channel> <user-id>

После этого вы сможете видеть вывод BIOS. Доступ к загрузчику ОС и к консоли ОС требует дополнительной настройки.

Ошибки в работе ipmicfg

Если получаем  примерно вот это:

 

# ./ipmicfg-linux.x86_64 -m

 [kcs] kcs_error_exit:

 [kcs] kcs_error_exit:

 [kcs] kcs_error:

 [kcs] kcs_error_exit:

 [kcs] kcs_error_exit:
Failed to get IP Address, Completion Code=18h

Ну или работа сопровождается вот такой ошибкой — [kcs] kcs_error_exit:

Скачивать утилиту лучше отсюда

Затем делаем пару действий:

yum install openipmi
и
modprobe ipmi_devintf

После этого всё работает идеально.

Сброс пароля ipmi в supermicro

Сброс забытого пароля к IPMI для выделенного сервера Supermicro

Утилита impicfg доступна для разных операционных систем — Linux, Windows, DOS на сервере Supermicro

Скачиваем утилиту с FTP сервера

ftp://ftp.supermicro.com/utility/IPMICFG/

Утилита impicfg поможет сбросить пароль к заводским установкам или позволит изменить другие параметры IPMI.

После скачивания архива, распаковываем и выдаем необходимые привилегии для запуска

chmod +x ipmicfg-linux.x86_64.static

Также для удобства сделаем символическую ссылку

ln -s $(pwd)/ipmicfg-linux.x86_64.static /usr/local/sbin/ipmicfg

Получение текущей конфигурации сети и установка новых параметров

[root@test 64bit]# ipmicfg -m
IP=192.168.2.234
MAC=00:25:90:6F:9C:8D
...
[root@test 64bit]# ipmicfg -k
Subnet Mask=255.255.255.0
...
[root@test 64bit]# ipmicfg -g
Gateway=0.0.0.0

Сброс к заводским установкам

[root@test 64bit]# ipmicfg -fd
Reset to the factory default completed.

Проверяем настройки сети и изменяем при необходимости

[root@test ~]# ipmicfg -m
IP=192.168.2.75
MAC=00:25:90:6F:9C:8D
...
[root@test ~]# ipmicfg -k
Subnet Mask=255.255.255.0
...
[root@test ~]# ipmicfg -g
Gateway=192.168.2.1
Установка новых параметров
[root@test ~]# ipmicfg -m 192.168.2.2
IP=192.168.2.2
...
[root@test ~]# ipmicfg -k 255.255.255.0
Net Mask=255.255.255.0
...
[root@test ~]# ipmicfg -g 192.168.2.1
Gateway IP=192.168.2.1

Пароль IPMI

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

Пользователь: ADMIN
Пароль: ADMIN

Если возникли ошибки

[kcs] kcs_error_exit:
[kcs] kcs_error_exit:
[kcs] kcs_error_exit:
No IPMI BMC Found!
Failed to reset the BMC to the factory

То выполняем следующие команды: Отключаем DHCP и назначаем вручную настройки

ipmicfg -dhcp off
ipmicfg -k NET_MASK
ipmicfg -m IPMI_IP

Проверяем

[root@test 64bit]# ipmicfg -m
IP=192.168.2.2
MAC=00:25:90:6F:A7:94