Сейчас я ищу способ контролировать серверное оборудование, такое как вентиляторы / блоки питания и т. Д. Проблема в том, что у нас очень динамичная среда - серверы автоматически включаются / выключаются - даже несколько раз в день, в зависимости от нагрузки. .
Я создал тетмашины для наших супермикро-серверов (у нас их всего 3-4 типа, поэтому они очень специфичны), которые содержат проверку скорости вращения вентилятора (0 означает, что вентилятор мертв). Однако каждый раз, когда я выключаю скорость вентилятора сервера, также 0.
Итак, я сейчас ищу, как получить статус питания (или любой другой индикатор того, что сервер работает) через ipmi, чтобы отправить предупреждение zabbix, только если сервер запущен.
К сожалению, over ipmi является обязательным требованием, потому что таким образом мы отслеживаем некоторые серверы, к которым у нас нет доступа.
Я бы не хотел писать сценарий, который будет запускать что-то вроде: ipmitool power status. Zabbix имеет замечательную интеграцию с ipmi, поэтому я хотел бы использовать ее как можно чаще.
Датчик ipmitool возвращает:
root@virt1:~# ipmitool sensor
System Temp | 28.000 | degrees C | ok | -9.000 | -7.000 | -5.000 | 75.000 | 77.000 | 79.000
CPU Temp | 0x0 | discrete | 0x0000| na | na | na | na | na | na
FAN 1 | 8355.000 | RPM | ok | 400.000 | 585.000 | 770.000 | 29260.000 | 29815.000 | 30370.000
FAN 2 | 8355.000 | RPM | ok | 400.000 | 585.000 | 770.000 | 29260.000 | 29815.000 | 30370.000
FAN 3 | 8725.000 | RPM | ok | 400.000 | 585.000 | 770.000 | 29260.000 | 29815.000 | 30370.000
FAN 4 | na | RPM | na | na | na | na | na | na | na
CPU Vcore | 1.144 | Volts | ok | 0.640 | 0.664 | 0.688 | 1.344 | 1.408 | 1.472
+3.3VCC | 3.280 | Volts | ok | 2.816 | 2.880 | 2.944 | 3.584 | 3.648 | 3.712
+12 V | 12.031 | Volts | ok | 10.494 | 10.600 | 10.706 | 13.091 | 13.197 | 13.303
DIMM | 1.544 | Volts | ok | 1.152 | 1.216 | 1.280 | 1.760 | 1.776 | 1.792
+5 V | 5.216 | Volts | ok | 4.096 | 4.320 | 4.576 | 5.344 | 5.600 | 5.632
+5VSB | 5.056 | Volts | ok | 4.096 | 4.320 | 4.576 | 5.344 | 5.600 | 5.632
VBAT | 3.232 | Volts | ok | 2.816 | 2.880 | 2.944 | 3.584 | 3.648 | 3.712
+3.3VSB | 3.280 | Volts | ok | 2.816 | 2.880 | 2.944 | 3.584 | 3.648 | 3.712
AVCC | 3.280 | Volts | ok | 2.816 | 2.880 | 2.944 | 3.584 | 3.648 | 3.712
Chassis Intru | 0x0 | discrete | 0x0000| na | na | na | na | na | na
PS Status | 0x1 | discrete | 0x01ff| na | na | na | na | na | na
root@virt1:~#
В стандартной установке Zabbix 2.2 есть два шаблона: «Шаблон IPMI Intel SR1530» и «Шаблон IPMI Intel SR1630». Оба они содержат элемент «Power», который запрашивает значение датчика «power», и, похоже, это то, что вам нужно. Если нет, опишите проблему, с которой вы столкнулись с этим датчиком.
Одна из идей может заключаться в запросе датчика включения / выключения питания. Это дискретный датчик, см. https://www.zabbix.com/documentation/2.2/manual/config/items/itemtypes/ipmi есть пример, как анализировать состояние дискретного датчика.
Если датчик включения / выключения питания невозможно контролировать, вы можете прочитать аналоговые датчики напряжения, например, «+ 5V» (или еще несколько датчиков напряжения). Если напряжение близко к нулю, возможно, сервер выключен (или отказал блок питания).