Zabbixでマザーボードから温度とFANの回転数を取得し、それをグラフとして表示させる方法のメモです。
前回設定時にメモを残しておらず、MariaDBが壊れてから元に戻せずにいたため、今回はしっかりと残しておきます。
lm_sensorsが必要なので事前にインストールします。
また、今回のCentOS 8では、以下の記事の様にNCT6775のモジュールを入れ替える事無く、値が取れました。
>CentOS 7.3 N3150I-C で lm_sensors を使う
環境:
CentOS 8.0.1905
Zabbix 4.0.13 LTS
MB N3150I-C(NCT6792D)
lm_sensors
dnf install lm_sensors sensors-detect --auto sensors (略) fan1: 964 RPM (min = 0 RPM) fan2: 480 RPM (min = 0 RPM) (略) SYSTIN: +29.0°C (high = +125.0°C, hyst = +120.0°C) sensor = thermistor CPUTIN: +33.5°C sensor = thermistor (略)ほとんど省略しましたが、私が取りたい値は上記の物です。
次にこれらの値がどのデバイスでどのような名前であるかを確認します。
sensors -u nct6792-isa-0290 (略) fan1: fan1_input: 1166.000 fan1_min: 0.000 fan1_alarm: 0.000 fan1_beep: 0.000 fan1_pulses: 2.000 fan2: fan2_input: 611.000 fan2_min: 0.000 fan2_alarm: 0.000 fan2_beep: 0.000 fan2_pulses: 2.000 (略) SYSTIN: temp1_input: 33.000 temp1_max: 125.000 temp1_max_hyst: 120.000 temp1_type: 4.000 temp1_offset: 0.000 CPUTIN: temp2_input: 36.500 temp2_type: 4.000 temp2_offset: 0.000 (略)FANの方はfan1、fan2とそのままでしたが、温度の方はtemp1、temp2となっていました。
これらと直前のnct6792-isa-0290という文字列をZabbixで使います。
Zabbix
Zabbix_agentdを使うと前項の文字列が正しいかを確認できます。zabbix_agentd -t "sensor[nct6792-isa-0290,temp1]" sensor[nct6792-isa-0290,temp1] [d|33.000000]33℃として取得できました。
これをアイテムに追加をしていきます。
アイテムの作成
[設定]→[ホスト]→[Zabbix server]→[アイテム][アイテムの作成]を押下。
FAN
名前:任意タイプ:Zabbixエージェント
キー:sensor[nct6792-isa-0290,fan1]
データ型:数値 (整数)
単位:RPM
更新間隔:60s
[追加]を押下。
fan2も同様に作成。
温度
名前:任意タイプ:Zabbixエージェント
キー:sensor[nct6792-isa-0290,temp1]
データ型:数値 (浮動小数)
単位:℃
更新間隔:60s
[追加]を押下。
temp2も同様に作成。
グラフの作成
[設定]→[ホスト]→[Zabbix server]→[グラフ][グラフの作成]を押下。
名前:任意
アイテム:fan1とfan2を追加する。
[追加]を押下。
アイテムで作成した名前を選択。
グラフの形式:線
[追加]を押下。
温度も同様に作成。
記事トップの画像は、温度とFANの回転数を一つのグラフにまとめています。
FANのアイテムのY軸を右することで、表示できます。