zabbix--自定义监控项vsftpd
Zabbix 自定义监控项之监控 vsftpd
zabbix 提供了很多监控选择,功能丰富,我们还可以根据自定义来监控想要监控一些日常的服务等。
说明:
此处我们通过监控 ftp (自定义命令),实现如果 ftp 服务挂掉后自动重启,并邮件告警通知。
参考官档:https://www.zabbix.com/documentation/4.0/zh/manual/config/items/userparameters
具体步骤
1)在agent上先测试命令,vsftpd作为一个示例,监控vsftpd是否正常
[root@Srt_Aly_244 ~]# /etc/init.d/vsftpd start
Starting vsftpd for vsftpd: [ OK ]
[root@Srt_Aly_244 ~]#
[root@Srt_Aly_244 ~]# pgrep -l vsftpd |wc -l [root@Srt_Aly_244 ~]# /etc/init.d/vsftpd stop
Shutting down vsftpd: [ OK ]
[root@Srt_Aly_244 ~]#
[root@Srt_Aly_244 ~]# pgrep -l vsftpd |wc -l
2)通过上面的命令测试发现 pgrep -l vsftpd |wc -l 这条命令结果为 0 时,即表示 vsftpd 挂了。编辑配置文件(放在/etc/zabbix/zabbix_agentd.d目录里面)
# vim /etc/zabbix/zabbix_agentd.d/userparameter_vsftpd.conf
UserParameter=vsftpd.alive,pgrep -l vsftpd |wc -l
3)在 zabbix 服务器端通过 zabbix_get 命令进行测试(结果为 0,表示agent端 vsftpd 服务挂了,为 1 表示 vsftpd 服务正常)
[root@SrtAly120 zabbix]# zabbix_get -s 39.107.xx.xx -k vsftpd.alive
4)在 web 页面创建监控项 (说明:键值处填写自定义的UserParameter=key, key的名字。必须对应)
进入:配置 -> 主机 -> 监控项 -> 创建监控项

5)在 web 页面创建触发器 (说明:监控项选择上面创建的监控项, 功能选择根据上面定义的命令来设置,因为测试结果是当值为 0 时就表示服务down了,所以这里选择最新的t值=0,(就是说最新的t值如果是0,表示服务down了) )
进入:配置 -> 主机 -> 触发器 -> 创建触发器

6)在 web 页面配置动作,配置重启动作(由于使用的 zabbix 用户运行的守护进程,所以zabbix用户执行 /etc/init.d/vsftpd restart命令是没有权限的,所以需要先进行sudo授权)
[root@Srt_Aly_244 ~]# chmod /etc/sudoers
[root@Srt_Aly_244 ~]# vim /etc/sudoers
## Allow 'zabbix' user to restart vsftpd without password
zabbix ALL=NOPASSWD: /etc/init.d/vsftpd restart
[root@Srt_Aly_244 ~]# su zabbix
sh-4.1$ sudo /etc/init.d/vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
进入:配置 -> 动作 -> 创建动作


配置恢复操作 + 邮件告警


至此,当我们在 agent 上面停掉 vsftpd 服务,就会触发 zabbix 监控动作自动重启 vsftpd 并邮件告警相应人员。
zabbix--自定义监控项vsftpd的更多相关文章
- zabbix自定义监控项、添加图形、设置触发器、远程执行命令
监控项是在zabbix中手机数据的基础,没有监控项就没有数据,系统自带模板带有大量默认item,自定义item可以定义在模板中,在应用模板即可使用对应item:也可直接在host中定义 目标:自定义监 ...
- zabbix自定义监控项一
1.在agent端配置 1.1 添加自定义监控项 zabbix中监控项叫做item,监控项的取值方法叫做key item: Items是从agnet主机里面获取的所有数据.通常情况下我叫itme为监控 ...
- zabbix自定义监控项二
为zabbix增加支持传参的自定义监控项 例如使用zabbix来监控tcp的12种状态 tcp的12种状态可以通过man netstat来找到,即 LISTEN:等待从任何远端TCP 和端口的连接请求 ...
- Zabbix自定义监控项(模板)
虽然Zabbix提供了很多的模板(简单理解为监控项的集合),在zabbix界面点击share按钮就可以直接跳到模板大全的官方网站,但是由于模板内的监控项数量太多不好梳理且各种模板质量参差不齐,还是建议 ...
- zabbix自定义监控项数据类型错误
问题描述 监控cpu使用率,脚本获取的值是浮点型 zabbix创建监控项时没有选数据类型,导致监控数据有问题. 查看 zabbix-server 日志: ::203016.768 error rea ...
- zabbix自定义监控项
原因:zabbix监控系统自带的监控规则有限,如果需要更加灵活的定义监控项,可以通过修改配置文件实现 vim xxx/zabbix_agentd.conf UnsafeUserParameters=1 ...
- zabbix 自定义监控项,监控tomcat访问量
uv:访客量.每个独立上网电脑视为一位访客.pv:访问量.页面浏览量或者点击量,访客每访问一次记录一次. 1.创建文件 /home/zabbix/pvuv_number.sh [ #/bin/bash ...
- zabbix 自定义监控项简单案例
例如:获取被监控主机的登录用户数 以uptime为例: 输入命令:uptime | awk '{print $6}' 可以获得当前登录用户数(不通终端打印出的位置不同) 1.被监控主机修改zabbi ...
- zabbix 自定义监控项每隔1分钟检测一次三次失败报警
在agent上添加 UserParameter=auth.check,/etc/zabbix/auth_monitor/auth_check.py auth.check就是之后添加的自定义的item值 ...
- zabbix 自定义监控项 获取nginx监控状态
本篇是基于zabbix 源码安装的 [root@localhost conf]# curl "http://192.168.0.73:8080/nginx_status" Acti ...
随机推荐
- mac下操作小记
安装homebrew https://juejin.im/post/5c738bacf265da2deb6aaf97 主要问题:按官网安装方法(/usr/bin/ruby -e "$(cur ...
- Java 并发系列之五:java 锁
1. Lock接口 2. 队列同步器AQS 3. 重入锁 ReentrantLock 4. 读写锁 ReentrantReadWriteLock 5. LockSupport工具 6. Conditi ...
- SpringMVC之使用ResponseEntity
1.Post请求 一般情况下,在非必须的情况下,使用Jquery实现post请求,而后台返回一般都需要手动封装ResponseUtil,和使用@ResponseBody注解来实现返回.然而我们书上学到 ...
- libevent笔记4:Filter_bufferevent过滤器
Filter_bufferevent是一种基于bufferevent的过滤器,其本身也是一个bufferevent.能够对底层bufferevent输入缓存区中的数据进行操作(加/解密等)后再读取,同 ...
- kube-prometheus部署
一.从git拉取相应yaml文件 git clone https://github.com/coreos/kube-prometheus.git 二.修改grafana及prometheus的serv ...
- mac os 配置
/Users/xxx/odoo-13.0/odoo-bin -c /Users/xxx/odoo-13.0/debian/odoo.conf
- [记录]安装.Net Framework 4.6.2时出现“无法建立到信任根颁发机构的证书链”解决方法
在安装Microsoft .NET Framework 4.6.2脱机包时提示 无法建立到信任根颁发机构的证书链 实际上是要安装一个根证书.解决方案如下(因无法贴链接,可百度搜索“mamicode.c ...
- hanlp进行命名实体识别
需要安装jpype先,这个是python调用java库的桥梁. # -*- coding: utf-8 -*- """ Created on Thu May 10 09: ...
- 第九次作业 DFA最小化,语法分析初步
1.将DFA最小化:教材P65 第9题 Ⅰ {1,2,3,4,5} {6,7} {1,2}b={1,2,3,4,5} 3,4}b={5} {6,7} Ⅱ {1,2}{3,4}{5} {6,7} 2.构 ...
- thinkphp伪静态怎么实现
thinkphp如何实现伪静态? 去掉 URL 中的 index.php ThinkPHP 作为 PHP 框架,是单一入口的,那么其原始的 URL 便不是那么友好.但 ThinkPHP 提供了各种机制 ...