
みなさん、こんにちは、私の名前はアンドレイです。 そして、私は鉄が大好きです。 モニタリングも大好きです。 そして最後に、IPMIと他のアダルトテクノロジーを備えた実サーバーが私の人生に登場しました。 そして、私はもっとあることを願っています。 それが私が普遍的な解決策を探す動機となった理由です。 IPMIセンサーのLLD検出。
箱から何を取り出しますか:
- 温度、電圧、rpmセンサーの検出
- SDRベースのトリガー
さて、次のようになります。

必要な合計:
- Bashスクリプト
- 模様
- アイテムの名前を変更するためのドキュメントまたはインターネット
最初に、ipmitoolユーティリティがインストールされた準備済みの動作中のZabbix 3.2サーバー、設定済みのIPMIホストが必要であることを明確にします。
スクリプト
外部チェックとしてサーバー上で実行されるため、サーバー構成で指定されているexternalscriptsフォルダーに配置する必要があります。 Ubuntuのデフォルトは/ usr / lib / zabbix / externalscriptsです。 このスクリプトを実行する適切な権限を設定することを忘れないでください。
ipmi.sh
#!/bin/bash | |
# 2017/06/08 AcidVenom v1 | |
# IPMI Zabbix | |
# | |
# : | |
IFS=$'\n' | |
JSON="{\"data\":[" | |
SEP="" | |
sensors=`ipmitool -I lanplus -H $1 -L $2 -U $3 -P $4 sensor | grep "$5"` | |
for sensor in $sensors | |
do | |
ID=`echo $sensor | sed "s/ *|.*//"` | |
NAME=`echo $ID | sed "s/.*/\U&/" | sed "s/+//g" | sed "s/ /_/g"` | |
LU=`echo $sensor | cut -c 54-63 | sed "s/ //g"` | |
LC=`echo $sensor | cut -c 66-75 | sed "s/ //g"` | |
LNC=`echo $sensor | cut -c 78-87 | sed "s/ //g"` | |
UNC=`echo $sensor | cut -c 90-99 | sed "s/ //g"` | |
UC=`echo $sensor | cut -c 102-111 | sed "s/ //g"` | |
UU=`echo $sensor | cut -c 114-123 | sed "s/ //g"` | |
STATUS=`echo $sensor | cut -c 46-51 | sed "s/ //g"` | |
JSON=$JSON"$SEP{\"{#ID}\":\"$ID\", \"{#NAME}\":\"$NAME\", \"{#LU}\":\"$LU\", \"{#LC}\":\"$LC\", \"{#LNC}\":\"$LNC\", \"{#UNC}\":\"$UNC\", \"{#UC}\":\"$UC\", \"{#UU}\":\"$UU\", \"{#STATUS}\":\"$STATUS\"}" | |
SEP=", " | |
done | |
JSON=$JSON"]}" | |
echo $JSON |
模様
接続されたノードごとに、4つのマクロ、つまり{$ IPMIIP}、{$ IPMIPRIV}、{$ IPMIUSER}、{$ IPMIPASS}を指定する必要があります。 これらの値は直感的ですが、{$ IPMIPRIV}だけがユーザーロール(ADMIN、USERなど)であることを除きます。 Zabbixにはこの点に関して標準マクロがないため、それらを作成する必要があります。 おそらく将来的には登場するでしょう。
前の記事と同様に、テンプレートの機能は、マクロ{$ {#X}}の二重変換です。 センサーの名前を読み取り可能なものに置き換えることができます。 同意して、「BIOSバッテリー電圧」は「BB_3.3V_VBAT電圧」よりも見栄えが良いです。
このために必要なことは、対応するマクロをフォームのテンプレートリストに追加することだけです。
{$ CPU1_TEMPERATURE} = CPU1
リストにはすでにIntel S1200とAsus RS300のいくつかの変換があります。
いくつかのカット
BB-ベースボード
VR-電圧レギュレータ
SSB-サーバーサウスブリッジ
VR-電圧レギュレータ
SSB-サーバーサウスブリッジ
模様
<?xml version="1.0" encoding="UTF-8"?> | |
<zabbix_export> | |
<version>3.2</version> | |
<date>2017-06-13T07:58:22Z</date> | |
<groups> | |
<group> | |
<name>Templates</name> | |
</group> | |
</groups> | |
<templates> | |
<template> | |
<template>IPMI - Sensors</template> | |
<name>IPMI - Sensors</name> | |
<description> IPMI : | |
, , | |
| |
ipmi.sh | |
| |
(): | |
{$IPMIIP} - IP- | |
{$IPMIPRIV} - | |
{$IPMIUSER} - | |
{$IPMIPASS} - | |
</description> | |
<groups> | |
<group> | |
<name>Templates</name> | |
</group> | |
</groups> | |
<applications> | |
<application> | |
<name></name> | |
</application> | |
</applications> | |
<items/> | |
<discovery_rules> | |
<discovery_rule> | |
<name></name> | |
<type>10</type> | |
<snmp_community/> | |
<snmp_oid/> | |
<key>ipmi.sh[{$IPMIIP},{$IPMIPRIV},{$IPMIUSER},{$IPMIPASS},degrees]</key> | |
<delay>3600</delay> | |
<status>0</status> | |
<allowed_hosts/> | |
<snmpv3_contextname/> | |
<snmpv3_securityname/> | |
<snmpv3_securitylevel>0</snmpv3_securitylevel> | |
<snmpv3_authprotocol>0</snmpv3_authprotocol> | |
<snmpv3_authpassphrase/> | |
<snmpv3_privprotocol>0</snmpv3_privprotocol> | |
<snmpv3_privpassphrase/> | |
<delay_flex/> | |
<params/> | |
<ipmi_sensor/> | |
<authtype>0</authtype> | |
<username/> | |
<password/> | |
<publickey/> | |
<privatekey/> | |
<port/> | |
<filter> | |
<evaltype>0</evaltype> | |
<formula/> | |
<conditions/> | |
</filter> | |
<lifetime>30</lifetime> | |
<description/> | |
<item_prototypes> | |
<item_prototype> | |
<name> {${#NAME}}</name> | |
<type>12</type> | |
<snmp_community/> | |
<multiplier>0</multiplier> | |
<snmp_oid/> | |
<key>ipmi.temp.[{#NAME}]</key> | |
<delay>60</delay> | |
<history>90</history> | |
<trends>180</trends> | |
<status>0</status> | |
<value_type>0</value_type> | |
<allowed_hosts/> | |
<units>°C</units> | |
<delta>0</delta> | |
<snmpv3_contextname/> | |
<snmpv3_securityname/> | |
<snmpv3_securitylevel>0</snmpv3_securitylevel> | |
<snmpv3_authprotocol>0</snmpv3_authprotocol> | |
<snmpv3_authpassphrase/> | |
<snmpv3_privprotocol>0</snmpv3_privprotocol> | |
<snmpv3_privpassphrase/> | |
<formula>1</formula> | |
<delay_flex/> | |
<params/> | |
<ipmi_sensor>{#ID}</ipmi_sensor> | |
<data_type>0</data_type> | |
<authtype>0</authtype> | |
<username/> | |
<password/> | |
<publickey/> | |
<privatekey/> | |
<port/> | |
<description/> | |
<inventory_link>0</inventory_link> | |
<applications> | |
<application> | |
<name></name> | |
</application> | |
</applications> | |
<valuemap/> | |
<logtimefmt/> | |
<application_prototypes/> | |
</item_prototype> | |
</item_prototypes> | |
<trigger_prototypes> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.temp.[{#NAME}].last()}>{#UNC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>3</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.temp.[{#NAME}].last()}>{#UC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>4</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.temp.[{#NAME}].last()}<{#LC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>3</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.temp.[{#NAME}].last()}<{#LNC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>2</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.temp.[{#NAME}].last()}>{#UU}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>5</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.temp.[{#NAME}].last()}<{#LU}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>4</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
</trigger_prototypes> | |
<graph_prototypes/> | |
<host_prototypes/> | |
</discovery_rule> | |
<discovery_rule> | |
<name></name> | |
<type>10</type> | |
<snmp_community/> | |
<snmp_oid/> | |
<key>ipmi.sh[{$IPMIIP},{$IPMIPRIV},{$IPMIUSER},{$IPMIPASS},RPM]</key> | |
<delay>3600</delay> | |
<status>0</status> | |
<allowed_hosts/> | |
<snmpv3_contextname/> | |
<snmpv3_securityname/> | |
<snmpv3_securitylevel>0</snmpv3_securitylevel> | |
<snmpv3_authprotocol>0</snmpv3_authprotocol> | |
<snmpv3_authpassphrase/> | |
<snmpv3_privprotocol>0</snmpv3_privprotocol> | |
<snmpv3_privpassphrase/> | |
<delay_flex/> | |
<params/> | |
<ipmi_sensor/> | |
<authtype>0</authtype> | |
<username/> | |
<password/> | |
<publickey/> | |
<privatekey/> | |
<port/> | |
<filter> | |
<evaltype>0</evaltype> | |
<formula/> | |
<conditions/> | |
</filter> | |
<lifetime>30</lifetime> | |
<description/> | |
<item_prototypes> | |
<item_prototype> | |
<name> {${#NAME}}</name> | |
<type>12</type> | |
<snmp_community/> | |
<multiplier>0</multiplier> | |
<snmp_oid/> | |
<key>ipmi.fan.[{#NAME}]</key> | |
<delay>60</delay> | |
<history>90</history> | |
<trends>365</trends> | |
<status>0</status> | |
<value_type>3</value_type> | |
<allowed_hosts/> | |
<units/> | |
<delta>0</delta> | |
<snmpv3_contextname/> | |
<snmpv3_securityname/> | |
<snmpv3_securitylevel>0</snmpv3_securitylevel> | |
<snmpv3_authprotocol>0</snmpv3_authprotocol> | |
<snmpv3_authpassphrase/> | |
<snmpv3_privprotocol>0</snmpv3_privprotocol> | |
<snmpv3_privpassphrase/> | |
<formula>1</formula> | |
<delay_flex/> | |
<params/> | |
<ipmi_sensor>{#ID}</ipmi_sensor> | |
<data_type>0</data_type> | |
<authtype>0</authtype> | |
<username/> | |
<password/> | |
<publickey/> | |
<privatekey/> | |
<port/> | |
<description/> | |
<inventory_link>0</inventory_link> | |
<applications> | |
<application> | |
<name></name> | |
</application> | |
</applications> | |
<valuemap/> | |
<logtimefmt/> | |
<application_prototypes/> | |
</item_prototype> | |
</item_prototypes> | |
<trigger_prototypes> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.fan.[{#NAME}].last()}>{#UNC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>3</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.fan.[{#NAME}].last()}>{#UC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>4</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.fan.[{#NAME}].last()}<{#LC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>3</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.fan.[{#NAME}].last()}<{#LNC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>2</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.fan.[{#NAME}].last()}<{#LU}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>4</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.fan.[{#NAME}].last()}>{#UU}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>5</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
</trigger_prototypes> | |
<graph_prototypes/> | |
<host_prototypes/> | |
</discovery_rule> | |
<discovery_rule> | |
<name></name> | |
<type>10</type> | |
<snmp_community/> | |
<snmp_oid/> | |
<key>ipmi.sh[{$IPMIIP},{$IPMIPRIV},{$IPMIUSER},{$IPMIPASS},Volts]</key> | |
<delay>3600</delay> | |
<status>0</status> | |
<allowed_hosts/> | |
<snmpv3_contextname/> | |
<snmpv3_securityname/> | |
<snmpv3_securitylevel>0</snmpv3_securitylevel> | |
<snmpv3_authprotocol>0</snmpv3_authprotocol> | |
<snmpv3_authpassphrase/> | |
<snmpv3_privprotocol>0</snmpv3_privprotocol> | |
<snmpv3_privpassphrase/> | |
<delay_flex/> | |
<params/> | |
<ipmi_sensor/> | |
<authtype>0</authtype> | |
<username/> | |
<password/> | |
<publickey/> | |
<privatekey/> | |
<port/> | |
<filter> | |
<evaltype>0</evaltype> | |
<formula/> | |
<conditions/> | |
</filter> | |
<lifetime>30</lifetime> | |
<description/> | |
<item_prototypes> | |
<item_prototype> | |
<name> {${#NAME}}</name> | |
<type>12</type> | |
<snmp_community/> | |
<multiplier>0</multiplier> | |
<snmp_oid/> | |
<key>ipmi.volt.[{#NAME}]</key> | |
<delay>60</delay> | |
<history>90</history> | |
<trends>365</trends> | |
<status>0</status> | |
<value_type>0</value_type> | |
<allowed_hosts/> | |
<units>V</units> | |
<delta>0</delta> | |
<snmpv3_contextname/> | |
<snmpv3_securityname/> | |
<snmpv3_securitylevel>0</snmpv3_securitylevel> | |
<snmpv3_authprotocol>0</snmpv3_authprotocol> | |
<snmpv3_authpassphrase/> | |
<snmpv3_privprotocol>0</snmpv3_privprotocol> | |
<snmpv3_privpassphrase/> | |
<formula>1</formula> | |
<delay_flex/> | |
<params/> | |
<ipmi_sensor>{#ID}</ipmi_sensor> | |
<data_type>0</data_type> | |
<authtype>0</authtype> | |
<username/> | |
<password/> | |
<publickey/> | |
<privatekey/> | |
<port/> | |
<description/> | |
<inventory_link>0</inventory_link> | |
<applications> | |
<application> | |
<name></name> | |
</application> | |
</applications> | |
<valuemap/> | |
<logtimefmt/> | |
<application_prototypes/> | |
</item_prototype> | |
</item_prototypes> | |
<trigger_prototypes> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.volt.[{#NAME}].last()}>{#UNC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>3</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.volt.[{#NAME}].last()}<{#LC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>3</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.volt.[{#NAME}].last()}>{#UC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>4</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.volt.[{#NAME}].last()}<{#LNC}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>2</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.volt.[{#NAME}].last()}>{#UU}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>5</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
<trigger_prototype> | |
<expression>{IPMI - Sensors:ipmi.volt.[{#NAME}].last()}<{#LU}</expression> | |
<recovery_mode>0</recovery_mode> | |
<recovery_expression/> | |
<name> {${#NAME}} {HOST.NAME}!</name> | |
<correlation_mode>0</correlation_mode> | |
<correlation_tag/> | |
<url/> | |
<status>0</status> | |
<priority>4</priority> | |
<description/> | |
<type>0</type> | |
<manual_close>0</manual_close> | |
<dependencies/> | |
<tags/> | |
</trigger_prototype> | |
</trigger_prototypes> | |
<graph_prototypes/> | |
<host_prototypes/> | |
</discovery_rule> | |
</discovery_rules> | |
<httptests/> | |
<macros> | |
<macro> | |
<macro>{$3.3V}</macro> | |
<value>+3.3</value> | |
</macro> | |
<macro> | |
<macro>{$3.3VSB}</macro> | |
<value>+3.3SB</value> | |
</macro> | |
<macro> | |
<macro>{$5V}</macro> | |
<value>+5V</value> | |
</macro> | |
<macro> | |
<macro>{$5VSB}</macro> | |
<value>+5SB</value> | |
</macro> | |
<macro> | |
<macro>{$12V}</macro> | |
<value>+12V</value> | |
</macro> | |
<macro> | |
<macro>{$BB_3.3V_VBAT}</macro> | |
<value> BIOS</value> | |
</macro> | |
<macro> | |
<macro>{$BB_12.0V}</macro> | |
<value>+12V</value> | |
</macro> | |
<macro> | |
<macro>{$BB_BMC_TEMP}</macro> | |
<value>BMC</value> | |
</macro> | |
<macro> | |
<macro>{$CPU1_TEMPERATURE}</macro> | |
<value>CPU1</value> | |
</macro> | |
<macro> | |
<macro>{$CPU2_TEMPERATURE}</macro> | |
<value>CPU2</value> | |
</macro> | |
<macro> | |
<macro>{$CPU_FAN1}</macro> | |
<value>CPU1</value> | |
</macro> | |
<macro> | |
<macro>{$CPU_FAN2}</macro> | |
<value>CPU2</value> | |
</macro> | |
<macro> | |
<macro>{$FRNT_FAN1}</macro> | |
<value>Front1</value> | |
</macro> | |
<macro> | |
<macro>{$FRNT_FAN2}</macro> | |
<value>Front2</value> | |
</macro> | |
<macro> | |
<macro>{$FRNT_FAN3}</macro> | |
<value>Front3</value> | |
</macro> | |
<macro> | |
<macro>{$FRNT_FAN4}</macro> | |
<value>Front4</value> | |
</macro> | |
<macro> | |
<macro>{$FRONT_PANEL_TEMP}</macro> | |
<value> </value> | |
</macro> | |
<macro> | |
<macro>{$PROCESSOR_1_FAN}</macro> | |
<value>CPU1</value> | |
</macro> | |
<macro> | |
<macro>{$PROCESSOR_2_FAN}</macro> | |
<value>CPU2</value> | |
</macro> | |
<macro> | |
<macro>{$PROCESSOR_3_FAN}</macro> | |
<value>CPU3</value> | |
</macro> | |
<macro> | |
<macro>{$PROCESSOR_4_FAN}</macro> | |
<value>CPU4</value> | |
</macro> | |
<macro> | |
<macro>{$SSB_TEMP}</macro> | |
<value>SB</value> | |
</macro> | |
<macro> | |
<macro>{$SYSTEM_FAN_1}</macro> | |
<value>System1</value> | |
</macro> | |
<macro> | |
<macro>{$SYSTEM_FAN_2}</macro> | |
<value>System2</value> | |
</macro> | |
<macro> | |
<macro>{$SYSTEM_FAN_3}</macro> | |
<value>System3</value> | |
</macro> | |
<macro> | |
<macro>{$SYSTEM_FAN_4}</macro> | |
<value>System4</value> | |
</macro> | |
<macro> | |
<macro>{$VBAT}</macro> | |
<value> BIOS</value> | |
</macro> | |
<macro> | |
<macro>{$VCORE1}</macro> | |
<value>CPU1</value> | |
</macro> | |
<macro> | |
<macro>{$VCORE2}</macro> | |
<value>CPU2</value> | |
</macro> | |
</macros> | |
<templates/> | |
<screens/> | |
</template> | |
</templates> | |
</zabbix_export> |
フィルタリングについて少し
すべてのセンサーを読み取る必要はありませんが、これは事実です。 たとえば、なぜ温度に合計マージン(Agg Margin)が必要なのですか? このような場合、検出ごとにフィルターがあります。 しかし、残念ながら、「一致しない」モードに切り替えることはできません。 可能な解決策は、グローバルな正規表現を使用することです(結果FALSE)。 @記号が付いた式の名前がフィルターに追加されます。
IPMI-FAN、IPMI-VOLT、IPMI-TEMP(これらはテンプレートに該当しません):私が自分のために行った発見のそれぞれについて。
IPMI-FAN、IPMI-VOLT、IPMI-TEMP


トリガーについて少し
トリガー条件の値は、SDR、つまりコントローラー自体から取得されます。 SDRフィールドには、6つのしきい値列が含まれます:危険度の低い、危険度の低い、危険度の低い、危険度の高い、危険度の高い、危険度の高い。 いずれかのフィールドの値が欠落している場合、トリガーは作成されません。 私見、トリガーを変更する最も論理的な方法は、デバイスのSDRフィールドをニーズに合わせて変更することです。 これを行う方法-コントローラーまたはMPの指示をお読みください。
合計
私のzabbix-ソリューション