❶ 华硕路由器查看温度
看一下一周内的带宽使用情况,至于CPU温度纯属顺便的,因为我的路由器是放在散热比较好的地方,
实现它的先决条件:
1. 路由器支持SNMP 协议 (AC68U 需要设置下,后面说)
2. 路由器支持温度显示(支持SSH 登陆并可以命令读出CPU温度数值)
2. 开启路由器SNMP 协议,如前面的图,当然这样是不行的,后面说。
3. 温度的数值,它不在mib信息里,我也不会闲的蛋疼在路由器里装个zabbix客户端(不知道是否可以),所以采用的方法是 在默认的 zabbix服务器主机监控项里添加一个温度监控项,用于监控路由器的温度。
3.1 使用Zabbix服务器 远程SSH(免密方法谷歌,路由器开启Lan SSH)登陆
3.2 cat /proc/dmu/temperature 这个是读取当前CPU温度的命令(命令是AC68U的,不同的AC系列可能不一样)
3.3 写个脚本目的是执行一次上述命令并只提取数字部分,写入一个txt文件
3.4 做个任务计划(crond) */1 * * * * command 每分钟执行一次上述脚本
3.5 给Zabbix主机新建一个item ,一个自定义KEY ,具体命令为 cat “txt的绝对路径”,时间为60s,这样就60秒读取一下数值,新建一个Graphs 完成。
CPU温度的监控对于熟悉linux命令和脚本的不需要多述,关键在于读取路由器CPU温度的命令,不同的华硕路由器需要谷歌一下。
配置路由器的SNMP
由于在路由器WEB页面配置SNMP协议,Zabbix 的 主机信息右边SNMP标志是红色的,不起作用,我就知道没那么简单,网络了下也没什么结果(闲的蛋疼且能玩的太少了),还是要靠万能的谷歌(搜索关键字 :asus route snmp setting)一下子就跳出可以用的文章,欢哥手气真好。
翻译下思路(原文废话也不少):
1. 准备一个没有数据的U盘或者移动硬盘,格式化为ext4 格式。
2. 安装华硕的USB应用 Download Masterver (为了使用 ipkg)
3. ipkg update
4. ipkg install net-snmp
5. app_set_enabled.sh net-snmp yes
6. /opt/S70net-snmp.1
7. 使用snmpwalk -c public -v1 路由器IP 测试下结果。
完成后,Zabbix主机 SNMP项就变成绿色可用了。