IPMI

Материал из ALT Linux Wiki

IPMI в ALT Linux.

# apt-get install ipmitool

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

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

# modprobe ipmi_si ipmi_devintf 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, Basebrd_FanBoost = 26 degrees C, FP_Amb_FanBoost = 15 degrees C, Fan_Redundancy = 0x01, HSBP_A_Temp = 0 degrees C, HSBP_B_Temp = 0 degrees C, Power_Cage_Fan_1 = 4860 RPM, Power_Cage_Fan_2 = 4980 RPM, Power_Cage_Temp = 34 degrees C, Proc_1_FanBoost = 21 degrees C, Proc_2_FanBoost = 21 degrees C, Processor_1_Temp = 21 degrees C, Processor_2_Temp = 20 degrees C, Sys_Fan_1 = 3726 RPM, Sys_Fan_2 = 3933 RPM, Sys_Fan_3 = 3174 RPM, Sys_Fan_4 = 2967 RPM, 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]

ссылки по теме: 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