温度是监测一台机器运行的重要参数
Zabbix预置的模板中没有对CPU温度的监控,所以我们需要使用自定义的KEY对温度进行监测
Windows没有温度监测的组件这时候需要借助第三方软件Speed-Fan进行温度的读取
Speed-Fan下载:http://www.almico.com/sfdownload.php
安装完成后进行简单的设置
选中需要监测的项目,勾选下面的Logged
然后打开Log选项卡,勾选Enable
最小化Speed-Fan就会转入后台运行,点击右上角X则会直接关闭软件,这个要注意...
配置完成后正常就会在Speed-Fan安装目录下面生成一个csv文件,里面记录着温度数据
接下来就需要提取csv文件中的温度数据
需要用到tail和awk这个工具,Linux的同学肯定熟悉,不过windows没有,我们需要额外下载
tail for Windows:https://en.softonic.com/download/tail-for-windows/windows/post-download?sl=1 //解压后把tail.exe放到C:\Windows\System32文件夹下面
awk for windows:https://sourceforge.net/projects/gnuwin32/files/gawk/3.1.6-1/gawk-3.1.6-1-bin.zip/download?use_mirror=nchc&r=&use_mirror=ncu //解压后把bin文件夹下面的awk.exe放到C:\Windows\System32文件夹下面
判断tail和awk是否能用可以打开cmd,输入tail --help和awk --help
如果正常出来帮助信息则表示可以使用
tail和awk安装完成后就需要写个批处理提取温度数据
-----------------------------------------------
@echo off
cd C:\Program Files\SpeedFan
Set nowdate=%date:~,4%%date:~5,2%%date:~8,2%
tail -1 SFLog%nowdate%.csv | awk "{print $2}"
------------------------------------------------
另存为temp.bat文件,自选路径存放
如果需要测试bat文件是否能正确提取数据可以在最后加一个pause&,然后运行,测试完成后一定要删除pause,否则会导致zabbix数据读取超时
可以看到已经正常获取温度数据
接下来就是配置自定义KEY
打开zabbix_agentd.conf
添加一行
UserParameter=cpu_temp,C:\zabbix\temp.bat //cpu_temp为自定义的key,后面的是bat的路径
保存,然后重启zabbix_agent服务(所有修改配置文件的操作必须重启agent服务才能生效)
服务端设置
配置-主机-选择已配置好温度监测的主机,点击监控项
创建监控项
如图配置,数据更新间隔我选择5秒,其它选项按需填写,填写完成后点击更新即可
如果一切正常,在监控项那一页会看到绿色的已启用
如果出错,可使用命令在zabbix服务端看测试否能获得数据
ssh登录zabbix服务器
[root@localhost bin]# zabbix_get -s 172.20.12.162 -k cpu_temp
可以看得此时正确获取温度
如果有报错则根据错误提示对应解决
温度获取正常,接下来就是添加图表了
如图设置,点击添加后稍等即可在监测页面看到温度图了
---END---
参考:
https://www.cnblogs.com/justbio/p/5469191.html
https://www.zabbix.com/forum/showthread.php?t=23966
https://blog.51cto.com/qixue/1731696
zabbix agent key值:http://ju.outofmemory.cn/entry/76305
zabbix agent模板大全:http://ju.outofmemory.cn/entry/315279