お久しぶりです。
今回はlm_sensorsを使用して、マザーボードのチップセット温度や電圧などを表示出来る様にしてしまおうと思います。
こちらはlm_sensorsのバージョンであったりマザーボードの型次第で、監視可能不可能が非常に別れますので、もしかすると監視できないかもしれません。
当方の環境では、マザーボードにASUS社製のP8Z68-V PROというマザーボードを採用させて頂いています。こちらのマザーは2011年発売の製品で、今も現役で不具合無く、
しかも、2600Kを4.8GHzで常用するのに使っていた固体です。
・・・・・まぁ、我が家のサーバーはCore i7 2600K 4.6GHzのオーバークロックサーバーなので・・・。
lm_sensorsの初期設定は済んでいるとして話を進めていきます。
[root@rioblackford 3dys]# /usr/bin/sensors -u
acpitz-virtual-0
Adapter: Virtual device
temp1:
temp1_input: 27.800
temp1_crit: 99.000
temp2:
temp2_input: 29.800
temp2_crit: 99.000
coretemp-isa-0000
Adapter: ISA adapter
Physical id 0:
temp1_input: 34.000
temp1_max: 80.000
temp1_crit: 98.000
temp1_crit_alarm: 0.000
Core 0:
temp2_input: 32.000
temp2_max: 80.000
temp2_crit: 98.000
temp2_crit_alarm: 0.000
Core 1:
temp3_input: 31.000
temp3_max: 80.000
temp3_crit: 98.000
temp3_crit_alarm: 0.000
Core 2:
temp4_input: 33.000
temp4_max: 80.000
temp4_crit: 98.000
temp4_crit_alarm: 0.000
Core 3:
temp5_input: 28.000
temp5_max: 80.000
temp5_crit: 98.000
temp5_crit_alarm: 0.000
nct6776-isa-0290
Adapter: ISA adapter
Vcore:
in0_input: 0.872
in0_min: 0.000
in0_max: 1.744
in0_alarm: 0.000
in0_beep: 0.000
in1:
in1_input: 1.016
in1_min: 0.000
in1_max: 0.000
in1_alarm: 1.000
in1_beep: 0.000
AVCC:
in2_input: 3.296
in2_min: 2.976
in2_max: 3.632
in2_alarm: 0.000
in2_beep: 0.000
+3.3V:
in3_input: 3.280
in3_min: 2.976
in3_max: 3.632
in3_alarm: 0.000
in3_beep: 0.000
in4:
in4_input: 1.008
in4_min: 0.000
in4_max: 0.000
in4_alarm: 1.000
in4_beep: 0.000
in5:
in5_input: 2.040
in5_min: 0.000
in5_max: 0.000
in5_alarm: 1.000
in5_beep: 0.000
in6:
in6_input: 0.912
in6_min: 0.000
in6_max: 0.000
in6_alarm: 1.000
in6_beep: 0.000
3VSB:
in7_input: 3.392
in7_min: 2.976
in7_max: 3.632
in7_alarm: 0.000
in7_beep: 0.000
Vbat:
in8_input: 3.328
in8_min: 2.704
in8_max: 3.632
in8_alarm: 0.000
in8_beep: 0.000
fan1:
fan1_input: 0.000
fan1_min: 0.000
fan1_alarm: 0.000
fan1_beep: 0.000
fan1_pulses: 2.000
fan2:
fan2_input: 1314.000
fan2_min: 0.000
fan2_alarm: 0.000
fan2_beep: 0.000
fan2_pulses: 2.000
fan3:
fan3_input: 1005.000
fan3_min: 0.000
fan3_alarm: 0.000
fan3_beep: 0.000
fan3_pulses: 2.000
fan4:
fan4_input: 1300.000
fan4_min: 0.000
fan4_alarm: 0.000
fan4_beep: 0.000
fan4_pulses: 4.000
fan5:
fan5_input: 0.000
fan5_min: 0.000
fan5_alarm: 0.000
fan5_beep: 0.000
fan5_pulses: 4.000
SYSTIN:
temp1_input: 0.000
temp1_max: 0.000
temp1_max_hyst: 0.000
temp1_alarm: 0.000
temp1_type: 4.000
temp1_offset: 0.000
temp1_beep: 0.000
CPUTIN:
temp2_input: -60.000
temp2_max: 80.000
temp2_max_hyst: 75.000
temp2_alarm: 0.000
temp2_type: 3.000
temp2_offset: 0.000
temp2_beep: 0.000
AUXTIN:
temp3_input: 31.000
temp3_max: 80.000
temp3_max_hyst: 75.000
temp3_alarm: 0.000
temp3_type: 4.000
temp3_offset: 0.000
temp3_beep: 0.000
PECI Agent 0:
temp7_input: 21.000
temp7_max: 80.000
temp7_max_hyst: 75.000
temp7_crit: 88.000
temp7_beep: 0.000
PCH_CHIP_TEMP:
temp8_input: 0.000
PCH_CPU_TEMP:
temp9_input: 0.000
PCH_MCH_TEMP:
temp10_input: 0.000
intrusion0:
intrusion0_alarm: 1.000
intrusion0_beep: 0.000
intrusion1:
intrusion1_alarm: 1.000
intrusion1_beep: 0.000
beep_enable:
beep_enable: 0.000
ずらーーーーーーーと色々出てきましたが、今回必要な箇所はnct6776-isa-0290のみなのでそこだけ抽出します。
[root@rioblackford 3dys]# /usr/bin/sensors -u nct6776-isa-0290
今回もZabbix agent経由でユーザースクリプトを使用するので、【/etc/zabbix/zabbix_agentd.d/userparameter_mbstat.conf】というファイル名で作成していこうと思います。
<内容>
UserParameter=mbs.fan[*],/usr/bin/sensors -u nct6776-isa-0290 | grep fan$1_input | cut -d ":" -f2 | cut -d " " -f2 | cut -d "." -f1
UserParameter=mbs.voltage[*],/usr/bin/sensors -u nct6776-isa-0290 | grep in$1_input | cut -d ":" -f2 | cut -d " " -f2
このユーザーパラメーターはASUS P8Z68-V PROによるものですので、マザーボード次第で、nct6776-isa-0290 の部分が変わるかもしれません。
その際は少し、アレンジしてみて下さい。
使い方ですが、Zabbixにてアイテムを登録する際 キー入力欄へ下記の様に入力すると
mbs.fan[1] …FAN1
mbs.fan[2] …FAN2
mbs.fan[3] …FAN3
に対応するようになっています。
マザーボード上の電圧に関しては、
#in0_input = VCore Voltage
#in2_input = AVCC Voltage
#in3_input = +3.3V
#in7_input = 3VSB
#in8_input = Vbat
が対応しているため、設定としては
名前:VCoreVoltage キー:mbs.voltage[0]
名前:AVCCVoltage キー:mbs.voltage[2]
名前:+3.3V キー:mbs.voltage[3]
名前:3VSB キー:mbs.voltage[7]
名前:Vbat キー:mbs.voltage[8]
となります。基本的に取得値の項目名の数字を打ち込めば動く様になっています。