您的位置:首页 > 运维架构

原来zabbix监控进程与端口是如此的简单!

2016-04-11 14:05 369 查看
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yangrong.blog.51cto.com/6945369/1548670

使用zabbix自带key监控进程与端口

每个公司都有自己的程序,自己的进程名与端口监听,对于nagios来说,这些都经常需要自己去写插件,但是zabbix不需要,它自己就有监控进程与端口的key。

在使用zabbix的key来监控进程与端口前,我也自己写了插件,但用起来很不爽,因为需要在所有agent上都要进行配置与维护。如果用zabbix
自带的功能,只需要在server端维护就可以了。简直就是操十分心与操一分心的区别啊,为什么我就没有早点发现这功能呢。

开始正题......

1、监控端口

监控端口使用如下key:
key:net.tcp.listen[port]
Checks if this port is in LISTEN state. 0 - it is not, 1 - it is inLISTEN state.翻译:监听端口状态,返回结果为1,则运行;返回结果为0,则没有运行。例如监控443端口,net.tcp.listen[443]




2、监控进程

如果一个进程没有监听端口,则可以使用如下key。
key:proc.num[<name>,<user>,<state>,<cmdline>]
Number
of processes. <name> and <user> same as inproc.mem item.
<state> all (default), run, sleep, zomb. <cmdline>filter by
command line (supports regex).name:是进程名user:运行该进程的用户state:进程状态包括run,sleep,zombcmdline:该项内容是模糊匹配,即用ps aux看到的最后一列中包含该字段则匹配上。注:name匹配可能不是很准,一般根据cmdline来匹配进程

例如监控cond,proc.num[,root,all,crond]
配置如下:




3、触发器配置

对于端口的监控,正常则返回值=1;对于进程的监控,正常则返回值>=1;如果返回结果为0,则代表该进程宕掉。
例如对443端口的触发器配置如下:
如最后两次的结果都等于0时,则报警。对于进程的触发器配置,是一样的。



zabbix对监控进程与端口存活状态实在太方便了。最近我在自学zabbix,慢慢的探索更多好用的功能,欢迎留言交流。

本文出自 “楊雲” 博客,请务必保留此出处http://yangrong.blog.51cto.com/6945369/1548670
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  程序 server 监控