Zabbix添加對Windows 客戶端CPU溫度的監控
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
判斷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]# find / -name zabbix_get
找到zabbix路徑後cd進入zabbix_get的文件夾,執行
[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
http://blog.51cto.com/qixue/1731696
zabbix agent key值:http://ju.outofmemory.cn/entry/76305
zabbix agent模板大全:http://ju.outofmemory.cn/entry/315279
Zabbix添加對Windows 客戶端CPU溫度的監控