Zabbix远程执行命令的示例详解

  

Zabbix触发器(触发)达到阀值后会有动作(行动)执行:发送告警信息或执行远程命令。

  

本文主要配置验证zabbix执行远程命令。

  

  

服务器:基于centos - 7 - x86_64 - 1511;

  

Zabbix: zabbix-3.0.1server/代理。

  

  

一些能想到的比较重要的注意事项:1。远程执行命令是服务器端向代理端执行,不支持主动模式的代理;2。3.不支持代理模式,zabbix用户必须对命令具有执行权限,可以使用sudo赋予根权限(配置sudo无密码方式),

  

4。远程命令只是执行,执行成功与否并不检测并确认,可在“监控——在事件”中查看行动执行时,或在“报告——在行动日志”中查看远程命令是否执行成功(成功为“执行”)。

  

  

通过一个简单的示例验证:

  

监控服务器实时在线的用户不超过2个,超过阀值时报警,并执行命令,强制使第3个登录用户下的线,以使监控项在阀值以下。

  

1。设置触发

  

配置——在模板,在选择”模板操作系统Linux”模板的“触发器”——在创建触发

  

#触发器名称自定义,可使用宏

  

名称:用户登录号码gt 2 alt=" Zabbix远程执行命令的示例详解">

  

#自定义的级别

  

严重性:警告   

 Zabbix远程执行命令的示例详解

  

其余默认值即可,设置完成后点击“添加”即完成。

  

2。远程命令开关

        #代理默认不支持执行远程命令,需要在代理的配置文件中打开此参数;   # agent.conf文件路径根据实际情况修改,这里是编译安装后自定义的路径,请见http://www.cnblogs.com/netonline/p/7406598.html   # agent.conf文件修改后需要重启进程。   (root@localhost ~) # sed -我的| # EnableRemoteCommands=0 | EnableRemoteCommands=1 | g '/usr/local/zabbix/etc/zabbix_agentd.conf   (root@localhost ~) #服务zabbix_agentd重启      

3。设置行动

  

配置——在行动,在创建动作

  

操作   

在行动选项中,定义名字:限制alt=" Zabbix远程执行命令的示例详解">

  

条件   

在条件选项中添加新的条件判断,以使判断更有针对性,如:

  

新条件:引发严重=警告

  

新条件:触发器的名字像用户登录号码gt 2

  

#触发器名称对应步骤1中定义的触发器的名字,如下:

  

 Zabbix远程执行命令的示例详解

  

操作   

选在操作项中,添加新的“行动操作”,点击“新”,

  

操作类型:选择“远程命令”

  

目标列表:添加目标为“当前主机”#代理人在本机

  

类型:选择“自定义脚本”

  

执行alt=" Zabbix远程执行命令的示例详解">

  

4。远程命令脚本

        3 #根据步骤中定义的命令脚本的路径,编辑命令脚本;root@localhost ~ # vim test.sh      # !/bin/bash路径=/bin:/sbin/usr/bin:/usr/sbin:/usr/地方/bin:/usr/地方/sbin: ~/bin出口路径      3 #这里简单的认为第个登录的tty为pts/2 pkill杀死- t分/2      [root@localhost ~] # chmod 764 test.sh      

5。配置sudo

  
  

#授予zabbix账号sudo无密码执行命令的权限,如果为了安全性,可将最后一个“所有”定义为具体的命令;#或在步骤4中将脚本主人修改为zabbix,并具有执行权限,但要注意脚本放置目录对zabbix账户开放可执行权限甚至可写权限,这样步骤3中脚本也不需要sudo赋予权限<代码> [root@localhost ~] # visudo

  

zabbix所有=NOPASSWD:

     

6。验证

  

远程登录主机第3个tty,不在CLI下做其他任何操作,触发触发阀值,触发命令动作强制第3个登录用户下线。

  

 Zabbix远程执行命令的示例详解

  

从截图可以看的到,在线用户超过阀值,触发器为“问题”状态只持续了1分钟左右,即恢复到“OK”状态,表明强制第3个用户下线的脚本命令已执行,并且执行成功。

  

 Zabbix远程执行命令的示例详解

  

从“登录用户数”项目的历史数据中也可看到触发触发时,第3个登录用户即被下线。

Zabbix远程执行命令的示例详解