IPMI

Материал из ALT Linux Wiki
Версия от 13:47, 29 июля 2010; MikeLykov (обсуждение | вклад) (синтаксис modprobe не дает указывать несколько модулей в строку)

IPMI в ALT Linux

# apt-get install ipmitool

Проследить, чтобы устанавливалась версия >= 1.8.9, предыдущие не содержат нужного файла bmclanconf.

Загрузить модули ядра (2.6, для M40):

# modprobe ipmi_si

# modprobe ipmi_devintf

# modprobe ipmi_msghandler

Добавить их в /etc/modules.

Проверить существование устройства /dev/ipmi0.

Проверить работу:

# ipmitool sdr

Команда должна выдавать длинный список с температурами, вольтажом и прочим.

# ipmitool sel list

Команда должна выдавать список эвентов BMC, при первоначальном запуске-инициализации может быть нулевым.

При запуске bmclanconf производится настройка BMC по текущим сетевым настройкам сервера:

# bmclanconf -c 6 -i eth1

Auto-configuring eth1 (channel 6)
Setting LAN IP Address to 10.0.0.285
Setting LAN Subnet Mask to 255.255.255.0
Setting LAN MAC Address to 00:07:f9:5f:7e:39
Setting LAN Default Gateway IP to 10.0.0.1
Setting LAN Default Gateway MAC to 00:19:5b:66:76:81
Enabling BMC-generated Gratuitous ARPs
BMC-generated Gratuitous ARP interval: 8.0 seconds
Setting channel authentication capabilities
Enabling channel 6

-c N — номер канала, получать через ipmitool channel info по Medium Type ≈ LAN,

-i ethN — сетевой интерфейс, через который мы общаемся с сетью.

После этого задать пароль:

# ipmitool lan set N password <password>

N — номер канала.

После этого можно с удаленной машины:

# ipmitool -I lan -H 10.0.0.285 chassis power reset

что отправит машину в ребут.

Nagios

Плагин для нагиоса, получающий информацию через IPMI лежит по адресу http://www.qwirx.com/check_ipmi, готов для включения в nrpe.

Выводит информацию типа:

IPMI ok (Ambient_Temp = 15 degrees C, Baseboard_Temp = 26 degrees C, ..., Sys_Fan_5 = 3933 RPM)

SNMP

Необходимо наличие пакета net-snmp на машине и пакета ipmiutil.

# pefconfig -e -a 4 -I 10.0.0.222 -A 10.0.0.223 -G 10.0.0.1

-e — включить алерты,

-a 4 — тип алерта, неважно,

-I — какой IP использовать,

-A — получатель SNMP-трапов,

-G — шлюз, через который отправлять, не обязательно.

Должно написать что-то типа: Access = Always Avail, PEF Alerts Enabled

На получателе ловить трапы при помощи snmptrapd и проксировать их на нужные хосты, например, в zabbix при помощи snmptrapd.sh из поставки zabbix. Для nagios должно быть нечто аналогичное.

В tcpdump при этом:

18:40:19.129311 IP 10.xx.yy.zz.623 > 10.yy.xx.zz.snmptrap: Trap(97) .1.3.6.1.4.1.3183.1.1 10.xx.yy.zz enterpriseSpecific s=131330 1184179219 [|snmp]
18:40:14.110914 IP 10.xx.yy.zz.623 > 10.yy.xx.zz.snmptrap: Trap(97) .1.3.6.1.4.1.3183.1.1 10.xx.yy.zz enterpriseSpecific s=65801 1184179214 [|snmp]

Cсылки по теме

http://www.comunidelchianti.it/~max/cern/ipmi/node22.html

http://www.zabbix.com/forum/showthread.php?t=4685

http://www.zabbix.com/forum/showthread.php?t=3943&highlight=snmptrapd