点开这篇文章的人要感谢下袁老,因为他让大家都吃饱了,才能干这种无聊的事情。
当然欢哥也不是纯粹是吃饱了撑的,纯属顺便干的(主要是监控下小水管(便宜国外主机)以及“不可描述的端口”,为了不浪费家里搭建的Zabbix顺便做的),没有动手能力的看看就行了,有动手能力的可以参考下。
先看下最终的效果
欢哥监控它的目的是为了看一下一周内的带宽使用情况,至于CPU温度纯属顺便的,因为我的路由器是放在散热比较好的地方,如果放在密闭的空间有的路由器能到100度,是否影响网络不得而知,但肯定对路由器寿命有影响,对于那些花一两千买的路由器,还是希望能让它多服役几年,以上纯属凑字数。
实现它的先决条件:
1. 路由器支持SNMP 协议 (AC68U 需要设置下,后面说)
2. 路由器支持温度显示(支持SSH 登陆并可以命令读出CPU温度数值)
大致步骤和思路:
1. 安装个Zabbix (欢哥是家中虚拟机安装个,还是很方便的 Centos7+LAMP+Zabbix4.0)
如何安装?这个可以写一篇长文了,自己谷歌吧。
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
参考网址:http://www.mikaelgranberg.se/node/25?language=en (英文网站)
由于在路由器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项就变成绿色可用了。
本文由 欢哥的部落格 原创,喜欢请关注。
本文暂时没有评论,来添加一个吧(●'◡'●)